カスタムフィールドの値の有無で表示を切り替える方法
カスタムフィールドの値があるときに表示させるコード、そしてカスタムフィールドの値が空の時に表示させるコード、それらを振り分けて出力します。
たとえば画像を表示させるため、カスタムフィールドに画像URLを入力する必要のある、こういったコードがあったとして…
<div class=“img-wrap”> <img src="カスタムフィールドの値"> </div>
画像URLがない場合(空欄の場合)、この様な意味のないコードが残ってしまいます。
<div class=“img-wrap”> <img src=""> </div>
それを避けるため、以下のようにします。
<?php $value = get_post_meta($post->ID, 'カスタムフィールド名', true);?> <?php if(empty($value)):?> <!--★ここは空欄だった場合に表示されます(空でOK)。--> <?php else:?> <!--●値が有る場合に表示されます。--> <div class=“img-wrap”> <img src="<?php echo post_custom('カスタムフィールド名');?>"> </div> <?php endif;?>
$value の値が空の場合(emptyの場合) 、★部分を返します。
それ以外(値が空じゃない場合)は、●部分を返します。
適宜、条件分岐を変えてみたりして利用して下さい。