Toolset Types:カスタムタクソノミの構造や機能を制御する

Toolset Types:カスタムタクソノミの構造や機能を制御する WordPress
  - 

WordPressでカスタムタクソノミを使う際、「カテゴリー」のような階層型か「タグ」のような非階層型にするか、タグクラウドの表示を許可するかなど、タクソノミの目的や性質に合わせて、その構造や機能を変更したい場合があります。

Toolset Typesで作成したカスタムタクソノミは、WordPress標準の「カテゴリー」とほぼ同じような構造と機能が使えるようにあらかじめ設定されていますが、これらの設定は Toolset Typesプラグインのカスタムタクソノミ設定画面(Optionsセクション)で簡単に変更することができます。

このページでは、Optionsセクションの各オプションの役割や使い方を、簡単な例と画像を交えて解説します。

基本操作

Toolset Types のカスタムタクソノミ設定画面内にある「Options」セクションを開き、変更したい項目のチェックボックスのON・OFFを切り替えます。一部の項目は入力が必要ですが、初心者の方はあまり気にする必要はありません。

Rewrite(パーマリンクの書き換え)

Rewirteにチェックを入れると、タクソノミアーカイブページのパーマリンクを、編集中のタクソノミのスラッグとタームを使った階層型に書き換えます。デフォルト値はONです。タクソノミのスラッグとは別の文字列を使いたい場合は、すぐ下の「Replace taxonomy slug with this」欄に英半角小文字で指定します。

Rewriteの具体例

Rewriteの設定変更によってタクソノミアーカイブのパーマリンクがどのように変化するのか具体的な例を使ってみてみましょう。

使用するカスタムタクソノミの例

  • サイトのURL:http://toolset-demo.local
  • カスタムタクソノミ:料理国籍
  • カスタムタクソノミのスラッグ:region
  • 具体的なタクソノミタームのスラッグ:japan

上記の例では、タクソノミアーカイブのパーマリンクはサイトのパーマリンク設定とRewriteオプションの組み合わせに応じて次のように変化します。

サイトのパーマリンク設定 書き換えなし
Rewrite OFF
タクソノミスラッグ(region)
で書き換え
指定したスラッグ(country)
で書き換え
基本 http://toolset-demo.local/?region=japan http://toolset-demo.local/?region=japan http://toolset-demo.local/?region=japan
日付と投稿名 http://toolset-demo.local/region/japan/ http://toolset-demo.local/country/japan/
月と投稿名
数字ベース http://toolset-demo.local/archives/region/japan http://toolset-demo.local/archives/country/japan
投稿名 http://toolset-demo.local/region/japan/ http://toolset-demo.local/country/japan/
  • サイトのパーマリンク設定を「数字ベース」にしていて、「Allow permalinks to be prepended with front base」がOFFになっている場合は、パーマリンク中の「archives」部分は表示されません。
  • 後述の「query_var」のチェックをOFFにした場合、「基本」および「書き換えなし」の書式は上記の表と異なります。

Allow permalinks to be prepended with front base(カスタム構造の許可)

上記のRewriteをONにしている場合にのみ動作するオプションで、編集中のタクソノミのスラッグの前に、カスタムパーマリンクを追加できるようにします(デフォルトはON)。こちらもイメージしにくいと思いますので、前述の例を使ってみてみましょう。

前提として、WordPressのパーマリンク設定で、「カスタム構造」を選択し、以下のように設定しているとします。

この場合に、「Allow permalinks to be prepended with front base」のON・OFFによってパーマリンクは以下のように変化します。

ON OFF
http://toolset-demo.local/blog/region/japan http://toolset-demo.local/region/japan/

なお、先ほども述べましたが、このオプションを切り替えると、WordPressのパーマリンク設定で「数字ベース」を選択した場合の「archives」部分も同様に変化します。

Hierarchical URLs(子タームのアーカイブページを階層型URLで出力する)

編集中のタクソノミをTaxonomy type セクションで「Hierarchical(階層型)」を選択していて、かつこのオプションがONの場合、子タームのタクソノミアーカイブページを階層型のURLで出力します。デフォルト値はONです。

具体例で見てみましょう。

