みなさんこんにちは。
今回はスマートカスタムフィールドを使用して、繰り返し処理を行う場合に、
入力がなかったら(値が空だったら)投稿を表示せず、代わりの文章を表示するという処理をご紹介します。
以前も同じようなことやった気がしたのですが、あのときは画像のループがあって
それをキーに対応していたので、画像がない場合のパターンも備忘録として残しておこうと思います。
では早速ソースから!
今回は
グループ名:entryWrap
タイトル項目名:entry_item
タイトル説明文:entry_txt
ってい感じでカスタムフィールドを作成しています。
処理としては『タイトル項目名(entry_item)』に入力がなければ、表示しない
っていう書き方をしています。
<?php $Adopt = SCF::get('entryWrap'); //ループの指定 ?> <?php if($post->entry_item){ ;?> //もしentry_itemが投稿されてたら <p> <?php the_content(); ?> </p> <?php foreach ($entryWrap as $fields ) { ;?> //ここから通常のループ処理 <dl class="flexbox fw"> <dt> <?php echo $fields['entry_item'] ;?> </dt> <dd> <?php echo nl2br( $fields['entry_txt']) ;?> </dd> </dl> <?php } } else { ?>//それ以外は <p class="notEntry">誠に申し訳ございませんが、現在投稿はございません。</p> <?php }; ?>
という感じです!
簡単ですね~★
みなさんもぜひ試してください!