隣接リスト モデルを使用して、Web サイト内のサブ カテゴリを検索しています。すべてのカテゴリとサブカテゴリを見つけるために PHP コードを使用していますが、それを使用してナビゲーション システムを作成する方法がわかりません。非常に基本的なサイトの仕組みは次のとおりです。
URL 文字列 メイン カテゴリがあり、その後にレベルが続きます
index.php?category=カテゴリ名&level1=サブカテゴリ&level2=別のサブカテゴリ&level3=コンテンツ項目
後で、SEO に適したリンクを作成します。
サブカテゴリのない URL レベル 1 がコンテンツ アイテムである場合
www.website.com/category/content-item/
レベル 1、2、3 などがサブ カテゴリであり、最終レベルがコンテンツ アイテムであるサブ カテゴリを含む URL
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);
}
}