投稿関係の設定方法

ここでは、Toolset Types で 異なる投稿タイプを関連付ける操作方法と、実際に特定の記事に投稿関係を設定する際の操作について解説します。

投稿関係(Post Relationship)って何?という方は、WordPressで複数の投稿タイプを関連付ける の記事を先にご覧ください。

Types3.x から 投稿関係に関する内部処理方法が変更され、機能とパフォーマンスが向上しました。Types2.xまでと比べて、特に「多対多の投稿関係」の設定が簡単になっています。

投稿関係の設定方法

Toolset Types では、「1対1」、「1対多」、「多対多」の3種類の投稿関係を、対話式の画面(ウィザード)で設定することができます。ここでは、WordPressで複数の投稿タイプを関連付ける の記事で取り上げた、レシピと材料における「多対多の投稿関係」を例にして設定方法を見てみましょう。

投稿関係の設定方法

作業の流れ

ウィザードを起動して投稿関係の種類を選ぶ

投稿関係の設定方法

① Toolset -> Relationships とたどり、Add New をクリックします。

投稿関係の設定方法

② 投稿関係の種類(例ではMany to Many = 多対多)を選び Continue をクリックします。

関連付ける投稿タイプを選択する

投稿関係の設定方法

① 関連付ける投稿タイプを選択して Continue をクリックします。

投稿関係の設定方法

② 必要に応じて関連付けの上限を数値またはスライダで設定し Continue をクリックします。

関連付けの上限値は、ユーザーが関連付けることのできる投稿数を制限する必要がある場合に設定します。上記の例なら、材料(右側)の上限値を50に設定すると1つのレシピに対して関連付けられるレシピが50までということになります。運用上、特に制限する必要がない場合はデフォルト値の「No Limit(無制限)」のままでも構いません。

関連フィールドを設定する(任意)

投稿関係の設定方法

「多対多」の投稿関係を設定する場合は、「Add New Field」をクリックして関連フィールド(後述)を追加することができます。関連フィールドが不要な場合は Continue をクリックします。

投稿関係の設定方法

例では、関連フィールドとして分量を記録するためのテキストフィールドを設定してみました。

関連フィールドと中間投稿タイプ

「多対多」の投稿関係では、特定の投稿同士を組み合わせた時だけに必要な追加情報を格納するカスタムフィールドを任意で設定することができ、このカスタムフィールドを特に「関連フィールド」と呼びます。

関連フィールドを使用する投稿関係を設定すると、内部的に各投稿を接続するための中間投稿タイプ(intermediary post type)が自動作成され、実際に投稿を関連付ける際には、中間投稿タイプに投稿関係の識別と追加情報を格納するエントリが作成されていきます(投稿関係を解除すると該当のエントリも削除される仕組みです)。

例えば「レシピ」と「材料」に投稿関係を設定する場合、関連フィールドとして「分量」を格納するためのテキストフィールドもしくは数値フィールドを設定しておけば、「パンケーキ」というレシピ投稿に対して、材料から「卵」を関連付けて、同時に分量(ex.1個)を記録することができます。卵を使うレシピは他にもたくさんあり、それらのレシピで使用する卵の量は様々ですが、関連フィールドを使うことで「チーズオムレツ」の場合は「卵」の分量を2個といった具合に記録できます。

投稿関係の設定方法

中間投稿タイプにおける「関連フィールド」の役割

投稿関係の名前と動作設定をする

投稿関係の設定方法

投稿関係の設定を識別するための名前とスラグを入力し、動作オプションにお好みでチェックしたら Continue をクリックします。

投稿関係の設定方法

Change role aliases は特に変更する必要はありません。

投稿関係の名前は、投稿編集画面で実際に投稿を関連付けるための入力エリア(メタボックス)の表題部分の名称にもなります。コンテンツの管理や入力時のミスを防ぐためにも意味のある名前を付けるようにしましょう。後述する同じ組み合わせの投稿関係を複数設定するような場合には特に充分な配慮が必要になります。

動作オプションについての補足

  • 1番目の「中間投稿タイプを作成」のチェックは、関連フィールドを使用する場合は必須のオプションです。関連フィールドを使用しない場合はチェックする必要はありません。後から変更も可能です。
  • 2番目の「中間投稿タイプをメニューに表示」にチェックを入れるとこちらのように投稿タイプがメニューに表示されます。後から表示を変更したい場合は通常のカスタム投稿タイプの設定画面(show_in_menu)から変更します。
  • 3番目の「投稿関係を解除した時に関連する中間投稿タイプのエントリも削除する」は、不要な中間エントリを残さないためにも、特別な理由がない限りチェックを入れておくことをお勧めします。

設定内容の確認と保存をする

投稿関係の設定方法

ここまでの設定を最終確認したら Finish をクリックします。変更する場合は左下の Back をクリックします。

投稿関係の設定方法

投稿関係が設定されました。この一覧画面では投稿関係の編集や削除もおこないます。

同じ組み合わせの投稿関係を複数設定する

投稿関係は同じ投稿タイプの組み合わせで複数作成することも可能で、例えば、「投稿タイプ:空港」と「投稿タイプ:フライト」を関連付ける場合、「出発便」と「到着便」の2種類の投稿関係を作成することができます。

投稿関係の設定方法

投稿タイプの組み合わせは同じで、2つの投稿関係を設定する例

作業的には、「多対多」の投稿関係を同じ組み合わせで2つ作成し、それぞれの投稿関係の名前を「出発便」と「到着便」にするだけです。

具体的に投稿を接続する際の操作

それでは、先ほどに続いて「レシピ」と「材料」の投稿関係を用いて具体的に投稿を接続する操作を見てみましょう。ここでは「レシピ」の投稿編集画面から「材料」接続する例を紹介しますが、反対に「材料」の投稿編集画面から「レシピ」を接続することもできます。

投稿関係の設定方法

作業の流れ

投稿関係の設定方法

① 接続したい一方の投稿編集画面を開き(例ではレシピ)、関連投稿用のメタボックスで 接続用のボタンをクリックします。

投稿関係の設定方法

②A-1 「Add New」 をクリックした場合は、接続するエントリの新規作成と接続を同時に実行します。

投稿関係の設定方法

②A-2 材料に小麦粉が作成され、同時に投稿が接続されました。「Connect existing …」を試してみましょう。

投稿関係の設定方法

②B-1 既存の材料をプルダウンメニューから選択し、分量を入力します。メニューに目的のエントリが見つからない場合は、文字列を入力するとエントリが検索されます。

投稿関係の設定方法

②B-2 既存の材料から「卵」のエントリが接続されました。

投稿関係の設定方法

もう一方の「卵」の投稿(エントリ)を開いてみると、レシピが接続されていることが確認できます。なお、中間投稿タイプが作成されている場合は、中間投稿タイプの接続用エントリを開けばレシピと材料がそれぞれ接続されているのを確認できます。

接続された投稿一覧の画面構成は以下のとおりです。編集や接続解除、エントリの削除の他、接続先の投稿タイプに所属するカスタムフィールドの表示・非表示を切り替えることもできます。

投稿関係の設定方法

接続された投稿一覧メタボックスの構成

Toolset JP Guide

ページ上部へ戻る