投稿の中から「真/偽」チェックボックスにチェックした記事を表示する方法です。
準備
チェックボックスは、プラグイン「Advanced Custom Fields」を利用して投稿画面に設置します。
フィールドタイプは「真/偽」とする。
メッセージに分かりやすい文言を入力していると投稿画面での表示が分かりやすくなります。
その他はデフォルト状態でOK。
テンプレート側のソースコード
1 |
array('key'=>'【フィールド名】', 'value'=>'1', 'compare'=>'=') |
【フィールド名】には、カスタムフィールドのKeyを入力。
「value」が、『0』はチェックボックスにチェックが入っていない場合、『1』はチェックボックスにチェックが入っている場合となります。
今回はチェックボックにチェックが入っているものを表示したいので『1』となります。
これを実際の query posts で書いてみると以下のようになります。
1 2 3 4 5 6 7 8 9 |
<?php $args = array( 'posts_per_page' => 100, 'meta_query' => array( array('key'=>'【フィールド名】', 'value'=>'1', 'compare'=>'=') ), ); ?> |
ポイント
「Advanced Custom Fields」のフィールドタイプは「チェックボックス」でなくて「真/偽」にする。
おまけ
チェックを入れた投稿記事にCSSを付与しデザインを変える
「Advanced Custom Fields」のテキストフィールドの出力と同じです。
値があった時にクラス名を出力するかたちです。
1 |
id="<?php $text = get_field('【フィールド名】'); if( $text ){ echo '【出力したいtxt】'; }?>" |