Wordpressのカスタムフィールドで「繰り返し(グループ)機能」が標準装備のプラグインSmart Custom Fieldsで下記のグループを作りました。
・グループ名=hoge
・項目1=h3(テキスト)
・項目2=image(画像)
・項目3=p(テキスト)
画像表示については作者キタジマタカシさんの2015年2月10日 at 10:06のコメント
>Smart Custom Fields では、画像・ファイルフィールドはURLではなくIDを返します。
>IDから画像のURLを取得するには wp_attachment_url や wp_attachment_image_src を
>使用してください。
を参考にして、テンプレートファイルの<?php the_content(); ?>の下にこのように記入したところ
<?php $repeat_group = SCF::get( 'hoge' ); foreach ( $repeat_group as $fields ) { ?> <h3><?php echo $fields['h3']; ?></h3> <figure> <?php $image = get_post_meta($post->ID, 'image', true); echo wp_get_attachment_image($image, 'medium');?> </figure> <p><?php echo $fields['p']; ?></p> <?php } ?>
テキストはループ処理されましたが、画像はすべてのグループに1枚目の画像が表示されました。
また、「wp_attachment_image_src」ではURL(文字列)が表示されますが、こちらも同様に一枚目のみです。
なお、画像部分をテキストと同じ形式<?php echo $fields['image']; ?>と書くと画像のID番号が表示されますが、foreach文は「$fields」を条件にしているため、このID番号は各画像の固有番号です。
このforeachの条件の部分を修正すると画像も表示されそうな気がしているのですが、自力では解決できず、よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/07 09:58