WordPressで特定の固定ページにカスタムフィールドを付ける方法

初めて特定の固定ページにカスタムフィールドを付けるという案件があったのでメモ。


特定の固定ページにカスタムフィールドを付ける手順

カスタムフィールドは「Custom Field Suite」プラグインを使用

カスタムフィールドを作るにはまず「Custom Field Suite」プラグインを使用して作成します。ACFのが人気っぽいのですが、僕はこっちのがシンプルで好き。

Custom Field Suite

20151020 2

特定の固定ページにカスタムフィールドを設定するには、フィールドを作る際の設定の「配置ルール」の所で投稿タイプに「page」を指定。

特定の固定ページのpage_idで指定出来れば良かったのですが、それは無理でした。というわけで、特定の固定ページを指定するには専用の固定ページテンプレートを作って指定します。

固定ページテンプレートを作成

固定ページテンプレートを作るのは簡単。以下のphpコードをphpファイル(ファイル名は何でもOK)に書いてアップするだけでWordPressが固定ページテンプレートとして読み込んでくれます。

固定ページ / WPcodex

上記のコードを例えばhoge.phpというファイルに書いてアップすると

20151020 3

こんな感じに固定ページ作る時にテンプレートで選べるようになります。

というわけで特定の固定ページにカスタムフィールドを設定するにはこの固定ページテンプレートを指定してやれば良いですね。

今まではカスタム投稿を作ってposttypeで指定していたのですが、そんなに情報が増えていかないようなケースには(例えばクーポンとかメニューとか)今後この固定ページ+カスタムフィールドのよさ気ですね。