Nov 28, 2017
Advanced Custom Fieldsを使って画像付きカテゴリー一覧を作る
Advanced Custom Fieldsを使って画像付きのカテゴリー一覧を作る
1.一覧を表示する固定ページを作る
一覧を表示する固定ページを作り、その固定ページ専用のファイルを作ります。
例:「カテゴリー一覧」という固定ページを作って、categorylistというパーマリンクにし、categorylist.phpのファイルを作る。
2.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 |
<ul> <?php $categories = get_categories(array( 'child_of' => '4', //IDが4のカテゴリーの子カテゴリーを読み込む 'hide_empty' =>'0' //投稿がないカテゴリーを読み込む。色々設定できる。設定の方法は下記を見て下さい。 )); foreach($categories as $category) : $cat_id = $category->cat_ID; $post_id = 'category_'.$cat_id; $catimg = get_field('img',$post_id); $img = wp_get_attachment_image_src($catimg, 'thumbnail'); // (thumbnail, medium, large, full or custom size) ?> <li> <div> <?php if(empty($catimg)):?> <img src="<?php echo get_template_directory_uri(); ?>/ダミー画像のパス" alt=""> <?php else: ?> <img src="<?php echo $img[0]; ?>" alt="<?php echo $category->cat_name; ?>" /> <?php endif;?> </div> <div><?php echo $category->cat_name; ?></div> <div><?php the_field('text',$post_id); ?></div> <!--カスタムフィールドも表示できます--> </li> <?php endforeach; ?> </ul> |
■ get_categories()のパラメータ一覧
キー | 値 | デフォルト値 |
hide_empty | 投稿がないカテゴリーを読み込まない場合は1 投稿がないカテゴリーを読み込む場合は0 |
1 |
child_of | その値のIDを持つカテゴリーの子カテゴリーを読み込むならそのIDの数字を指定する その値のIDを持つカテゴリーの子カテゴリーを読み込まないなら0 |
0 |
parent | その値のIDを持つカテゴリーの親カテゴリーを読み込むなら1 その値のIDを持つカテゴリーの親カテゴリーを読み込まないなら0 |
0 |
hierarchical | 1を指定すると、子カテゴリーが空でなかった場合、その親であるカテゴリーが空でも読み込む | 1 |
include | 読み込みたいカテゴリーのIDをコンマで区切って指定する。 | なし |
exclude | 読み込みたくないカテゴリーをコンマで区切って指定する。 | なし |
pad_counts | 子カテゴリーも含めて投稿の数を合算してカウントする場合は1。 個々のカテゴリーを個別にカウントする場合は0 |
0 |
number | 読み込むカテゴリーの上限を指定する | なし |
orderby | カテゴリーの並び替えを行う。 id name slug cout term_groupと、どの方法で並べるか設定できる |
name |
order | 並び替えの順序を指定する。 ASCかDESCかで選べる |
ASC |