• いつもお世話になっております。

    custom field template を利用して
    チェックボックスで複数選択できる項目を作り、
    チェックが入っている項目を任意の場所に表示させたいと考えているのですが、
    どのように出力していいのかご教授いただけないでしょうか。

    たとえば、

    ■ 月曜日8時〜9時
    ■ 月曜日10時〜12時
    □ 月曜日13時〜14時

    というようなチェックボックスをつくって
    ■がチェック入っている状態だとしたら

           │ 月曜日
    ーーーーーーーーーーーーーーーーー
    8時〜9時   │  ●
    10時〜12時  │ ●
    13時〜14時 │ ✕

    ・・・みたいな感じで出力したいのです。

    自分でも調べてやってみたのですが
    どうしてもチェックした片方だけは出力できるものの、
    2つめ以降は出力できません。

    <?php if(get_post_meta($post->ID,'タイムテーブル',true) == '月曜日8時〜9時 '): ?>
    ●
    <?php else : ?>
    空欄
    <?php endif; ?>
    
    <?php if(get_post_meta($post->ID,'タイムテーブル',true) == '月曜日10時〜12時 '): ?>
    ●
    <?php else : ?>
    空欄
    <?php endif; ?>

    これだと月曜日8時〜9時だけ表示されて下は表示ができません。

    どのように記述すると複数の値を出力できるようになるでしょうか。
    お手数をおかけしますが、ご教授いただければと思います。
    どうぞよろしくおねがいします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • フィールド「タイムテーブル」に複数の値が入っている場合

    <?php $timetable = get_post_meta($post->ID,'タイムテーブル',false); ?>

    と配列で取得して

    判定は

    <?php if(in_array('月曜日8時〜9時 ',$timetable)): ?>
    ●
    <?php else : ?>
    空欄
    <?php endif; ?>
    
    <?php if(in_array('月曜日10時〜12時 ',$timetable)): ?>
    ●
    <?php else : ?>
    空欄
    <?php endif; ?>

    かな。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「custom field template 1つのフィールドに複数の値がある場合の出力方法」には新たに返信することはできません。