サイトの構成を考える


概要

Typesプラグインを使う前に、サイトを構築するにあたって必要となる投稿タイプ、カスタムタクソノミー、カスタムフィールドをあらかじめ考えておきましょう。例えば不動産のサイトであれば以下のような構成になります。もちろん、1つのカスタム投稿タイプに部屋の情報を含めることもできますが、多くの情報を取り扱う可能性があるのであれば、投稿タイプを分けて親子関係を持たせる方が、データの入力効率が高まり、また蓄積させた情報を効率よく抽出・表示することができるようになります。

まずは必要なカスタム投稿タイプとカスタムフィールドを考える


 

カスタムタクソノミーとは

カスタムタクソノミーは、ユーザーが定義したカスタム投稿タイプの記事を整理する際に使い、日本語で「分類」を意味していることからもわかるように、WordPressに標準で表示されているカテゴリーやタグと同様の役割を持っています。

上の図のように、WordPress標準の「カテゴリ」と「タグ」も、それぞれ「カテゴリ」という名前の階層的タクソノミーと「タグ」という名前の非階層的タクソノミーであるといえます。つまりユーザーが新たに追加する階層的または非階層的な分類をカスタムタクソノミーと呼び、そのカスタムタクソノミーに具体的な名前をつける際、既に使用されている「カテゴリ」と「タグ」という名前は使えないので、「取扱書籍ジャンル」とか「追加情報」といった名前をつけて識別することになります。したがってカスタムタクソノミーもカテゴリーのように階層を定義したり、タグのように非階層的に定義することができるのです。

 

カスタムフィールドとの使い分け

ところで、具体的にカスタムフィールドやカスタムタクソノミーを決める際に、カスタムフィールドとして定義した方が良いのか、カスタムタクソノミーとして定義した方が良いのか迷うことがあるかもしれません。例えば書籍のジャンルは一見するとカスタムフィールドに定義しても良さそうです。もちろん駄目というわけではありませんが、カスタムフィールドには、基本的に投稿記事固有の情報や、分類に適さない一意の値など定義することをおすすめします。例えば書籍というカスタム投稿タイプにおいて、ISBN番号や著者、ページ数、発行日といった書籍ごとにデータ異なる項目についてはカスタムフィールドとして定義し、異なる書籍であっても共通の値をとりうる書籍のジャンルについてはカスタムタクソノミーとして定義します。このようにすることで、記事の分類による一覧性の向上と、カスタムフィールドによる入力の効率化、情報の検索のしやすさのバランスが良くなります。

カスタムフィールドとタクソノミーの使い分けを理解するには少し時間がかかるかもしれません。感覚的に言えば、サイト上に複数の記事の一覧表示をしたい場合は分類法であるタクソノミーを、各記事のページをクリックしたときに表示させる内容にはカスタムフィールドを使用すると考えて下さい。

それでは、次のページからTypesプラグインを使って具体的にカスタム投稿タイプ、カスタムフィールド、カスタムタクソノミーを作成していきます。