画像の投稿がない時の振り分け
wordressカスタムフィールドで画像の投稿があった場合となかった場合での振り分けです、
カスタムフィールドの作成には、Advanced Custom Fieldsを使用しています。
Advanced Custom Fields
PHP
<div class="img_box"> <?php $no_img = "/img/common/no_img.jpg"; ?>
<!-- イメージファイルを格納 -->
<img src="<?php if (post_custom('thumbnail')) : ?>
<?php the_field('thumbnail'); ?>
<?php else : ?>
<?php echo get_template_directory_uri(); ?>
<?php echo ($no_img); ?><?php endif; ?>" alt="">
<!-- もしthumbnailが空だった場合、格納したイメージファイルを挿入する -->
</div>
if文で振り分ける
管理画面 カスタムフィールド内
今回はカスタムフィールドの返り値を「画像URL」にしています。URLだけ出力したい時に便利です。
ここであらかじめ、イメージ挿入が無かった場合に表示するイメージファイルを格納しておきます。
imgタグ内部
<?php if (post_custom('thumbnail')) : ?>
<!-- もしthumbnailに画像挿入があったら -->
<?php the_field('thumbnail'); ?>
<!-- thumbnailを取得 -->
<?php else : ?>
<!-- もし値が空だったら -->
<?php echo get_template_directory_uri(); ?>
<!-- get_template_directory_uriでテンプレートディレクトリのURIを取得する -->
<?php echo ($no_img); ?>
<!-- 格納していたイメージファイルを挿入 -->
<?php endif; ?>