PHP - XML menügenerálás, tartalomkezelés segítségkérés

PHP - XML menügenerálás, tartalomkezelés segítségkérés
2013-03-11T19:07:50+01:00
2013-03-11T19:07:50+01:00
2022-10-24T05:50:31+02:00
  • Semmit sem értek az egészből, hiába tanuljuk órán és próbálja a tanár elmagyarázni, nem fogom fel, tudna valaki segíteni abban, hogy elmagyarázná részletesen és érthetően "magyar" nyelven, hogy hogy is van ez az egész?:) Amit bemásolok az az index.phpból lett kiszedve amiben van maga a programozó rész, menügenerálás, xml betöltés ezt tudom. Aztán van egy XML fájl amiben maga a tartalom van benne oké. És van egy html fájl amiben pedig az állandó dolgok vannak, pl lábléc,fejléc, kiegészítve a generált dolgokkal amiket a phpban megadtunk pl: #TITLE#. A lényeg hogy a kód megértésében, a programozás részében segítene valaki megérteni ezt?

    <? // DOMDocument Objektum létrehozása $doc = new DOMDocument(); // XML tartalmának betöltés az objektumba $doc->load('sajat.xml'); // Oldalazonosító meghatározása $pageID = 'fooldal'; $i = 0; while ( (isset($_GET['o'.$i])) && ($pageID <> 'e404') ){ if ($doc->getElementById($_GET['o'.$i])) { $pageID = $_GET['o'.$i]; } else { $pageID = 'e404'; } $i++; } // Aktuális oldal objektumának létrehozása azonosító alapján $page = $doc->getElementById($pageID); // Sablon betöltése szöveges változóba $template = file_get_contents('template.html'); // Főmenü dinamikus generálása (oldalazonosítók és címek HTML kódba helyezése) $templatePieces = explode('#MENU#',$template); $menuHTML = next($templatePieces); $menu = str_replace(array('#HREF#','#TITLE#'),array('index.php','Főo ldal'),$menuHTML); foreach($doc->getElementsByTagName('o0') as $o){ $href = 'index.php?o0='.$o->getAttribute('xml:id'); $title = $o->getElementsByTagName('cim')->item(0)->nodeValue ; $menu .= str_replace(array('#HREF#','#TITLE#'),array($href,$title),$m enuHTML); } // Sablon újraírása a főmenü változója miatt $template = $templatePieces[0].'#MENU#'.$templatePieces[2]; // Csere változók paraméterezése az aktuális oldal alapján $replace = array( '#TITLE#' => $page->getElementsByTagName('cim')->item(0)->nodeVa lue, '#DESCRIPTION#' => $page->getElementsByTagName('metaleiras')->item(0)-> ;nodeValue, '#KEYWORDS#' => $page->getElementsByTagName('metakulcsszavak')->item(0 )->nodeValue, '#MENU#' => $menu, '#CONTENT#' => $page->getElementsByTagName('tartalom')->item(0)->n odeValue ); // Változók cseréje a sablonban foreach($replace as $key => $value){ $template = str_replace($key,$value,$template); } // Aktuális oldal megjelenítése echo $template; ?>
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd