Я использую модель списка смежности для поиска подкатегорий на своем веб-сайте. У меня есть PHP-код для поиска всех категорий и подкатегорий, но теперь я не могу понять, как использовать это для создания навигационной системы. Вот как сайт будет работать, очень простой:Adjacency List Model + Навигация по сайту
URL Строка Там будет основной категории, а затем уровни
index.php категория = категория имя & level1 = суб- категория & level2 = другая-суб-категории & level3 = контентного пункт
Позже я сделать SEO дружественных связей.
URL, без подкатегорий Где Уровень 1 является элементом контента
www.website.com/category/content-item/
URL с подкатегорий Если уровни 1, 2, 3 и т. Д. Являются подкатегориями, а конечным уровнем является элемент контента
www.website.com/category/sub-category/sub-category-2/content-item/
Вот код, я использую, чтобы найти категории и подкатегории. В настоящее время он просто выводит список всех категорий и подкатегорий, а число - на уровне каждого ребенка. Не уверен, что это помогает, он просто создает список.
function display_children($ParentCategoryID, $Level) {
// retrieve all children of parent
if ($ParentCategoryID == ''){
$Result = mysql_query('SELECT * FROM categories WHERE parent_category_id IS null');
}
else{
$Result = mysql_query('SELECT * FROM categories WHERE parent_category_id="'.$ParentCategoryID.'";');
}
// display each child
while ($Row = mysql_fetch_array($Result)) {
echo str_repeat('-',$Level)."[".$Level."]".$Row['category_name']."<br />";
display_children($Row['category_id'], $Level + 1);
}
}
Это все здорово, но в чем вопрос? – bububaba
@bububaba Вопрос в том, как мне перейти на мой контент? Скажем, в моей базе данных есть таблица под названием «content». В этой таблице находится строка с категорией id '3'. Если '3' является дочерним элементом' 2', а '2' является дочерним элементом' 1', а '1' является родителем, как создать систему для правильного отображения содержимого по категории и подкатегориям? Итак, с домашней страницы вы нажимаете '1' для просмотра' 2', затем нажмите '2', чтобы просмотреть' 3', затем нажмите '3', чтобы просмотреть' content'. Конечным результатом будет «1 => 2 => 3 => страница содержания». Я не знаю, имеет ли это смысл, надеюсь, это так. Благодарю. –
Кроме того, таблица 'content' просто знает идентификатор категории самой низкой подкатегории. У меня есть другая таблица под названием «категории», чтобы сообщить каждой категории, если она имеет родителя или нет. –