Jak rozwiązać sprawę wyświetlania nawigacji na stronie czyli "Jesteś tutaj : home > kategoria 1 > kategoria 2 > kategoria 3 > produkt"
Poziomów kategorii może być dowolnie wiele.
URL mają postać:
domena.pl/kategoria-1/kategoria-2/kategoria-3/produkt-1.html
ale do tego samego produktu można wejść też używając adresu
domena.pl/kategoria-1/kategoria-2/produkt-1.html
moja aplikacja wygląda mniej-więcej tak:
<?php include_once('controllers/' . $subPage . '.php'); $page = new $subPage($db); ?>
A tutaj kontroler produktu, kategorii i innych stron ma taką postać.
<?php class product extends core { function __contruct() { $this->name = $nazwa_produktu; { $parent = 'home'; include('controllers/home.php'); { else { $parent = 'category'; include('controllers/category.php'); } } function display() { .... } } class category extends core { function __contruct(,,, $i) { $this->name = $nazwa_kategori; { $parent = 'home'; include('controllers/home.php'); { else { $i++; $parent = 'category'; include('controllers/category.php'); $subsctegory new category(..., $i) } } function display() { .... } } ?>
To jedyny pomysł na jaki wpadłem niestety. Aby nie tworzyć nowych plików. Czyli wszystki informacje potrzebne do wyświetlenia danej podstrony i stworzenia traila są w plikach, w każdym pliku jest zaznaczone co jest rodzicem danego pliku, wiec dla produktu np jet to kategoria a dla kategori strona głowna (w prostej wersji - przy jedno poziomowej kategorii)
Może ktoś podać jakiś inny pomysł rozwiązywania tego problemu? Może jakieś przykłady, CMS gdzie mogę podejrzeć inne rozwiązania?