我正在使用邻接列表模型在我的网站中查找子类别。我有工作 PHP 代码来查找所有类别和子类别,但现在我无法弄清楚如何使用它来创建导航系统。以下是该网站的工作方式,非常基本:
URL 字符串 会有一个主类,后面是层级
index.php?category=category-name&level1=sub-category&level2=another-sub-category&level3=content-item
稍后我将制作 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);
}
}