※当サイトではアフィリエイト広告を利用しています

WordPress

【カスタムタクソノミー】をCustom Post Type UIで作る方法

【カスタムタクソノミー】をCustom Post Type UIで作る方法

今回はWordPressのカスタムタクソノミー / カスタム分類を
「Custom Post Type UI」というプラグインで作る方法をまとめていきたいと思います。

おおまかな手順はこんなかんじです。

  1. プラグインをインストールする。
  2. 管理画面の「CPT UI」でタクソノミーを新規作成 & 投稿タイプと紐づける。
  3. カスタムタクソノミーのターム(項目)を作成する。
  4. カスタムタクソノミーに合わせたテンプレートファイルを作る。

それではカスタムタクソノミーと、その作り方についてもう少し詳しくみていきましょう。

そもそも「カスタムタクソノミー」って?

そもそもカスタムタクソノミーとはなんでしょうか。

カスタムタクソノミーはいわゆるWordPressの「カスタム3兄弟」の中の1つで、
デフォルトの投稿タイプでいう
「カテゴリー」「タグ」をオリジナルに新規作成することができます

【カスタム3兄弟】

  • カスタムフィールド
  • カスタム投稿タイプ / カスタムポストタイプ
  • カスタムタクソノミー / カスタム分類

カスタムタクソノミーの「タクソノミー」は「分類」という意味を持っています。
そのためカスタムタクソノミーは、「カスタム分類」とも呼ばれます。

デフォルトの投稿タイプは「カテゴリー」と「タグ」という分類方法になっていますが、
用途に合わせて様々なタクソノミーを作ることができます。

どんなときに便利なの?

カスタムタクソノミーは、カスタム投稿タイプと組み合わせて使用されることが多いです。

カスタム投稿タイプは、投稿タイプをオリジナルで新規作成できる機能になります。

【カスタム投稿タイプ】をCustom Post Type UIで作る方法
【カスタム投稿タイプ】をCustom Post Type UIで作る方法今回はWordPressのカスタム投稿タイプを「Custom Post Type UI」というプラグインで作る方法をまとめていきたいと思います。...

例えば、カスタム投稿タイプで「商品」という投稿タイプを作成した場合、
カスタムタクソノミーを使わないと「カテゴリー」や「タグ」などの分類がない状態です

デフォルトの投稿タイプだと「カテゴリー」と「タグ」が元からついていますが、
カスタム投稿タイプで作成したものにはついてきません。

そこで作成した投稿タイプに合わせて、
分類項目を作ることができるのがカスタムタクソノミー です。

 

例えばガジェットを取り扱っている会社で「商品」の投稿タイプを作った場合、
こういった分類項目が欲しいかもしれません。

【商品カテゴリー】

  • PC
  • タブレット
  • スマートフォン etc

【価格帯】

  • 〜30,000円
  • 40,000円〜
  • 50,000円〜 etc

カスタムタクソノミー を使うことで、「商品カテゴリー」や「価格帯」といった
新しいオリジナルの分類項目を作ることができます。

そのためよりユーザーが見やすく、管理者も使いやすいサイトを作ることができます

Custom Post Type UIでカスタムタクソノミーを作る手順

それでは実際の手順をみていきましょう。

手順1:「Custom Post Type UI」をインストール & 有効化

下記から「Custom Post Type UI」を検索し、インストール & 有効化します。

管理画面 > プラグイン > 新規追加

WordPressのCustom Post Type UIプラグイン

有効化すると、管理画面のメニューに「CPT UI」の項目が追加されます。

手順2:管理画面の「CPT UI」でタクソノミーを新規作成 & 投稿タイプと紐づける

CPT UIから「タクソノミー の追加と編集」をクリックし、
「新規タクソノミー を追加」タブから設定をしていきます。

【基本設定】

  • タクソノミー スラッグ:
    タクソノミーの名前の文字列。
    (半角)タクソノミーページのURLにも使われる。

 

  • 複数形ラベル:
    管理画面に表示されるタクソノミーの名前。

 

  • 単数形ラベル:
    単数形が必要な場合に使用される。
    日本語で名称が変わらなければ複数形ラベルと一緒でOK。

 

  • 利用する投稿タイプ:
    どの投稿タイプと紐付けたいか選択する。
Custom Post Type UIの設定画面

「追加ラベル」は必要に応じて設定します。
特に設定をしなくても使用することはできます。

