
WordPressの投稿画面の初期状態は「タイトル」と「本文」を書くところが用意されています。この他に追加された入力項目がカスタムフィールドです。
特に決まった項目はなくなんでも自由に記入したい!という場合には不要ですが、いつもこの内容を記入する(いつもじゃなくても何度か同じような内容の情報を入力することがある)場合にはカスタムフィールドはとても便利な機能です。
カスタムフィールドはどんな時に使うもの?
ブログのテーマによっては同じ情報を載せることもあり、毎回その項目を記入するのは手間です。入力する内容が決まっているようなサイトを作るなら、カスタムフィールドを使わない手はありません。
カスタムフィールドを使うメリットはこのようなことがあげられます。
- 決まった項目の入力の手間を省く
- 入力もれをなくせる
- 見た目が統一される
- 入力したデータを使って、並び替えや計算などができるため表示方法の幅が広がる
例えば商品を紹介するサイトの場合、「商品名・金額・メーカーやブランド・サイズ」など、決まった項目を載せるとしましょう。
そうすると毎回記事を書くたびに上記の項目名も手打ちしなくてはなりません。コピペでもいいのですが、そんなことせず変わる内容だけ入力して済むのであればそれがいいですよね。
本文に決まった項目内容を書いていると、長い文章になった時に特定の項目を探したり、別の投稿画面に入ってコピーして戻ってペーストして…というのは手間です。
またそこにスタイルを当てたい時はわざわざclassを追加したり、ショートコードを利用したりすることもあるかもしれません。
入力もれを減らすこともできます。項目が見やすくなることと、「必須項目」として設定することもできるので、空欄の場合は公開/更新できないようにすることができるからです。
カスタムフィールドで入力していけば、フィールドごとにclassをつけることで、そのような手間が省け、同じスタイルを間違えることなく適用できます。
入力の手間を省くだけでなく、その値によって「金額順に並び替える」「メーカーごとに出し分ける」といった表示のカスタマイズもカスタムフィールドならではです。
カスタムフィールドを使うには、WordPressに標準でついているカスタムフィールドを使う、プラグインを使う、機能を自作するといった方法があります。
【参照】カスタムフィールドの使い方 – サポートフォーラム – WordPress.org 日本語
WordPressの投稿機能についているカスタムフィールドを使う
カスタムフィールドを使う時は、投稿画面の設定とテンプレートファイルでカスタムフィールドを表示させる記述が必要です。
動作確認環境
- WordPressバージョン : 6.4.2
- 動作確認日 : 2024/01/15
投稿画面のカスタムフィールド表示と入力
カスタムフィールドを使う時は、投稿編集画面の【設定 > パネル】で表示をONにします。

ONにすると以下のような表示になります。そのままリロードしても問題なければ「ページを表示して、リロード」をクリック。コンテンツを修正したい場合は修正してリロードできる状態にしてから再度この画面でリロードします。

カスタムフィールド機能がONになると、編集画面の下にカスタムフィールドの入力欄が表示されます。

上記画像では「名前」の欄が「選択」となっていますが、これはすでに登録されているカスタムフィールドがある場合にこのように表示されます。
既存のフィールドではなく、新規でカスタムフィールドを作成したい場合は「新規追加」をクリックします。また選択にしたい場合は「キャンセル」をクリックすると選べるようになります。

「名前」と「値」を設定し、「カスタムフィールドを追加」をクリックすると投稿に入力したカスタムフィールドが追加されます。

テンプレートファイルで出力コードを記述
カスタムフィールドに入力したい内容を表示させるために、ファイルに出力コードを記述します。
今回は衣類の商品を投稿する、という内容でサンプルコードを作っています。
【値段を入力するカスタムフィールド】名前: product_price
【生地の素材を入力するカスタムフィールド】名前: fabric
<?php echo post_custom('カスタムフィールドの名前'); ?>
post_custom()
にカスタムフィールドの名前を指定することで、その値を出力することができます。
カスタムフィールドの設定内容を全て表示したい場合は the_meta()
を使用すると出力されます。
<?php the_meta(); ?>
値段を「1000」、素材を「綿100%」の値で入力した場合、 the_meta()
を使用して出力されるHTMLは以下のようなコードです。
<ul class="post-meta">
<li><span class="post-meta-key">product_price:</span> 1000</li>
<li><span class="post-meta-key">fabric:</span> 綿100%</li>
</ul>

