今回は「Advanced Custom Fields」というカスタムフィールドのプラグインを使った。
カスタムフィールドを使うと、例えばイベント情報や、名簿、書籍のような決まった項目を入力する必要がある場合など、
カスタムフィールドで項目を作って、投稿や固定ページにカスタムフィールドで作った項目を表示させると、とても便利。
ライターがたくさんいる場合など、記事に統一性を持たせたり。
管理画面で入力した項目を表示させるには、カスタムフィールドの位置の設定で、どのテンプレートにカスタムフィールドの入力項目を表示させるかを選択する。
以下は、「投稿タイプ」の「post」にカスタムフィールド の入力項目だすよって感じ。
投稿タイプ以外の項目はこんな感じ。
固定ページにも設置が可能。
カスタム投稿を使った記事にカスタムフィールドを設置したい場合は、
「投稿タイプ」を選んで「post」の部分で設置したカスタム投稿の「スラッグ名」を選ぶと良い。
カスタムフィールドを作って、記事作成部分で入力しただけでは表示されず。
記事を表示させるテンプレート(一覧(archive.phpなど)や詳細(single.phpなど)のテンプレート)の表示したい箇所に、項目ごとに以下のように記載する必要がある。
<?php the_field('フィールド名'); ?>
カスタムフィールドに長文の内容を記載した場合、その詳細ページの一覧部分などで見栄えを調整するために、抜粋表示にしたい場合などは以下のようにする。
50のところが表示文字数で、 '...'が後ろに表示するテキスト。他には、'もっと見る'のような表記にすることも可能。
<?php
$text = mb_substr(get_field('フィールド名'),0,50);
echo $text.'...';
?>
投稿ページ用のカスタムフィールドを、header.phpや特定の固定ページなどの表示したい場合は、<?php the_field('フィールド名'); ?>だと表示できないが、以下のように投稿IDを入れてあげると表示させられる。
<?php the_field('フィールド名', 43); ?>