全10章【wordpress】カスタム投稿タイプとタクソノミー の導入方法⑥
このエントリーは下記からの続きです。
今回は「カスタム投稿タイプにカスタムタクソノミー を導入する方法」についてのエントリー。テーマはSimplicity2をベースにしてます。
このエントリーを読めば、
これまでに作成した投稿タイプの専用テンプレートにタクソノミー (分類タグ)を表示できるようにになります。
目次
functions.phpにタクソノミーコードを記述
全体的な手順としてはカスタム投稿タイプとほぼ変わりません。
まずは、下記画像のコードを真似て、’functions.php’にカスタムタクソノミー の内容を記述します。
//カスタムタクソノミー //カテゴリータイプ $args = array( 'label' => 'カスタム機能', //管理画面に表示される部分。 'public' => true, 'show_ui' => true, 'hierarchical' => true //タクソノミーは分類分けなので、階層を持たせなければ意味がないので記述。 ); register_taxonomy('custom','wordpress',$args); //('分類名' ,'投稿タイプ名','上記で作った関数')
タクソノミー に関しても、専用テンプレートを作るため、上の画像よりregister_taxonomyで設定した”分類名”を控えます。
僕の場合は、’custom’が”分類名”に該当します。因みに、この分類名と’label’ => ‘カスタム機能’ の日本語表記部分は、個々人の好きな記述で問題ありません。
カスタムタクソノミーのタグを作成する
コードが正しく記述できてれば、管理画面に”カスタム機能”が表示されます。
ここで新しく増やしたいタグを作成します。僕は、①カスタムタクソノミー 、②カスタム投稿タイプを作成しました。
続けて、これまでに作ったカスタム投稿タイプの、編集画面に移ると、カスタム機能が紐つけられてます。分類したいタグにチェックを入れます。
entry-body-wordpress(カスタム投稿名).phpの編集
これでタクソノミー の内訳は決定しました。ただし、このままでは表示されません。
ではどうすればいいのかと言うと、entry-body-wordpress(カスタム投稿名).phpを編集する必要があります。
まずは、画像に赤枠と青枠がある事を確認してから説明に目を通してください。
entry-body-wordpress(カスタム投稿名).phpを開くと、
青枠で囲った部分がもともと記述されており、この部分がSimplicityが本来持っているカテゴリーを表示する部分です。
なので、やる事としては、青枠を削除し、新たに赤枠の部分を追記します。これだけです。
//タクソノミータグ反映 echo get_the_term_list($post->ID,'custom'); ※phpで挟むのを忘れずに
この”get_the_term_list”がカスタムタクソノミー を表示させる機能を持ってます。’custom’の部分に先ほど控えた分類名を記述します。
タクソノミー の反映を確認する
以上のタスクが正しくこなせていれば、タクソノミー が反映されます。
まとめ
①functions.phpを編集する
→画像を参照し、タクソノミー のコードを記述
②タクソノミー のタグを作成する
→要領としては、デフォルトのカテゴリー機能と同じです
③entry-body-wordpress.phpを編集
→既存のカテゴリーリンクを削除して、get_the_term_listを記述します
④タクソノミー の反映を確認
→カスタム投稿個別記事の日付横にタグが表示されてるか確認します
次回記事
次回記事は、
【wordpress】カスタム投稿タイプとタクソノミー の導入方法⑦ 〜カスタムタクソノミー の専用テンプレート作成方法〜についてです。