【WordPress】カスタムタクソノミーの使い方(忘備録)

こんにちは。今回もWordPressネタです。至って初心者な内容の忘備録ですが、初めて触った内容なので忘れないようにまとめておきたいと思います。

タクソノミー(taxonomy)って日本語で言うと分類な訳ですが、WordPressを触っていると「カテゴリー」と「タグ」が出てきて、

どっちも分類じゃね?使い道とか使い分けってなんかあるんかな?

って思っていました。ただ、今日の午前中にコーデックスを見ながらなんとなく実装をしていたところ、そもそも「カテゴリー」の場合は管理画面で「親カテゴリーを選択する」ことができるんですが、「タグ」の場合は選択することができないと言う点に超基本的な違いがあることが判明・・・。確かに、よくよく考えてみたら投稿画面でカテゴリーはチェックボックス で選択できるようになってるのに、タグは自分で入力しないといけないから・・・まあ確かにそうですよね、って感じでした。

で、カスタムタクソノミーの実装に迫られるケースと言うのは、「投稿」以外に投稿機能が必要(これはカスタム投稿タイプで対応する)で、カスタム投稿タイプで作成した投稿ページ内をジャンルなどで分類したい場合にはカスタムタクソノミーを使う。と理解。合ってるのかな・・・。実案件やってみないとわからん。

ひとまず、「register_taxonomy」関数を使う訳ですが、使い方としては

<?php register_taxonomy( $taxonomy, $object_type, $args ); ?>

って感じで引数を3つとり、第三引数は配列で取得しますと、そんな感じ。

第一引数の「$taxonomy」はタクソノミーの名前を付けるので、今回は「genre(ジャンル)」と設定。「ジャンル」って、元々フランス語が語源だったんですね。辞書で見たら書いてあったけど知らなかった・・・どうでもいいけど。

第二引数の「$object_type」は投稿タイプまたはカスタム投稿タイプ名と言うことなので、今回は「news(お知らせ)」と設定。

第三引数の 「$args」が取りうる値がたくさんあります。その中で、今回指定したのが

  • ‘label’ => ‘商品ジャンル’
  • ‘hierarchical’ => true
  • ‘show_in_rest’ => true

の3つです。まず、「label」はその名の通りで作成したカスタムタクソノミーの表示名を指定することができるという至って簡単な話。

「hierarchical」を「true」にすると階層構造を持てるようになり、指定しないと「false」なので階層構造は持ちません。ここで冒頭の「カテゴリー」と「タグ」の違いに結びつくと言う訳でした。なので、分類する項目の中身も階層立てて整理するのであればtrueと設定し、そこまでの分類が不要であればfalse(設定しない)にしておけばいいと、なんとなく線で繋がりました。

で、最後の「show_in_rest」は現行のエディターである「グーテンベルク」に対応させるための設定で、「true」にすることでグーテンベルクでの入力が可能になるみたいです。現状、クラシックエディターしか使ってないけど、その内グーテンベルクに移行していかないといけないんだな、と思いつつそこまでやってる余裕がない。

今日押さえておきたいのはそんなところで。とにかく、早く実案件をやらないことには血肉にならないなぁ。営業活動引き続き頑張ります。知識のインプットは大事だけどアウトプットはもっと大事だし、実務が何よりも大事。自分のスキルで生きていける感覚を早く味わいたいなーっていうのが締めの言葉で今日はおしまい。

最後に、3月31日で前職を退職して翌日4月1日から正式にフリーランスになった訳ですが、やっぱり時間の融通が効くって最高です。朝から晩まで基本的にパソコン触ってるけど、全て自分の身になることだけ考えて行動できるのはほんまに有意義な時間の使い方できるなーっていうのが5日間の感想でした。もちろん、実質無職だから1日でも早く一緒に仕事してくれる人を見つけないといけませんが、モチベーション的には、心の底から

何でもやります!

って言える。笑

ひとまず1ヶ月やれるだけやってみた結果的な所感はまたブログで書きたいと思います。

ほんとにおしまい。最後まで読んでいただいた方、ありがとうございました。また他の記事でお会いしましょう!