p05:カスタムフィールド作成「Advanced Custom Fields」ver6以降
フィールドグループ作成
画面上部「+新規追加」をクリックします。

「新規フィールドグループを追加」の入力欄にグループ名を入力して「Save Changes」をクリックします。

フィールド作成:入力・選択項目の作成
フィールドを使って入力欄や選択項目を作成します。

General
画面上部「General」を選択して、項目の名前や識別子を指定します。
フィールドタイプ:項目の種類を選択
- 基本
- テキスト
- テキストエリア
- 番号
- 範囲
- メール
- URL
- パスワード
- コンテンツ
- 画像
- ファイル
- Wysiwyg エディタ
- oEmbed
- 選択肢
- 選択
- チェックボックス
- ラジオボタン
- ボタングループ
- 真 / 偽
- 関連
- リンク
- 投稿オブジェクト
- ページリンク
- 関係
- タクソノミー
- ユーザー
- jQuery
- Googleマップ
- 日付選択ツール
- 日時選択ツール
- 時間選択ツール
- カラーピッカー
- レイアウト
- メッセージ
- アコーディオン
- タブ
- グループ
フィールドラベル
編集ページ表示される名前を入力します。全角文字で入力して構いません。

フィールド名
テンプレートで表示・取得する際に使用する名前を入力します。半角英数とアンダースコアを使って名前をつけます(ダッシュも使用可)。スペースは使えません。

初期値
新しくページを作成した際、最初から入力されている値を指定します。

Validation
画面上部「Validation」を選択し、項目の入力・選択ルールを指定します。
フィールドタイプによってルール画面が異なります。
フィールドタイプ「テキスト」の場合は「Required」で必須項目の選択と「文字数制限」を指定できます。

Presentetion
画面上部「Presentetion」を使いやすくするための補助項目を指定します。
フィールドタイプによって画面構成が異なります。
フィールドタイプ「テキスト」の場合は「手順」に説明文、「プレースホルダーテキスト」「先頭に追加」「追加(後に追加)」「ラッパー属性」を指定できます。

条件判定
画面上部「条件判定」を使うと項目の表示条件を指定できます。
通常は他のカスタムフィールドの値と組み合わせて条件を指定します。

今回は「条件判定」を「OFF」にします。条件判定が「ON」の場合、カスタムフィールドが表示されない可能性があるので注意!

フィールド追加:入力・選択項目の追加
項目を追加したい場合は画面右上「+ Add Field」もしくは項目編集パネル右下「+ Add Field」をクリックします。

チェックボックスを追加
作品に使用したスキル用のチェックボックスを作成します。
General
画面上部「General」を選択して、項目の名前や識別子を指定します。

Validation
画面上部「Validation」を選択し、項目の入力・選択ルールを指定します。
フィールドタイプ「チェックボックス」の場合は「Required」で必須項目の選択と「Allow Custom Values」で項目の追加許可を指定できます。

Presentetion
画面上部「Presentetion」を使いやすくするための補助項目を指定します。
フィールドタイプ「テキスト」の場合は「チェックボックス」に説明文、「レイアウト」でチェックボックスの表示等を指定できます。

条件判定
画面上部「条件判定」を使うと項目の表示条件を指定できます。
通常は他のカスタムフィールドの値と組み合わせて条件を指定します。

今回は「条件判定」を「OFF」にします。条件判定が「ON」の場合、カスタムフィールドが表示されない可能性があるので注意!

設定
カスタムフィールドを表示する条件を指定します。
以下の条件の場合は「すべての投稿編集画面」にカスタムフィールドが表示されます。

保存
画面右上「Save Changes」をクリックして設定を保存します。

カスタムフィールドの確認
「投稿」の編集画面にカスタムフィールドが表示されます。

カスタムフィールドを入力・選択して更新します。

テーマで出力
下記コードをループ内に記述してカスタムフィールド値を出力します。
<?php if(get_field('フィールド名')): ?>
<p><?php the_field('フィールド名'); ?></p>
<?php endif; ?>
今回はループ内に以下のコードを記述して作品名を出力します。
<?php if (get_field('work_name')) : ?>
<p><?php the_field('work_name'); ?></p>
<?php endif; ?>

チェックボックスを出力します。
<?php if (get_field('skill')) : ?>
<p><?php the_field('skill'); ?></p>
<?php endif; ?>

配列を利用して出力する場合は以下のコードになります。
<?php
if (get_field('skill')) :
$skill_array = get_field('skill');
?>
<ul>
<?php foreach ($skill_array as $value) : ?>
<li><?php echo esc_html($value); ?></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
