ilch Forum » Allgemein » HTML, PHP, SQL,... » Meta Keywordgenerator

Geschlossen
  1. #1
    User Pic
    MikeelDios Mitglied
    Registriert seit
    13.10.2006
    Beiträge
    21
    Beitragswertungen
    0 Beitragspunkte
    Hi ich habe eine Key-Word-Generator klasse gefunden die automatisch Meta Schlüsselwörter aus dem vorhandenen Seiten Content generiert.


    als erstes müsste ihr diese zeile in eurem Template einsetzen!
    <meta name="keywords" content="{KEYWORDS}" />

    jetzt diese Datei ('autokeyword.php') in dem pfad '/include/includes/class/' einbinden.

    <?php
    
    /******************************************************************
    Projectname:   Automatic Keyword Generator
    Version:       0.3
    Author:        Ver Pangonilo <smp_AT_itsp.info>
    Last modified: 26 July 2006
    Copyright (C): 2006 Ver Pangonilo, All Rights Reserved
    
    * GNU General Public License (Version 2, June 1991)
    *
    * This program is free software; you can redistribute
    * it and/or modify it under the terms of the GNU
    * General Public License as published by the Free
    * Software Foundation; either version 2 of the License,
    * or (at your option) any later version.
    *
    * This program is distributed in the hope that it will
    * be useful, but WITHOUT ANY WARRANTY; without even the
    * implied warranty of MERCHANTABILITY or FITNESS FOR A
    * PARTICULAR PURPOSE. See the GNU General Public License
    * for more details.
    
    Description:
    This class can generates automatically META Keywords for your
    web pages based on the contents of your articles. This will
    eliminate the tedious process of thinking what will be the best
    keywords that suits your article. The basis of the keyword
    generation is the number of iterations any word or phrase
    occured within an article.
    
    This automatic keyword generator will create single words,
    two word phrase and three word phrases. Single words will be
    filtered from a common words list.
    
    Change Log:
    ===========
    0.2 Ver Pangonilo - 22 July 2005
    ================================
    Added user configurable parameters and commented codes
    for easier end user understanding.
    
    0.3 Vasilich  (vasilich_AT_grafin.kiev.ua) - 26 July 2006
    =========================================================
    Added encoding parameter to work with UTF texts, min number 
    of the word/phrase occurrences, 
    
    ******************************************************************/
    
    class autokeyword {
    
    //declare variables
    //the site contents
    var $contents;
    var $encoding;
    //the generated keywords
    var $keywords;
    //minimum word length for inclusion into the single word
    //metakeys
    var $wordLengthMin;
    var $wordOccuredMin;
    //minimum word length for inclusion into the 2 word
    //phrase metakeys
    var $word2WordPhraseLengthMin;
    var $phrase2WordLengthMinOccur;
    //minimum word length for inclusion into the 3 word
    //phrase metakeys
    var $word3WordPhraseLengthMin;
    //minimum phrase length for inclusion into the 2 word
    //phrase metakeys
    var $phrase2WordLengthMin;
    var $phrase3WordLengthMinOccur;
    //minimum phrase length for inclusion into the 3 word
    //phrase metakeys
    var $phrase3WordLengthMin;
    
    function autokeyword($params, $encoding)
    {
    //get parameters
    $this->encoding = $encoding;
    mb_internal_encoding($encoding);
    $this->contents = $this->replace_chars($params['content']);
    
    // single word
    $this->wordLengthMin = $params['min_word_length'];
    $this->wordOccuredMin = $params['min_word_occur'];
    
    // 2 word phrase
    $this->word2WordPhraseLengthMin = $params['min_2words_length'];
    $this->phrase2WordLengthMin = $params['min_2words_phrase_length'];
    $this->phrase2WordLengthMinOccur = $params['min_2words_phrase_occur'];
    
    // 3 word phrase
    $this->word3WordPhraseLengthMin = $params['min_3words_length'];
    $this->phrase3WordLengthMin = $params['min_3words_phrase_length'];
    $this->phrase3WordLengthMinOccur = $params['min_3words_phrase_occur'];
    
    //parse single, two words and three words
    
    }
    
    function get_keywords()
    {
    $keywords = $this->parse_words().$this->parse_2words().$this->parse_3words();
    return substr($keywords, 0, -2);
    }
    
    //turn the site contents into an array
    //then replace common html tags.
    function replace_chars($content)
    {
    //convert all characters to lower case
    $content = mb_strtolower($content);
    //$content = mb_strtolower($content, "UTF-8");
    $content = strip_tags($content);
    
    $punctuations = array(',', ')', '(', '.', "'", '"',
    '<', '>', ';', '!', '?', '/', '-',
    '_', '[', ']', ':', '+', '=', '#',
    '$', '&quot;', '&copy;', '&gt;', '&lt;',
    chr(10), chr(13), chr(9));
    
    $content = str_replace($punctuations, " ", $content);
    // replace multiple gaps
    $content = preg_replace('/ {2,}/si', " ", $content);
    
    return $content;
    }
    
    //single words META KEYWORDS
    function parse_words()
    {
    //list of commonly used words
    // this can be edited to suit your needs
    $common = array("able", "about", "above", "act", "add", "afraid", "after", "again", "against", "age", "ago", "agree", "all", "almost", "alone", "along", "already", "also", "although", "always", "am", "amount", "an", "and", "anger", "angry", "animal", "another", "answer", "any", "appear", "apple", "are", "arrive", "arm", "arms", "around", "arrive", "as", "ask", "at", "attempt", "aunt", "away", "back", "bad", "bag", "bay", "be", "became", "because", "become", "been", "before", "began", "begin", "behind", "being", "bell", "belong", "below", "beside", "best", "better", "between", "beyond", "big", "body", "bone", "born", "borrow", "both", "bottom", "box", "boy", "break", "bring", "brought", "bug", "built", "busy", "but", "buy", "by", "call", "came", "can", "cause", "choose", "close", "close", "consider", "come", "consider", "considerable", "contain", "continue", "could", "cry", "cut", "dare", "dark", "deal", "dear", "decide", "deep", "did", "die", "do", "does", "dog", "done", "doubt", "down", "during", "each", "ear", "early", "eat", "effort", "either", "else", "end", "enjoy", "enough", "enter", "even", "ever", "every", "except", "expect", "explain", "fail", "fall", "far", "fat", "favor", "fear", "feel", "feet", "fell", "felt", "few", "fill", "find", "fit", "fly", "follow", "for", "forever", "forget", "from", "front", "gave", "get", "gives", "goes", "gone", "good", "got", "gray", "great", "green", "grew", "grow", "guess", "had", "half", "hang", "happen", "has", "hat", "have", "he", "hear", "heard", "held", "hello", "help", "her", "here", "hers", "high", "hill", "him", "his", "hit", "hold", "hot", "how", "however", "I", "if", "ill", "in", "indeed", "instead", "into", "iron", "is", "it", "its", "just", "keep", "kept", "knew", "know", "known", "late", "least", "led", "left", "lend", "less", "let", "like", "likely", "likr", "lone", "long", "look", "lot", "make", "many", "may", "me", "mean", "met", "might", "mile", "mine", "moon", "more", "most", "move", "much", "must", "my", "near", "nearly", "necessary", "neither", "never", "next", "no", "none", "nor", "not", "note", "nothing", "now", "number", "of", "off", "often", "oh", "on", "once", "only", "or", "other", "ought", "our", "out", "please", "prepare", "probable", "pull", "pure", "push", "put", "raise", "ran", "rather", "reach", "realize", "reply", "require", "rest", "run", "said", "same", "sat", "saw", "say", "see", "seem", "seen", "self", "sell", "sent", "separate", "set", "shall", "she", "should", "side", "sign", "since", "so", "sold", "some", "soon", "sorry", "stay", "step", "stick", "still", "stood", "such", "sudden", "suppose", "take", "taken", "talk", "tall", "tell", "ten", "than", "thank", "that", "the", "their", "them", "then", "there", "therefore", "these", "they", "this", "those", "though", "through", "till", "to", "today", "told", "tomorrow", "too", "took", "tore", "tought", "toward", "tried", "tries", "trust", "try", "turn", "two", "under", "until", "up", "upon", "us", "use", "usual", "various", "verb", "very", "visit", "want", "was", "we", "well", "went", "were", "what", "when", "where", "whether", "which", "while", "white", "who", "whom", "whose", "why", "will", "with", "within", "without", "would", "yes", "yet", "you", "young", "your", "br", "img", "p","lt", "gt", "quot", "copy");
    //create an array out of the site contents
    $s = split(" ", $this->contents);
    //initialize array
    $k = array();
    //iterate inside the array
    foreach( $s as $key=>$val ) {
    //delete single or two letter words and
    //Add it to the list if the word is not
    //contained in the common words list.
    if(mb_strlen(trim($val)) >= $this->wordLengthMin  && !in_array(trim($val), $common)  && !is_numeric(trim($val))) {
    $k[] = trim($val);
    }
    }
    //count the words
    $k = array_count_values($k);
    //sort the words from
    //highest count to the
    //lowest.
    $occur_filtered = $this->occure_filter($k, $this->wordOccuredMin);
    arsort($occur_filtered);
    
    $imploded = $this->implode(", ", $occur_filtered);
    //release unused variables
    unset($k);
    unset($s);
    
    return $imploded;
    }
    
    function parse_2words()
    {
    //create an array out of the site contents
    $x = split(" ", $this->contents);
    //initilize array
    
    //$y = array();
    for ($i=0; $i < count($x)-1; $i++) {
    //delete phrases lesser than 5 characters
    if( (mb_strlen(trim($x[$i])) >= $this->word2WordPhraseLengthMin ) && (mb_strlen(trim($x[$i+1])) >= $this->word2WordPhraseLengthMin) )
    {
    $y[] = trim($x[$i])." ".trim($x[$i+1]);
    }
    }
    
    //count the 2 word phrases
    $y = array_count_values($y);
    
    $occur_filtered = $this->occure_filter($y, $this->phrase2WordLengthMinOccur);
    //sort the words from highest count to the lowest.
    arsort($occur_filtered);
    
    $imploded = $this->implode(", ", $occur_filtered);
    //release unused variables
    unset($y);
    unset($x);
    
    return $imploded;
    }
    
    function parse_3words()
    {
    //create an array out of the site contents
    $a = split(" ", $this->contents);
    //initilize array
    $b = array();
    
    for ($i=0; $i < count($a)-2; $i++) {
    //delete phrases lesser than 5 characters
    if( (mb_strlen(trim($a[$i])) >= $this->word3WordPhraseLengthMin) && (mb_strlen(trim($a[$i+1])) > $this->word3WordPhraseLengthMin) && (mb_strlen(trim($a[$i+2])) > $this->word3WordPhraseLengthMin) && (mb_strlen(trim($a[$i]).trim($a[$i+1]).trim($a[$i+2])) > $this->phrase3WordLengthMin) )
    {
    $b[] = trim($a[$i])." ".trim($a[$i+1])." ".trim($a[$i+2]);
    }
    }
    
    //count the 3 word phrases
    $b = array_count_values($b);
    //sort the words from
    //highest count to the
    //lowest.
    $occur_filtered = $this->occure_filter($b, $this->phrase3WordLengthMinOccur);
    arsort($occur_filtered);
    
    $imploded = $this->implode(", ", $occur_filtered);
    //release unused variables
    unset($a);
    unset($b);
    
    return $imploded;
    }
    
    function occure_filter($array_count_values, $min_occur)
    {
    $occur_filtered = array();
    foreach ($array_count_values as $word => $occured) {
    if ($occured >= $min_occur) {
    $occur_filtered[$word] = $occured;
    }
    }
    
    return $occur_filtered;
    }
    
    function implode($gule, $array)
    {
    $c = "";
    foreach($array as $key=>$val) {
    @$c .= $key.$gule;
    }
    return $c;
    }
    }
    ?>


    jetzt nur noch diese Zeile
    require_once('include/includes/class/autokeyword.php');


    in der Datei:
    /include/includes/loader.php
    einsetzen


    jetzt nur noch die Datei 'include/includes/class/design.php'
    mit diesem Code komplet ersetzen....

    <?php
    // Copyright by: Manuel
    // Support www.ilch.de
    defined ('main') or die ('no direct access');
    
    if (!isset($ILCH_HEADER_ADDITIONS)) {
        $ILCH_HEADER_ADDITIONS = '';
    }
    if (!isset($ILCH_BODYEND_ADDITIONS)) {
        $ILCH_BODYEND_ADDITIONS = '';
    }
    class design extends tpl {
        var $html;
        var $design;
        var $vars;
        var $was;
        var $file;
    	
    	
    	function curl_get_file_contents($URL)
        {
            $c = curl_init();
            curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($c, CURLOPT_URL, $URL);
            $contents = curl_exec($c);
            curl_close($c);
    
            if ($contents) return $contents;
                else return FALSE;
        }
    	
    	function getkeywords ($_url)
    	{
    		$data = $this->curl_get_file_contents($_url);
    		//$data =  file_get_contents($_ur,'r');
    		
    		$params['content'] = $data; //page content
    			//set the length of keywords you like
    			$params['min_word_length'] = 5;  //minimum length of single words
    			$params['min_word_occur'] = 2;  //minimum occur of single words
    
    			$params['min_2words_length'] = 3;  //minimum length of words for 2 word phrases
    			$params['min_2words_phrase_length'] = 10; //minimum length of 2 word phrases
    			$params['min_2words_phrase_occur'] = 2; //minimum occur of 2 words phrase
    
    			$params['min_3words_length'] = 3;  //minimum length of words for 3 word phrases
    			$params['min_3words_phrase_length'] = 10; //minimum length of 3 word phrases
    			$params['min_3words_phrase_occur'] = 2; //minimum occur of 3 words phrase
    			
    			$keyword = new autokeyword($params, "iso-8859-1");
    			
    		return $keyword->get_keywords();
    	}
    
        function design ($title, $hmenu, $was = 1, $file = null)
        {
            global $allgAr;
    
            if (!is_null($file)) {
                echo '<div style="display: block; background-color: #FFFFFF; border: 2px solid #ff0000;">!!Man konnte in einer PHP Datei eine spezielle Index angeben. Damit das Design fuer diese Datei anders aussieht. Diese Funktion wurde ersetzt. Weitere Informationen im Forum auf ilch.de ... Thema: <a href="http://www.ilch.de/forum-showposts-13758-p1.html#108812">http://www.ilch.de/forum-showposts-13758-p1.html#108812</a></div>';
            }
    
            $this->vars = array();
            $this->file = $file; # setzte das file standart 0 weil durch was definiert
            $this->was = $was; # 0 = smalindex, 1 = normal index , 2 = admin
    
            $this->design = $this->get_design();
            $link = $this->htmlfile();
    
            $tpl = new tpl ($link, 2);
            if ($tpl->list_exists ('boxleft')) {
                $tpl->set ('boxleft' , $this->get_boxes ('l', $tpl));
            }
            if ($tpl->list_exists ('boxright')) {
                $tpl->set ('boxright' , $this->get_boxes ('r', $tpl));
            }
            // ab 0.6 =  ... 5 menu listen moeglich
            for($i = 1;$i <= 5;$i++) {
                if ($tpl->list_exists ('menunr' . $i)) {
                    $tpl->set ('menunr' . $i , $this->get_boxes ($i, $tpl));
                }
            }
    
            $ar = array
                ('TITLE' => $this->escape_explode($title),
                'HMENU' => $this->escape_explode($hmenu),
                'SITENAME' => $this->escape_explode($allgAr['title']),
    			'KEYWORDS' => $this->getkeywords("http://".$_SERVER["HTTP_HOST"]."".$_SERVER["REQUEST_URI"].""),
    			'hmenuende' => '',
                'vmenuende' => '',
                'hmenubegi' => '',
                'vmenubegi' => '',
                'hmenupoint' => '',
                'vmenupoint' => '',
                'DESIGN' => $this->design,
                );
            $tpl->set_ar($ar);
            $this->html = $tpl->get(0);
            $this->html .= '{EXPLODE}';
            $this->html .= $tpl->get(1);
            unset ($tpl);
    
            $zsave0 = array();
            preg_match_all ("/\{_boxes_([^\{\}]+)\}/" , $this->html , $zsave0);
    
            $this->replace_boxes($zsave0[1]);
            unset ($zsave0);
            $this->vars_replace();
            unset ($this->vars);
    
            $this->html = explode('{EXPLODE}', $this->html);
    		
    		
        }
    
        function addheader($text)
        {
            if (isset($this->html[0])) {
                $this->html[0] = str_replace('</head>',$text."\n</head>" , $this->html[0] );
                return true;
            } else {
                return false;
            }
        }
    
        function header ()
        {
            global $ILCH_HEADER_ADDITIONS;
            $this->addheader($ILCH_HEADER_ADDITIONS);
            echo $this->html[0];
            unset ($this->html[0]);
        }
    
        function addtobodyend($text)
        {
            if (isset($this->html[1])) {
                $this->html[1] = str_replace('</body>',$text."\n</body>" , $this->html[1] );
                return true;
            } else {
                return false;
            }
        }
    
        function footer ($exit = 0)
        {
            global $ILCH_BODYEND_ADDITIONS;
            $this->addtobodyend($ILCH_BODYEND_ADDITIONS);
            echo $this->html[1];
            unset ($this->html[1]);
            if ($exit == 1) {
                exit();
            }
        }
    
        function escape_explode ($s)
        {
            $s = str_replace('{EXPLODE}', '&#123;EXPLODE&#125;', $s);
            return ($s);
        }
    
        function htmlfile_ini ()
        {
            global $menu;
            $ma = $menu->get_string_ar();
            $ia = array();
            if (!file_exists('include/designs/' . $this->design . '/design.ini')) {
                return (false);
            }
            $ia = parse_ini_file ('include/designs/' . $this->design . '/design.ini');
            arsort($ma);
            krsort ($ia);
            foreach ($ia as $k => $v) {
                $k = preg_replace("/[^a-zA-Z0-9-*]/", "", $k);
                $k = str_replace('*', '[^-]+', $k);
                foreach ($ma as $k1 => $v1) {
                    if (preg_match("/" . $k . "/", $k1) AND file_exists('include/designs/' . $this->design . '/' . $v)) {
                        return ($v);
                    }
                }
            }
            return (false);
        }
    
        function htmlfile ()
        {
            $ini = $this->htmlfile_ini ();
            /*
    		if ( !is_null ($this->file) AND file_exists ('include/designs/'.$this->design.'/templates/'.$this->file)) {
          $f = 'designs/'.$this->design.'/templates/'.$this->file;
        } elseif ( !is_null ($this->file) AND file_exists ('include/templates/'.$this->file)) {
          $f = 'templates/'.$this->file;
    		*/
            if ($this->was == 1 AND $ini !== false) {
                $f = 'designs/' . $this->design . '/' . $ini;
            } elseif ($this->was == 0 AND file_exists ('include/templates/' . $this->design . '/templates/small_index.htm')) {
                $f = 'templates/' . $this->design . '/templates/small_index.htm';
            } elseif ($this->was == 0) {
                $f = 'templates/small_index.htm';
            } elseif ($this->was == 1) {
                $f = 'designs/' . $this->design . '/index.htm';
            } elseif ($this->was == 2) {
                $f = 'admin/templates/index.htm';
            }
            return ($f);
        }
    
        function replace_boxes ($zsave0)
        {
            foreach ($zsave0 as $v) {
                $dat = strtolower($v);
                $buffer = $this->get_boxcontent ($dat);
                if ($buffer !== false) {
                    $this->vars['_boxes_' . $v] = $buffer;
                }
            }
            if (!is_array($this->vars)) {
                $this->vars = array();
            }
        }
    
        function vars_replace()
        {
            foreach ($this->vars as $k => $v) {
                $this->html = str_replace('{' . $k . '}', $v, $this->html);
            }
        }
        // ####
        function get_boxes ($wo , $tpl)
        {
            global $lang, $allgAr, $menu;
            if (is_numeric($wo)) {
                $datei = 'menunr' . $wo;
            } elseif ($wo == 'l') {
                $datei = 'boxleft';
                $wo = 1;
            } elseif ($wo == 'r') {
                $datei = 'boxright';
                $wo = 2;
            }
    
            $retur = '';
            $ex_ebene = 0;
            $ex_was = 1;
            $firstmep = false;
            $hovmenup = '';
            $abf = "SELECT * FROM `prefix_menu` WHERE wo = " . $wo . " AND ( recht >= " . $_SESSION['authright'] . " OR recht = 0 ) ORDER by pos";
            $erg = db_query($abf);
            while ($row = db_fetch_assoc($erg)) {
                $subhauptx = $row['was'];
                $whileMenP = ($subhauptx >= 7 ? true : false);
                if (($row['was'] >= 7 AND $ex_was == 1) OR ($ex_ebene < ($row['ebene']-1)) OR ($ex_was <= 4 AND $row['ebene'] <> 0) OR ($row['was'] >= 7 AND !$tpl->list_exists($hovmenup))) {
                    /*
            echo '<pre>Das Menu ist Fehlerhaft, bitte benachrichtigen Sie den Administrator!';
            echo '<br /><br /><u>Informationen:</u>';
            echo '<br />Region:  '.$row['name'];
            echo '<br />Ebene:   '.$row['ebene'];
            echo '<br />exEbene: '.$ex_ebene;
            echo '<br />Typ:     '.$row['was'];
            echo '<br />exTyp:   '.$ex_was;
            echo '<br /><br /><u>Problemloesung:</u> Die Region gibt an um welchen Menupunkt, welches Menu oder welche Box es sich handelt.';
            echo '<br />Ist der Typ groesser oder 7 und der exTyp 1 wurde ein Menupunkt in einer falschen Position im Menu platziert.';
            echo '<br />Ist die exEbene 2 kleiner als die Ebene ist die Einrueckung im Menu falsch.';
            echo '<br />Sonst mit den oben gegebenen Informationen und einem Screenshot des betreffenden Menus auf <a href="http://www.ilch.de/">ilch.de</a> im Forum melden.';
            echo '<br /><br />Vielen Dank!</pre>';
    
            $retur  = '<pre>Das Menu ist Fehlerhaft, bitte benachrichtigen Sie den Administrator!';
            $retur .= '<br /><br /><u>Informationen:</u>';
            $retur .= '<br />Region:  '.$row['name'];
            $retur .= '<br />Ebene:   '.$row['ebene'];
            $retur .= '<br />exEbene: '.$ex_ebene;
            $retur .= '<br />Typ:     '.$row['was'];
            $retur .= '<br />exTyp:   '.$ex_was;
            $retur .= '<br /><br /><u>Problemloesung:</u> Die Region gibt an um welchen Menupunkt, welches Menu oder welche Box es sich handelt.';
            $retur .= '<br />Ist der Typ groesser oder 7 und der exTyp 1 wurde ein Menupunkt in einer falschen Position im Menu platziert.';
            $retur .= '<br />Ist die exEbene 2 kleiner als die Ebene ist die Einrueckung im Menu falsch.';
            $retur .= '<br />Sonst mit den oben gegebenen Informationen und einem Screenshot des betreffenden Menus auf <a href="http://www.ilch.de/">ilch.de</a> im Forum melden.';
            $retur .= '<br /><br />Vielen Dank!</pre>';
            $menuzw = '';
            */
                    continue;
                }
                // nur wenn ein menu in die variable $menuzw geschrieben wurde
                // wird in diese if abfrage gesprungen
                if (($whileMenP === false) AND !empty($menuzw)) {
                    $menuzw .= $this->get_boxes_get_menu_close ($ex_ebene, 0, $menuzw, $wmpE, $wmpTE, $wmpTEE);
                    $retur .= $tpl->list_get($datei, array (htmlentities($boxname), $menuzw . $menuzwE));
                    $menuzw = '';
                }
                if ($row['was'] == 1) {
                    // die box wird direkt in die to return variable geschrieben
                    $buffer = $this->get_boxcontent($row['path']);
                    $retur .= $tpl->list_get($datei, array ($row['name'] , $buffer));
                } elseif ($row['was'] >= 2 AND $row['was'] <= 4) {
                    // der name des menues wird gesetzt
                    // und die variable wird gesetzt.
                    $boxname = $row['name'];
                    $menuzw = '';
                    $menuzwE = '';
                    $ex_ebene = 0; # ex ebene
                    $hovmenu = '';
                    if ($row['was'] == 2 AND $tpl->list_exists('hmenupoint')) {
                        $hovmenu = 'hmenu';
                    } elseif ($row['was'] == 3 AND $tpl->list_exists('vmenupoint')) {
                        $hovmenu = 'vmenu';
                    }
                    $firstmep = true;
                    if (!empty($hovmenu)) {
                        $menuzw .= $tpl->list_get($hovmenu . 'begi', array());
                        $menuzwE .= $tpl->list_get($hovmenu . 'ende', array());
                    }
                    $hovmenup = $hovmenu . 'point';
                } elseif ($whileMenP) {
                    // menupunkt wird generiert
                    $ebene = $row['ebene'];
                    $menuTarget = ($subhauptx == 8 ? '_blank' : '_self');
                    list ($wmpA, $wmpE, $wmpTE, $wmpTEE) = explode ('|', $tpl->list_get ($hovmenup, array ($menuTarget, ($subhauptx == 8 ? '' : 'index.php?') . $row['path'], $row['name'])));
                    if (!empty($menuzw) AND $firstmep === false) {
                        $menuzw .= $this->get_boxes_get_menu_close ($ex_ebene, $ebene, $menuzw, $wmpE, $wmpTE, $wmpTEE);
                    }
                    $menuzw .= $wmpA;
                    $firstmep = false;
                }
    
                $ex_was = $row['was'];
                $ex_ebene = $row['ebene'];
            }
            if (!empty($menuzw)) {
                $menuzw .= $this->get_boxes_get_menu_close ($ex_ebene, 0, $menuzw, $wmpE, $wmpTE, $wmpTEE);
                $retur .= $tpl->list_get($datei, array (htmlentities($boxname), $menuzw . $menuzwE));
            }
            return ($retur);
        }
    
        function get_boxes_get_menu_close ($ex_ebene, $ebene, $menuzw, $wmpE, $wmpTE, $wmpTEE)
        {
            $menu1 = '';
            if ($ex_ebene == $ebene AND !empty($menuzw)) {
                $menu1 .= $wmpE . "\n";
            } elseif ($ex_ebene > $ebene) {
                $menu1 .= $wmpE . "\n";
                for($i = 0;$i < ($ex_ebene - $ebene); $i++) {
                    $menu1 .= $wmpTEE . "\n";
                }
            } elseif ($ex_ebene < $ebene) {
                $menu1 .= $wmpTE . "\n";
            }
            return ($menu1);
        }
    
        function get_boxcontent ($box)
        {
            global $lang, $allgAr, $menu,$ILCH_HEADER_ADDITIONS,$ILCH_BODYEND_ADDITIONS;
            if (file_exists('include/boxes/' . $box)) {
                $pfad = 'include/boxes/' . $box;
            } elseif (file_exists ('include/contents/selfbp/selfb/' . str_replace('self_', '', $box))) {
                $pfad = 'include/contents/selfbp/selfb/' . str_replace('self_', '', $box);
            } elseif (file_exists('include/boxes/' . $box . '.php')) {
                $pfad = 'include/boxes/' . $box . '.php';
            } elseif (file_exists('include/boxes/' . $box . '.htm')) {
                $pfad = 'include/boxes/' . $box . '.htm';
            } elseif (file_exists ('include/contents/selfbp/selfb/' . str_replace('self_', '', $box) . '.php')) {
                $pfad = 'include/contents/selfbp/selfb/' . str_replace('self_', '', $box) . '.php';
            } elseif (file_exists ('include/contents/selfbp/selfb/' . str_replace('self_', '', $box) . '.htm')) {
                $pfad = 'include/contents/selfbp/selfb/' . str_replace('self_', '', $box) . '.htm';
            } else {
                return (false);
            }
            ob_start();
            require_once($pfad);
            $buffer = $this->escape_explode(ob_get_contents());
            ob_end_clean();
            return($buffer);
        }
    }
    
    ?>



    und fertig...

    betroffene Homepage: externer Link


    Zuletzt modifiziert von MikeelDios am 25.10.2008 - 10:17:13
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten