Custom Field Suiteで、初めてカスタムフィールドを使ったのでその使い方まとめ
この前リデザインしたサイトに初めてカスタムフィールドを使ってみました。なんかすごく苦戦しましたのでまとめ。
サイトとしては大学内の活動の紹介サイトで、イベントを告知する場でもあります。
トップに最新のイベントや過去のイベントのレポートを置こうっていう形で、イベントの詳細で開催場所とか時間とかって情報が見られる作りなんですが、その辺の情報って毎回入れるし、カスタムフィールドでやってみようと思って使ってみました。さらに、テンプレート作っておいて情報入れるって形がいいよねって思ったので、プラグインのCustom Field Suiteを使ってみました。簡単とか使いやすいって聞いたので。
準備:プラグイン側
プラグインをインストールして有効化した後、プラグインの設定をします。
![](https://i1.wp.com/peng-note.com/images/2014/07/f62b3ca63462335f423e1c975bf0386f.png?fit=330%2C174)
管理画面のサイドバーにフィールドグループっていう項目ができるので、そこから設定画面にいけます。
![スクリーンショット 2014-07-22 12.35.46](https://i0.wp.com/peng-note.com/images/2014/07/7f91ed2a050c9dcd20b6c9c094a315f6.png?fit=361%2C400)
フィールドグループを新規作成して、画像のように項目を作っていきます。
名前のところは「getで取得するから英数で!」みたいな表示が出るので従って英語で書いていると、出力した時にラベルではなく英語の方がバーっと出てしまって… この辺でまず悩んでました。
無視して日本語で入れたら引っかかることなく普通に表示されたんですよね…
どういうことなのこれ…
あとは配置ルールを設定して完了です。
今回はイベントの情報の投稿でのみ表示して欲しかったので、
- 投稿タイプにpost
- 分類にcategory(イベント)
を設定しました。
準備:コード側
やりたいことに合わせて以下のコードをループ内に入れると表示できるようです。
シングルページでのカスタムフィールドの全内容の出力は、
the_meta();
で出力されました。
トップページのイベント情報に開催日だけっていうのは、
<?php
$key="開催日";
echo get_post_meta($post->ID, $key, true);
?>
って出力したい場所に書けば出力されました。
使い方:投稿
さっき設定したカテゴリにチェックを入れて一旦下書き保存します。
するとカスタムフィールドがドドンと出てくるので項目を埋めて投稿すれば完了です。
これで次回からもう少し楽に出来るかな〜?