【WordPress】タクソノミー、ターム、カテゴリー、タグの違いについて理解する

今回はWordPressでWeb制作をする際に出てくる「タクソノミー」「ターム」「カテゴリー」「タグ」の違いについて解説します。

この4つの単語は似ているので紛らわしいと感じる人もいると思います。

今回は一つずつ深掘りして違いを明確にし、実際に使用する場面を考えながら理解を深めまていきましょう。

違いを一覧で確認しよう

まずは違いを一覧で確認して全体像を掴みましょう。

違いを一つずつ深掘りしよう

タクソノミーとは

タクソノミーは「taxonomy」と書き、分類学や分類法、分類を意味する英単語です。

WordPress Codex にはこのように記載されています。

WordPress では、「分類(タクソノミー)」は投稿(またはリンク、カスタム投稿タイプ)をグループ化するための仕組みのことです。

カスタム分類 – WordPress Codex 日本語版

例えば、スポーツを扱うWebサイトの新着情報を閲覧する際、たくさんの競技がごちゃ混ぜの状態だと興味のある競技の記事を探すのは少し手間ですよね。

その時、

  • 野球
  • サッカー
  • バレー
  • バドミントン
  • 卓球
  • 陸上

上記のように競技別で分けてあると記事を探しやすいと思います。

このように項目を分けて分類する仕組みをWordPressでは「タクソノミー」と言います

また、「カスタムタクソノミー」と言う単語がありますが、これはカスタム投稿を作成した際に分類する仕組みのことを言います。

タームとは

タームは「term」と書き、複数使用することで「定められた条件」という意味を持つ英単語です。

WordPress Codex にはこのように記載されています。

分類内のさまざまなグループ名を「terms(項目)」 と呼びます。 動物のグループ化を例に取ると、あるグループを「鳥」、別のグループを「魚」と名づけるでしょう。 「鳥」や「魚」は、分類内の項目です。 WordPress の例で言うと、あるカテゴリーやタグ(次の項目を参照)が項目となります。

カスタム分類 – WordPress Codex 日本語版

動物の「鳥」「魚」と言う項目がタームだと言うことがわかりやすく記載されていますね。

タクソノミーの説明で例にしたスポーツを扱うWebサイトで言うと、

  • 野球
  • サッカー
  • バレーボール
  • バドミントン
  • 卓球
  • 陸上

上記の項目一つひとつがタームだということになります。

このように分類された項目のことをタームと言います

カテゴリーとは

カテゴリーとは、WordPressを設置した時(デフォルト)からある「投稿」に付随した分類方法です。

カテゴリーも分類なので、タクソノミーです。

カテゴリーの特徴は、階層構造にできるということです。

このことから、「タクソノミーの中のデフォルトであるもの(階層構造あり) = カテゴリー」と言う認識で良いと思います。

競技別のタクソノミーで例えると、

  • 野球
    ー セ・リーグ
      ー 巨人
      ー ヤクルト
    ー パ・リーグ
  • サッカー
    ー J1
    ー J2
    ー J3
  • バレーボール
    ー V1
    ー V2

上記のように、副項目を作成してよりわかりやすくグループ分けすることができます。

これを利用してパンくずリストを作成すると、「野球 > セ・リーグ > 巨人」このように記述することができ、Webサイト上での位置を把握しやすくできるメリットもあります。

タグとは

タグとは、カテゴリーと同様にWordPressを設置した時(デフォルト)からある「投稿」に付随した分類方法で、タクソノミーです。

カテゴリーと違う点は、階層構造を持たないという点です。

このことから、「タクソノミーの中のデフォルトであるもの(階層構造なし) = タグ」という認識ができるかと思います。

実際いつ使うの?

これまで「タクソノミー」「ターム」「カテゴリー」「タグ」の言葉の違いについて説明してきました。

では、実際にWordPressでWebサイトを作成する際にどの場面で使用するのでしょうか。

デフォルトの投稿のみ使用する場合

WordPressを立ち上げた時点からある「投稿」のみを使用して実装する場合、ほとんどは投稿に付随する「カテゴリー」「タグ」を使用します。

「カテゴリー」「タグ」はタクソノミーの一種でしたね。

「カテゴリー」「タグ」は投稿と同様にWordPressを立ち上げた時点から管理画面に表示されている言葉で、専用の関数も用意されています。

カテゴリー専用の関数の一例

  • the_category()
  • get_the_category()
  • get_the_category_list()

タグ専用の関数の一例

  • the_tags()
  • get_the_tags()
  • get_the_tag_list()

上記のことから、「カテゴリー」「タグ」はタクソノミーの一種ですが、WordPressを立ち上げた時点からタクソノミーの名前を「カテゴリー」「タグ」として階層構造の有無で分けて用意してあり、使用しやすい便利な関数もあるということがわかります。

カスタム投稿タイプを作成した場合

WordPressを立ち上げた時点にはない、新しい投稿を自作した場合は、既存の「カテゴリ」「タグ」を使用する方法と、カスタムタクソノミーを作成して使用する方法の2つの方法があります。(タクソノミーを指定する方法は今回割愛します。)

「カテゴリ」「タグ」を使用する場合についてはデフォルトの投稿のみ使用する場合と同じです。

カスタムタクソノミーの場合も「カテゴリ」「タグ」と同様に関数が用意されています。

タクソノミー専用の関数の一例

  • the_terms()
  • get_the_terms()
  • get_the_term_list()

「term」や「terms」とはいっているのでわかると思いますが、項目に関することを取得または出力する関数です。

上記の関数はタクソノミーに使用できる関数なので、タクソノミーの一つである「カテゴリー」「タグ」も使用することができます。

「カテゴリー」「タグ」専用の関数と比較しての違いは、タクソノミーのスラッグを指定する必要があることくらいでしょうか。

もし、Webサイトを制作する上でカスタムタクソノミーをたくさん(3、4つ以上)使用する場合、「カテゴリー」「タグ」もタクソノミー専用の関数で記述した方が、記述方法が統一されてメンテナンス性が上がるかもしれません。

まとめ

今回はWordPressでWeb制作をする際に出てくる「タクソノミー」「ターム」「カテゴリー」「タグ」の違いについて解説しました。

なんとなく似ている言葉なので、ぼんやり覚えているといざ実装する時に意味を間違えて捉えかねません。

WordPressを使用したWebサイト制作では投稿にまつわる実装は必須だと思うので、しっかりと理解して臨みましょう。


その他の記事