地域ポータルサイトを作る時に、各お店を紹介するページには、「店名」「住所」「電話番号」「営業時間」「定休日」など、決まった項目を表示させます。
地域ポータルサイトに限らず、商品紹介ページでも「商品名」「原材料」「価格」などの決まった項目を表示させます。
そのように同じ項目を表示させるのに、予め項目欄を用意しておき、各個別ページでは、その内容を登録していくだけという方法があります。
こうすることで、登録の作業効率が格段にアップします。
それが簡単にできるのが、Custom Field Templateプラグインです。
そのプラグインの設定と使い方を見ていきましょう。
Custom Field Templateプラグインの設定
- 「プラグイン > 新規追加」の検索機能で、「Custom Field Template」を検索し、インストール
- インストールしたプラグインを有効化
有効化したら、左メニューの「設定 > カスタムフィールドテンプレート」をクリックします。
地域ポータルサイトで店舗情報を紹介する場合、「TEMPLATE #0」の「テンプレートタイトル」に「店舗情報」などの分かりやすい名前をつけておきます。
続いて、各項目の設定をしていきます。
「テンプレートコンテンツ」に予め内容が入力されていますが、一旦それをすべて消して、以下のコードを入力します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
[Name] type = text size= 35 label = 店舗名 [Address] type = text size= 50 label = 住所 [Tel] type = text size = 35 label = 電話番号 |
入力したら、少し下にある「オプションを更新する」ボタンをクリックして、内容を反映させます。
この状態で、左メニューの「投稿 > 新規追加」ページを見てみると、通常記事を入力する欄の下に「カスタムフィールドテンプレート」というタイトルと先ほど設定した内容が表示されています。
ここまででプラグインの設定は完了です。
テーマに表示項目を埋め込む
続いて、カスタムフィールドの項目を表示させるために、テーマを編集します。
今回は、TwentyFifteenテーマでの編集方法になります。
左メニューの「外観 > テーマの編集」で「content.php」を選択します。
1 2 3 4 |
the_content( sprintf( __( 'Continue reading %s', 'twentyfifteen' ), the_title( '<span class="screen-reader-text">', '</span>', false ) ) ); |
上記の部分が通常の記事が表示される部分になります。
今回は、その下にカスタムフィールドの項目を表示させてみます。
上記のコードのすぐ下に、下記のコードを追加します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<table> <thead> <tr> <th>項目</th> <th>内容</th> </tr> </thead> <tbody> <tr> <th>店舗名</th> <td><?php echo post_custom('Name'); ?></td> </tr> <tr> <th>住所</th> <td><?php echo post_custom('Address'); ?></td> </tr> <tr> <th>電話番号</th> <td><?php echo post_custom('Tel'); ?></td> </tr> </tbody> </table> |
これでテーマ側の準備が完了です。
各記事でデータを登録
最後に各記事のカスタムフィールド欄に内容を入力して、記事を公開します。
そして、該当記事を見てみると、先ほど入力した内容が表示されています。