コンテンツ構造の計画
目標
サイトのコンテンツ構造の計画を立てます(どのコンテンツにどのタイプとサブタイプのエンティティを使用するか)。また、どのページにコンテンツの一覧を置くかも決めます。
手順
- サイトに含める必要があるコンテンツについてブレインストーミングします。これには、訪問者が探しているであろうコンテンツや、訪問者に表示したいコンテンツが含まれます。その結果は、 セクション i.6「ガイドシナリオ(Guiding Scenario)」 のような記述になるかもしれません。
-
特定した各コンテンツについて、どのコンテンツエンティティタイプが最適かを決定します。その際、サイト上でコンテンツがどこでどのように使用・編集されるかを考慮する必要があります。たとえば、ファーマーズマーケット(農産物直売所)サイトのシナリオでは、すべてのページのサイドバーにファーマーズマーケットの営業時間と場所を表示したいかもしれません。そのようなコンテンツには、単一のカスタムブロックが適しています。別の例として、各出店者の情報を表示するページは、コアの Node(ノード)モジュールが管理するコンテンツ項目にすることを決めるかもしれません。それは、出店者に自分のリストを編集させたいからです。コアの Node モジュールの権限システムを使えば、これを簡単に行えます。
これらの決定には、必ずしも唯一の正解があるとは限りません。たとえば、出店者ページをコンテンツ項目ではなくユーザープロファイルにすることもできますが、そうするとコンテンツが特定のユーザーアカウントに紐づけられ、後で出店者ページの所有者を別のユーザーアカウントに変更することが容易ではなくなります。
- 特定した各コンテンツエンティティタイプ内で、どのようにエンティティサブタイプへ分割するのが理にかなうかを決定します。たとえば、ファーマーズマーケットサイトの例では、コンテンツ項目エンティティタイプの下に、基本ページ(ホームとアバウト)用のコンテンツタイプが1つ、出店者ページ用に1つ、レシピページ用に1つがあるべきだろうと決めるでしょう。
- 決定した各エンティティサブタイプについて、どのフィールドが必要かを決定します。たとえば、Vendor(出店者)コンテンツタイプには、出店者名、Web ページ URL、画像、説明のためのフィールドが必要になるでしょう。
- どのエンティティ一覧が必要かを決定します。これは、ページ全体の場合も、ページ内の小さな領域の場合もあります。各一覧について、どのエンティティを列挙するかを決定する必要があります。次に、どのような順序で、どのようなフィルタリングオプション付きで表示するかを決定する必要があります。たとえば、サイト訪問者にキーワード検索のオプションを提供したり、リストをサブセットに絞り込んだり、リストを並べ替えたりできるようにしたいかもしれません。また、エンティティのどの情報を表示するかを決定する必要もあります。これは、前の手順で決定したフィールドのリストに追加することになるかもしれません。たとえば、ファーマーズマーケットサイトには、材料(Ingredients)によるフィルタリングが可能な Recipe(レシピ)タイプのコンテンツ項目を列挙するレシピ一覧ページが必要です。つまり、Recipe コンテンツタイプには Ingredients フィールドが必要ということです。
- 各エンティティサブタイプの特定した各フィールドについて、どのタイプのデータを含むべきか(プレーンテキスト、整形済みテキスト、日付、画像ファイルなど)、そして何個の値を許可すべきかを特定します。ほとんどのフィールドは単一値ですが、たとえば Recipe の Ingredients フィールドでは複数の値を許可すべきです。
- タクソノミータームエンティティへの参照として最適なフィールドを検討します。つまり、値が許可された値のリストから選択されるべきフィールドです。時間の経過とともに変更・増加すると予想される許可値は、よい候補です。例として、Recipe コンテンツタイプの Ingredients フィールドが挙げられます。
- 他のコンテンツエンティティを参照すべきフィールドを検討します。例として、出店者がレシピを投稿するため、Recipe コンテンツタイプには、レシピを投稿した出店者の Vendor コンテンツ項目を参照するフィールドが必要になります。
以下は、ファーマーズマーケットシナリオのサンプルサイトで得られるコンテンツ構造の例です:
| エンティティタイプ | エンティティサブタイプ | 例 | フィールド |
|---|---|---|---|
|
コンテンツ項目 |
基本ページ |
ホームページ、アバウトページ |
タイトル、ページ本文 |
|
コンテンツ項目 |
出店者 |
マーケットの各出店者のページ |
出店者名、ページ本文、画像、URL |
|
コンテンツ項目 |
レシピ |
投稿された各レシピのページ |
レシピ名、ページ本文、画像、投稿した出店者への参照、Ingredients タクソノミー |
|
カスタムブロック |
(汎用) |
フッター用の著作権表示、サイドバー用の営業時間と場所 |
特別なフィールドはなし |
|
タクソノミーターム |
Ingredients |
ニンジン、トマト、その他のレシピの材料 |
特別なフィールドはなし |
|
コンタクトフォーム |
(汎用) |
汎用コンタクトフォーム |
名前、メール、件名、メッセージ |
|
ユーザープロファイル |
(なし) |
サイトには表示されない |
特別なフィールドはなし |
そして、以下がサイトに必要な一覧です:
| ページまたはページ領域 | エンティティタイプとサブタイプ | フィルタ/並べ替え/ページ分割 | 表示されるフィールド |
|---|---|---|---|
|
出店者ページ |
出店者のコンテンツ項目 |
全出店者、アルファベット順、ページ分割 |
画像、出店者名、切り詰めた本文 |
|
レシピページ |
レシピのコンテンツ項目 |
材料によるフィルタ、アルファベット順、ページ分割 |
画像、レシピ名 |
|
最近のレシピサイドバー |
レシピのコンテンツ項目 |
最新の5件を列挙 |
画像、レシピ名 |
動画
クレジット
執筆・編集: Jennifer Hodgdon および Grant Dunham。