カテゴリーリストを独自で作成する方法[PHP]
みなさんこんにちは!ワトスンです。
今回は、、
カテゴリーリストを作りたい。PHP言語でどうやって作ればいい?難しそうだけどどうプログラムを組めばいいの?
といった疑問に答えます。
WordPressにはカテゴリーリストの機能がもともと備わっていますが、ほとんどのテーマの場合、サイドバーだけにしかカテゴリーリストを表示することができない状態だと思います。
フッターにカテゴリーリストを表示したい場合などは、PHPでカテゴリーリストをカスタマイズする必要があります。
それでは、PHPでカテゴリーリストを作成する方法をご紹介していきます。
カテゴリーリスト作成する方法
私の場合はフッターにカテゴリーリストを追加したかったので、footer.phpファイルに以下のコードを追加しました。
各自、追加したい箇所に以下のコードを追加してください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
<?php $categories = get_categories('parent=0'); //一番親階層のカテゴリをすべて取得 foreach($categories as $val){ //取得したカテゴリへの各種処理 $cat_link = get_category_link($val->cat_ID); //カテゴリのリンクURLを取得 echo '<li>'; //親カテゴリのリスト出力 echo '<div class="overflow"><a href="' . $cat_link . '">' . $val -> name . '</a>'; $child_cat_num = count(get_term_children($val->cat_ID,'category')); //子カテゴリのIDを配列で取得。配列の長さを変数に格納 if($child_cat_num > 0){ //子カテゴリが存在する場合 echo '<ul>'; $category_children_args = array('parent'=>$val->cat_ID); //子カテゴリの一覧取得条件 $category_children = get_categories($category_children_args); //子カテゴリの一覧取得 foreach($category_children as $child_val){ //子カテゴリの数だけリスト出力 $cat_link = get_category_link($child_val -> cat_ID); echo '<li><a href="' . $cat_link . '">' . $child_val -> name . '</a>'; } echo '</ul>'; } echo '</div></li>'; } ?> |
また、カテゴリーリストをCSSなどで装飾したい場合は、
1 |
<div class="category-list">上記のコードをこの間に記述</div> |
のように、classを付け装飾していって下さい。
追加したら、ファイルをアップロードして完了です。
以上でカテゴリーリストのカスタマイズ方法のご紹介は終わりです。
なにか疑問点がありましたらコメントまたはTwitterのDMでご連絡ください!
以上です。