使用するカスタムタクソノミの例

  • サイトのURL:http://toolset-demo.local
  • カスタムタクソノミ:料理区分
  • カスタムタクソノミのスラッグ:genre
  • 具体的なタクソノミタームのスラッグ:親ターム(meat)-> 子ターム(chicken

料理区分という階層型のタクソノミに、肉料理(meat)という親タームの下に、鶏(chicken)という子タームを作りました。この時、子タームの「chicken」のタクソノミアーカイブページのURLはオプションに応じて以下のように変化します。

オプション
ON
オプション
OFF
http://toolset-demo.local/genre/meat/chicken/ http://toolset-demo.local/genre/chicken/

このようにオプションをONにすることで、親タームのmeatが挿入された階層型のURLになり、タクソノミ構造をURLに詳しく表現することができます。

show_ui(管理画面での表示)

このオプションをOFFにした場合、編集中のカスタムタクソノミは管理画面上や投稿編集画面に表示されなくなります(メニューはもちろん、タームの新規作成、編集なども表示できなくなります)。ただし、フロントエンドからアーカイブページを閲覧することは可能です。デフォルト値はONです。

あまりOFFにする機会はないと思いますが、今後更新しないカスタムタクソノミで、アーカイブページは残しておきたいが管理画面上からは隠しておきたい場合などに使うことがあるのかもしれません。

show_in_nav_menus(ナビゲーションメニュー編集画面への表示)

このオプションをONにしている場合、編集中のカスタムタクソノミが 管理画面の「外観 -> メニュー」で、ナビゲーションメニューを編集する際に選択可能になります。デフォルト値はONです。

show_tagcloud(タグクラウドウィジェットを許可)

やや癖のあるオプションで、このオプションをONにすると、前述の「show_ui」がOFFの場合でも、タグクラウドウィジェットでこのタクソノミが利用可能になりますが、反対に「show_ui」がONの時にこのオプションをOFFにしてもタグクラウドを無効にすることは出来ません(「show_ui」の設定に引きずられます)。従ってタグクラウドでの利用を完全に封じるには、「show_ui」と「show_tagcloud」の両方をOFFにする必要がります。デフォルト値はONです。

show_admin_column(タクソノミ列を表示)

このタクソノミを使用する投稿タイプをWordPressの管理画面で一覧表示したときに、タクソノミタームを表示する列(=colum)を表示させます。デフォルト値はOFFです。

query_var(パーマリンク用の変数宣言)

編集中のタクソノミのスラッグをあらかじめ変数として宣言しておくことで、簡易なパーマリンクを使用できるようにします。デフォルト値はONです。

このオプションをOFFにした場合、WordPressのパーマリンク設定で「基本」を選択した際のURL書式が変化するので、特別な理由がない限り、ONのままでよいでしょう(お好みでどうぞ)。

この指定によってパーマリンクがどのように変化するのか具体的な例を使ってみてみましょう。

使用するカスタムタクソノミの例

  • サイトのURL:http://toolset-demo.local
  • カスタムタクソノミ:料理国籍
  • カスタムタクソノミのスラッグ:region
  • 具体的なタクソノミタームのスラッグ:japan
query_var
ON
query_var
OFF
http://toolset-demo.local/?region=japan http://toolset-demo.local/?taxonomy=region&term=japan

query_var で使う変数を別途指定する

編集中のタクソノミのスラッグとは別の変数を使用したい場合は、query_var の下にある入力欄に 英半角小文字 で文字列を入力します。例えば「country」と指定すると、以下のように変化します。

デフォルト
(指定なし)
変数としてcountry
を指定
http://toolset-demo.local/?region=japan http://toolset-demo.local/?country=japan

update_count_callback(更新時のコールバック関数)

このタクソノミを使用する投稿の作成・削除・更新(ステータスの変更を含む)時にWordPressが行なう投稿数のカウント動作を契機として呼び出す(実行する)関数を指定できます。デフォルト値はブランク(未指定)です。上級者向けの機能なので、初心者はスルーでOKです。

WordPress Codexが例として挙げている「_update_generic_term_count」を指定した例を見てみましょう。
※「_update_generic_term_count」は、既定ではタームが使用された「公開済み」ステータスの投稿数をカウントするところを、「下書き」や「ゴミ箱」にあるものもカウントします。

previous arrow
next arrow
Slider

Codexの例では、カウント系の関数を指定していますが、工夫次第では色々出来るのかもしれません。

show_in_rest(REST APIへの公開)

このオプションがONの場合、編集中のタクソノミをREST APIに公開します。デフォルト値はOFFです。REST APIに公開すると、外部からコンテンツを取り出したり色々なことが出来ますが、初心者向けの機能ではないので、通常はOFFにしたままで良いでしょう。カスタム投稿タイプのオプションにも同じものがあるので解説についてはそちらを参照してください。

Hide taxonomy meta box(メタボックスを隠す)

このオプションがONの場合、投稿編集画面に表示されるタクソノミ選択用のメタボックスが非表示になります。デフォルト値はOFFです。

meta_box_cb(メタボックス用のコールバック関数)

メタボックスを表示するためのコールバック関数を指定できます。デフォルト値はブランクです。Typesプラグインでは、上記までのオプションで、メタボックスの種類や非表示を実現しているので、ここで敢えて指定する必要性はないでしょう。

タイトルとURLをコピーしました