get_post_meta()
関数でもカスタムフィールドの値が取得できます。
<?php
$price = get_post_meta($post->ID, 'product_price', true);
$fabric = get_post_meta($post->ID, 'fabric', true);
?>
<p>値段 : ¥<?php echo $price; ?></p>
<p>素材 : <?php echo $fabric; ?></p>
カスタムフィールド作成プラグイン
プラグインを使うとより簡単に便利なカスタムフィールドが作れます。
カスタムフィールドの種類もテキスト以外にチェックボックスやセレクト、画像や日付ピッカーなどさまざまなタイプが用意されてます。
入力する内容によってこういったフィールドタイプが簡単に生成されるので、テキスト以外の入力もほしい場合は特にプラグインを使用するのがおすすめです。
Advanced Custom Fields【ACF】
Advanced Custom Fields – WordPress プラグイン | WordPress.org 日本語

Advanced Custom Fields(以下ACF) はカスタムフィールド作成プラグインの中でも最もポピュラーで人気のプラグインです。
インストールして有効化するとすぐにカスタムフィールドが作成できます。高機能かつ操作が簡単でわかりやすく、迷っても情報量が多いので調べるとネット上で答えが見つけられます。
有料でしか使えない機能もありますが、無料で利用できる範囲も広いので、有料版を使わずできる範囲のことをするという選択肢もアリかと思います。
ACFの有料版料金はこちらをチェック
特にこだわりがなく、何を使っていいか分からないという場合はまずこのプラグインから試してみてください。
Meta Box は中級者〜上級者向けで、カスタムフィールドのプログラムを作るための関数を提供しているプラグインです。
インストールしただけではカスタムフィールドを作成することはできず、インストール後自分でカスタムフィールドプログラムを作る形になります。
Meta Box を使用するならPHPスキルは必須です。0からカスタムフィールドを開発するより簡単にカスタムフィールドを作成できるので、コードに慣れている方で細かい設定をしたい場合はとてもおすすめです。
【Meta Box のオンラインジェネレーター】Online Generator – Meta Box
全て無料で使えるわけではなく、利用したい機能によって価格が変わります。
Pricing – Meta Box
Meta Box の使い方の詳細はこちらの記事が参考になります。
WordPressのカスタムフィールドプラグイン MetaBoxの使い方 | Designup
Smart Custom Fields【SCF】

Smart Custom Fields(以下SCF) は シンプルで使いやすいカスタムフィールドプラグインです。ACF より使える機能は少なくなりますが、そこまで機能が必要なければこのプラグインでも十分です。
SCF の魅力はACFでは有料版にしないと使えない「繰り返しフィールド」が無料で利用できること。これを必須にしたい、そして無料で使いたいならSCFがおすすめでしたが、SCFは更新が数年ストップしており、最近のメジャーリリースWordPressバージョンでテストされていません。開発者の方からもクローズに向けて動く、というアナウンスがありました。
プラグインはサイトを重くしたり、予期しないエラーが出たりであまり使いたくない…という方もいるかと思います。かつて私もそう考えてできる限りプラグインは使わずに自作しようとしていました。これは自分や社内で運用するサイトならいいと思います。またそこまで複雑なフィールドを作らないのであればプラグインなしでも作りやすいとも思います。
【プラグインなしのカスタムフィールドづくりの参考】独自のカスタムフィールドを追加する方法。プラグインなしでオリジナルの入力項目を追加しよう [FIT BLOG-フィットブログ]
ただフリーランスでクライアントに納品するような形になったとき、コードの内容まで説明するのが難しかったり時間がなかったりで、わざわざ自作する必要あるかな…とも思うようになりました。
納品先にコードを解読して変更できたりする人がいれば問題ないかと思いますが、自作のコードは解読が難しいことがあります。
こういったことから「運用」していく面ではマイナスになると考えるようにもなりました。
何をどう使うかは考え方やその状況によって変わると思いますが、やっぱりプラグインは便利ですよね。
そしてカスタムフィールドもとても便利な機能なので、使いこなしていきましょう!
カテゴリー : WordPress