私は隣接リストモデルを使用して、私のウェブサイト内のサブカテゴリを探しています。私はすべてのカテゴリとサブカテゴリを見つけるためにPHPコードを使用していますが、現在はナビゲーションシステムを作成するためにどのように使用するのか把握できません。ここでは、サイトがどのように機能するかは非常に基本的なものです:隣接リストモデル+ウェブサイトナビゲーション
URL文字列 レベル
のindex.phpに続いてメインカテゴリ、がありますカテゴリ=カテゴリ名&レベル1 =サブ?カテゴリ& LEVEL2 =別のサブカテゴリー& LEVEL3 =コンテンツ・アイテム
その後、私はSEOフレンドリーリンクを作成します。レベル1は、サブカテゴリー とコンテンツ・アイテム
www.website.com/category/content-item/
URLですノーサブカテゴリー と
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問題は、コンテンツにリンクするにはどうすればいいですか?私のデータベースに「コンテンツ」というテーブルがあります。そのテーブルには、カテゴリIDが「3」の行があります。 '3'が' 2'の子で、 '2'が' 1'の子で、 '1'が親であれば、カテゴリとサブカテゴリに関連してコンテンツを適切に表示するシステムをどうすれば作成できますか?だから、ホームページから '1'をクリックして' 2'を表示し、 '2'をクリックして' 3'を表示し、 '3'をクリックすると'コンテンツ 'を表示します。最終結果は '1 => 2 => 3 =>コンテンツページ'となります。それが意味をなさないかどうかは分かりませんが、うまくいけばそれがあります。ありがとう。 –
また、 'content'テーブルはそのサブカテゴリのカテゴリIDだけを知っています。親があるかどうかを各カテゴリに伝えるために 'categories'という別のテーブルがあります。 –