メタデータを追加するためのWordPressカスタムフィールドの作成方法

WordPressには、投稿にメタデータを追加するためのカスタムフィールド機能があります。これには、投稿の期限やその日の天気などの情報を含めることができます。ここでは、カスタムフィールドを活用して投稿の機能性を向上させる方法を示します。
目次
- ブロックエディタでカスタムフィールドを有効にする
- カスタムフィールドの名前と値を設定する
- WordPressテーマにカスタムフィールドを表示する
- プラグインを使用してWordPressカスタムフィールドを追加する
ブロックエディタでカスタムフィールドを有効にする
クラシックエディタをまだ使用している場合、カスタムフィールドセクションはデフォルトで有効です。テキストエディタセクションの下に見つけられるはずです。
ブロックエディタ(グーテンベルク)では、カスタムフィールドのセクションはデフォルトで無効になっていますが、簡単に有効にできます。画面の右上隅にある三つの点をクリックしてください。

表示されるドロップダウンメニューで、下部の設定を選択します。設定したWordPressの言語によっては、オプションと表示されることもあります。

パネルセクションで、カスタムフィールドオプションをオンにします。これにより、ページのリロードを求められますので、保存されていない作業を必ず保存してから実行してください。

新しいカスタムフィールドセクションが投稿の下に現れます。

カスタムフィールドを追加し始めると、最大30フィールドしか表示されません。さらに追加することは可能ですが、ドロップダウンリストには表示されません。
ダミアンは、デフォルトで表示されるWordPressカスタムフィールドを増やす方法を示しました。この調整により、メニューリストが最大120に増加します。記事にリンクをクリックしても良いですし、簡単な要約も以下に示します。
WordPressバックエンドの外観 -> エディタに移動し、functions.phpファイルを探します。次のコードをファイルの最後に追加します。
function increase_postmeta_form_limit(){
return120;
}
add_filter('postmeta_form_limit','increase_postmeta_form_limit');変更を保存した後、WordPressバックエンドページをリフレッシュすると、メニュー内のカスタムフィールドの数が120に増加します。
カスタムフィールドの名前と値を設定する
カスタムフィールドには、読みたい最新の本を含む何でも追加できます。その日の天気や、自分の気分など、投稿に必要な情報を自由に追加できます。今回は、私が今日どのように感じているかを追加してみましょう。新しい作成をクリックして始めてください。
名前セクションには、追加したい内容のタイトルを追加します。以下のようなものが考えられます:
- 今日の気分はどうですか?
- 今日読んでいる本。
- 今日聴いている音楽は?
ご想像の通りです。
値セクションには、答えを入力します。私の気分フィールドの場合、「悪くはなかった。少し気分が沈んでいたが、OK。」と言いました。カスタムフィールドは投稿ごとに設定されるため、一つの投稿に入力した内容は他の投稿には表示されません。
また、名前セクションには質問である必要はありません。投稿の冒頭や最後に置きたい標準的なテキストでも構いません。たとえば、各投稿にアフィリエイトの免責事項メッセージを入れたい場合や、スポンサー付きの投稿であることを示すことも出来ます。可能性は無限です。
注意:コードを介してカスタムフィールドを簡単に取得できるようにするために、名前は短く、小文字のみにし、スペースは避けるのがベストです。スペースはアンダースコア(_)でリンクします。たとえば、「Posts to Redirect」ではなく「posts_to_redirect」を使用します。
必要な情報を入力したら、カスタムフィールドを追加をクリックして保存します。フィールドの最小文字数や最大文字数の制限はないようですが、ページ上の見た目を考慮するために、あまり長くならないようにしましょう。簡潔さが重要です。
WordPressテーマにカスタムフィールドを表示する
残念ながら、これだけではWordPressのカスタムフィールドを機能させるには足りません。次は、それをページに表示させる必要があります。
WordPressテーマにカスタムフィールドを表示する簡単な方法はありません。テーマにいくつかのPHPコードを挿入しなければなりません。
表示させたいファイルに、以下のコードを使用します:
$custom_field= get_post_meta($post_id,'custom-field-name',true)
echo$custom_field;注意すべき点は以下の通りです:
$post_idは、カスタムフィールドを取得したい投稿の投稿IDです。custom-field-nameは、特定のカスタムフィールドに使用した名前です。
さらに多くの情報はこちらから取得できます。
ヒント:メタデータをテーマに追加する簡単な手法を好む場合は、ショートコードを使用してみてください。
プラグインを使用してWordPressカスタムフィールドを追加する
WordPressのインストールファイルを改造するのが面倒に感じるなら、プラグインを使用する選択肢があります。WordPressカスタムフィールドに最もお勧めのプラグインは、Advanced Custom Fieldsです。

ACFはフィールドグループの概念を使用しています。これらのグループには、特定のエリア(投稿、ページ、カスタム投稿タイプなど)に追加したいカスタムフィールドが含まれています。各グループ内でフィールドタイプ、ラベル、および特定の設定を定義します。
開発者はACFのフィールドタイプと機能を使用して、強力なカスタム機能を構築できます。
Advanced Custom Fieldsのインストール方法
プラグインをインストールしたら、WordPressのインストールの左側のサイドバーにあるACFの設定ページに移動します。

フィールドグループ -> 新規作成に移動します。ここで、フィールドグループに名前を付けます。フィールドを追加ボタンをクリックし、オプションから希望するフィールドタイプを選択します。各フィールドタイプには、更にカスタマイズするための設定があります。

フィールドグループを構築したら、変更を保存をクリックして保存します。今後、そのグループに割り当てられた投稿やページを編集すると、作成したカスタムフィールドが表示されます。

指定された投稿タイプに移動すると、カスタムフィールドが下に表示されます。テキストフィールドに希望の値を入力してください。

ACFは、良好な範囲のフィールドタイプを含む無料バージョンを提供しています。ACF Proにアップグレードすると、フィールドグループの複数インスタンスを追加するリピーターフィールドや、柔軟なコンテンツレイアウトといったさらなる機能がアンロックされます。
すべてのスクリーンショットはMark O’Neillによるものです