-

ER図活用によるWebサイトの全体デザイン

ER図

WordPressの投稿タイプやタクソノミーを理解しようとするとき、ER図を書いてみると、視覚的に理解しやすくなります。

データの集合をエンティティと呼びます。下図は、3つのエンティティ(ブログ投稿、市区町村、ジャンル)をデータの実例付きで図示したものです。
 ER図では、主キーと外部キーを記述します。主キーは、図056の最左端のデータ項目で、エンティティのレコードを識別します。表の右端にある「市区町村ID」「ジャンルID」は、それ自身が別のエンティティの主キーとなり得るデータ項目で、外部キーと呼ばれます。 一つのエンティティに主キーは必ず一つですが、外部キーは複数持つことができます。図では、ブログ投稿は二つの外部キーを持つことによって、「ジャンル」と「市区町村」2つのエンティティを関連を持っています。
 また、「市区町村」の事例は、外部キーが自身の主キーと結びつく「親子関係」のエンティティの事例です。

ブログ投稿と市区町村の関係は、1:N

・1つのブログ投稿に対し1つの市区町村が関連。
・その市区町村は別のブログ投稿とも関連。

ブログ投稿とジャンルの関係は、N:N

・ジャンルは、1つのブログ投稿に対し複数設定可能。
(例)
西仲通り商店街は、「商店街」と「路地」に関連

市区町村は親子ループ(1:N)を持つ

・1つの親は1つまたは複数の子を持つ。
・子に対し、親は1つ。
・同一エンティティの中で主キーと外部キーが結びつく(親子関係)。

主キーと外部キー

上記のER図の主キーと外部キーのみを表記すると下図のようになります。主キーと外部キーに注目すると、下記4パターンに集約されます。
ⓐDestinationパターン
ⓑSourceパターン(MetaQuery、TaxQuery)
ⓒAncestorsパターン(現世代→先祖)
ⓓDescendantsパターン(現世代→子孫)

WEBサイトの要件をER図に書き表す

Webサイトを開発する前に全体のデザイン(設計)をすることが必要です。まず、エンティティを抽出し、それらの関連づけを行うための主キー、外部キーはを決めることが重要です。

下図は当サイトの場合のER図の事例です。WordPressは投稿タイプとタクソノミーの2種類がありますので、どちらにするかも最初にするかを決めておく必要があります。

WordPressの外部キー

エンティティ同士の関連には、
 ❶投稿タイプとタクソノミーの関連づけ
 ❷投稿タイプのカスタムフィールドによる関連づけ
 ❸parentフィールドによる親子関係の関連づけ
の3種類があります。

コメントよろしくお願いします。