Biz Directory Sitemap?
Verfasst: 07.09.2005, 17:01
Hat jemand einen Plan wie ich eine (mod rewrite) gerechte Sitemap für Biz Directory anlege?
Habe bisher folgenden Code gefunden, aber irgendiwe klappt es nicht:
Habe bisher folgenden Code gefunden, aber irgendiwe klappt es nicht:
magadoo hat geschrieben: Also zunächst schreibe ich in zwei Arrays $id, $ref mit folgender SQL-Anweisung alle relevanten Daten aus der Datenbank:
Dann muss man nur noch in zwei weitere Arrays die Vorgänger und Nachfolger-Beziehungen speichern, über die die Baumstruktur hergestellt werden:Code: Alles auswählen
SELECT id, ref, name FROM categories ORDER BY name
Die Funktion gibt den entprechenden HTML-Code für den gewählten Eintrag aus und ruft sich rekursiv selbst auf:Code: Alles auswählen
<? $amount = count($id); for($j=0; $j < $amount; $j++) { $ID_ASS[$id[$j]] = $j; $kinder[$ref[$j]][] = $id[$j]; // Vorwärtsbezüge konstruieren }
An der entsprechende Stelle im HTML-Teil muss dann nur noch folgendes aufgerufen werden (Array-Index 1 weil das bei mir die oberste Ebene ist):Code: Alles auswählen
function zeichneBaum($eintrag) { global $kinder, $rubrik; $kategorie_name = preg_replace( '( )', '_', $name[$ID_ASS[$eintrag]]); ?> <li><a href="<?=$kategorie_name?>-<?=$id[$ID_ASS[$eintrag]]?>.html"><?=$kategorie_name?></a></li> <? // Eventuell sind noch Kinder mit auszugeben: if(is_array($kinder[$eintrag])) { echo "<ul>"; foreach($kinder[$eintrag] as $kind) zeichneBaum($kind); echo "</ul>"; } }
Code: Alles auswählen
<ul> <? foreach($kinder[1] as $thread) { zeichneBaum($thread); } ?> </ul>