SmartCustomFiledsは繰り返しフィールドが使えることで、結構重宝され使用している方も多いのではないでしょうか?
私も何気に最初は AdvanceCustomFileds を使用していましたが、繰り返しフィールドをどうしても使いたい時はこちらを利用しています。
でも、以外に出力関係とかある様でなかったりあっても小難しいPHP文だったりで、分かりづらかったりします。
ちなみに私は、あまりPHPには強くありませんw
自分がやりたい事に対して、やりたい事を実行するために色々調べて実行します(汗
なので、このブログにも健忘録として色々記載しています。
で、本題になりますが、今回は、項目に入力した値があった時に表示することはもちろんですが、もしもなかった時に何も表示しないとか。。。
調べてみると以外になかったので健忘録として載せておきます。
同じく困っている方がいましたら、ぜひ参考にどうぞ♪
<?php $text_filed = get_post_meta($post->ID, 'カスタムフィールドで設定した名前', true);?> <?php if(empty($text_filed)):?> ※ここには入力項目に値が無かった時に表示される <?php else:?> <?php echo post_custom('カスタムフィールドで設定した名前');?> ← 入力した項目が表示されるタグ。 <?php endif;?>
で、もしも、値に何か入力したものがあり、入力しなかったときは何も表示されないようにするときは。。。
<?php $text_filed = get_post_meta($post->ID, 'カスタムフィールドで設定した名前', true);?> <?php if(empty($text_filed)):?><?php else:?> <?php echo post_custom('カスタムフィールドで設定した名前');?> ← 入力した項目が表示されるタグ。 <?php endif;?>
単純に、「※ここには入力項目に値が無かった時に表示される」の所回りを空欄に省略してしまいましょう。
こうやって分離すると、入力した値がある場合に出力されるタグの所に直接ブロック要素など装飾することも可能ですね。
<?php $text_filed = get_post_meta($post->ID, 'カスタムフィールドで設定した名前', true);?> <?php if(empty($text_filed)):?><?php else:?> <div class="sample"><?php echo post_custom('カスタムフィールドで設定した名前');?></div> ← 入力した項目が表示されるタグ。 <?php endif;?>
とかみたいに div で囲ってクラスを付ければいつも通りに装飾することが出来るとか。。。
どうぞご参考に( `ー´)ノ