このような疑問にお答えします!
<目次>
【Smart Custom Fields】繰り返し機能で画像を表示する方法
Smart Custom Fieldsの『繰り返し機能』を使用して画像を表示させるためのコードは下記のとおり。
<?php $fields = SCF::get('グループ名'); ?>
<!-- 繰り返し -->
<?php foreach($fields as $field): ?>
<?php if($field['名前']): ?>
<img src="<?php echo wp_get_attachment_url($field['名前']); ?>" alt="">
<?php else: ?>
<img src="<?php echo esc_url(get_theme_file_uri('img/dummy.jpg')); ?>" alt="">
<?php endif; ?>
<?php endforeach; ?>
<!-- / 繰り返し -->
『wp_get_attachment_url』と『wp_get_attachment_image_src』の違い
『wp_get_attachment_url』と『wp_get_attachment_image_src』の違いは下記のとおり。
wp_get_attachment_url | 画像IDを指定するだけで、通常のimgタグと同じイメージ |
wp_get_attachment_image_src | 登録した画像のパスやサイズを配列で返す 第2引数に画像のサイズを設定できる (初期値: thumbnail) |
『wp_get_attachment_image_src』と『繰り返し機能』を使用して画像を表示さるためのコードは下記のとおり。
<?php $fields = SCF::get('グループ名'); ?>
<!-- 繰り返し -->
<?php foreach($fields as $field): ?>
<?php if($field['名前']): ?>
<?php $image = wp_get_attachment_image_src($field['名前'] , '画像の大きさ'); ?>
<!-- 画像の大きさ = thumbnail, medium, large, full -->
<img src="<?php echo $image[0]; ?>" alt="">
<!--
[0]:url(画像のurl)
[1]:width(画像の横幅)
[2]:height(画像の高さ)
-->
<?php else: ?>
<img src="<?php echo esc_url(get_theme_file_uri('img/dummy.jpg')); ?>" alt="">
<?php endif; ?>
<?php endforeach; ?>
<!-- / 繰り返し -->
『wp_get_attachment_url』に比べて一手間かかります。
どちらのコードを使うか迷う方は、思考停止で記述量の少ない『wp_get_attachment_url』を使用し、画像のサイズはcssで変更すればよいかと。