【設定】

階層:

  • trueの場合:
    デフォルトの投稿タイプの「カテゴリー」のような分類方法になる。
  • falseの場合:
    デフォルトの投稿タイプの「タグ」のような分類方法になる。
Custom Post Type UIの設定画面 Custom Post Type UIの設定画面 Custom Post Type UI タクソノミー 設定3

「設定」は他にも様々な項目があるので、必要に応じて設定します。
デフォルトの設定のままでも使用することはできます。

「タクソノミーを追加」ボタンをクリックすると、タクソノミーが追加されます。

手順3:カスタムタクソノミーのターム(項目)を作成する

タクソノミーが作成できたので、
今度はタクソノミーに紐づく「ターム」を作っていきます。

タームとはタクソノミーに属する分類方法の種類のようなイメージです。

先ほどの例でいうと、以下のイメージです。

【商品カテゴリー】←タクソノミー

  • PC ←ターム
  • タブレット ←ターム
  • スマートフォン ←ターム

【価格帯】←タクソノミー

  • 〜30,000円 ←ターム
  • 40,000円〜 ←ターム
  • 50,000円〜 ←ターム

手順2の「基本設定」の「利用する投稿タイプ」で選んだ投稿タイプを
管理画面でホバーすると、
「基本設定」で設定したラベル名( 複数形ラベル / 単数形ラベル )が追加されています。

Custom Post Type UIタクソノミー確認画面

そこからデフォルトの投稿タイプのカテゴリーやタグに
項目を追加する要領でタームを追加していきます。

タームの追加後、手順2の「基本設定」で選んだ投稿タイプの新規作成ページにいくと、
紐づけたタクソノミーのタームが選択できるようになっているはずです。

ここまでで、タクソノミーとタームを作ることができました。

手順4:カスタムタクソノミーに合わせたテンプレートファイルを作る

タクソノミータームのアーカイブページは以下の順の優先順位で適用されます。

  1. taxonomy-$taxonomy-$term.php
  2. taxonomy-$taxonomy.php
  3. taxonomy.php
  4. archive.php
  5. index.php

テンプレートファイル階層はCodexに分かりやすい図が載っています。

WordPressテンプレート階層図

出典: WordPress Codex テンプレート階層

$taxonomyは「タクソノミースラッグ名」$termは「タームのスラッグ名」を指します。

 

例えば、先ほど挙げた「ガジェットを取り扱っている会社の「商品」投稿タイプ」で、
以下の設定をしていたとします。

  • タクソノミー名:
    「商品カテゴリー」 / タクソノミースラッグ名:「itemcategory」
  • ターム名:
    「PC」/ タームスラッグ名:「pc」

これらの情報をもとにテンプレートファイルを作成すると以下のようになります。

taxonomy-$taxonomy-$term.php → taxonomy-itemcategory-pc.php
→商品カテゴリーのPCターム専用の一覧ページ

taxonomy-$taxonomy.php → taxonomy-itemcategory.php
→商品カテゴリーのターム専用の一覧ページ
(PC以外のタブレットやスマートフォン一覧ページでも適応される。)

またタクソノミー専用のテンプレートファイルを作らなかったとしても、
()で記載の archive.php → index.php の順番で割り当てられます。

以上、Custom Post Type UIを使ったカスタムタクソノミーの作り方でした。

【WordPress】カスタム3兄弟の使い方まとめ
【WordPressテーマ作成】カスタム3兄弟の使い方まとめ今回はWordPressのカスタム3兄弟についての記事が少したまってきたのでまとめてみたいと思います。...
【カスタム投稿タイプ】をCustom Post Type UIで作る方法
【カスタム投稿タイプ】をCustom Post Type UIで作る方法今回はWordPressのカスタム投稿タイプを「Custom Post Type UI」というプラグインで作る方法をまとめていきたいと思います。...
【カスタムフィールド】をAdvenced Custom Fieldsで作る方法
【カスタムフィールド】をAdvenced Custom Fieldsで作る方法今回はWordPressのカスタムフィールドを簡単に作ることができるプラグインAdvanced Custom Fieldsの使いかたをまとめてみたいと思います。...
【WordPress自作テーマ作成】全体の流れをまとめてみる
【WordPressテーマ作成】全体の流れをまとめてみる今回はWordPressで自作テーマを作るときの全体の流れをまとめてみたいと思います。...