ACFのチェックボックス機能で、ラベルのリスト一覧を表示
ACFのチェックボックスは、複数選択が可能です。今回は、チェックしたラベルのリスト一覧を表示する方法を紹介します。
今回のDEMOは、アレルゲンの一覧表示です。
7大アレルゲンの内、5つを「、」区切りで表示しています。チェックボックスにチェックを入れたものだけ、指定の場所に表示されるようにしています。
ACF設定
ACFの表示したいフィールドグループにチェックボックスフィールドを作成します。編集画面に表示する、フィールドラベル、PHPに入力するフィールド名を指定します。選択肢に値とラベルを : で区切り入力します。1つごとに改行し、7つの選択肢を作成します。戻り値はラベルにします。
選択肢に値とラベルを : で区切り、7つの選択肢を作成
設定項目 | 設定値 |
---|---|
フィールドタイプ | チェックボックス |
フィールドラベル | アレルゲンリスト |
フィールド名 | add_allergenlist |
選択肢 | milk : 乳 egg : 卵 wheat : 小麦 shrimp : えび crab : かに peanut : 落花生 soba : そば |
初期値 | 空欄 |
戻り値 | ラベル |
コード
表示したいシングルページのループ内に下記コードを入力します。
<?php
$add_allergen = get_field('add_allergenlist');
foreach ($add_allergen as $key => $allergen){
echo $allergen;
if ($allergen !== end($add_allergen)){
echo '、';
}
}
?>
設置
編集画面の下にアレルゲンリストのチェックボックスが表示されます。今回は卵、乳、小麦、えび、落花生にチェックを入れました。
卵、乳、小麦、えび、落花生にチェック
以上で、今回の説明は終了です。7大アレルゲンなど、決まったリストを表示する場合、チェックボックでの表示が簡単ですね。また、ページごとに、表記やレイアウトのズレがなくなるので、テンプレートにすると便利です。