WordPressのプラグイン「Advanced Custom Fields」を使って画像アップロード用のカスタムフィールドを用意しました。
その画像を表示させる際に、テキストなどと同じように
echo post_custom('[フィールド名]')
で表示してくれるのかと思いきや、そうではなかった。
上記だと、画像のIDのみが表示されるだけ。
最初「なんか・・・、数字・・・が出ているけど?」と、しばらく悩んでしまいました。
↓参考サイト
Advanced Custom Fieldsで画像の表示方法|wpのブログ
上記サイトでは画像ID取得にget_post_metaを使っていたんですが、せっかくpost_customを使ったところだったのでこちらを使うことにします。引数もひとつで済むし。
ということで、
post_customで画像IDを取得して、wp_get_attachment_imageで画像出力HTMLを取得する
という流れになります。
//画像IDの取得
$image_id = post_custom('[画像アップロードのカスタムフィールド名]');
//画像IDから画像を表示 $sizeに表示サイズを設定(デフォルトは'thumbnail')
echo wp_get_attachment_image($image_id, $size);
wp_get_attachment_imageの前にechoをつけるのをお忘れなく。この「取得」と「表示」の違いで、いつもミスをしてしまう・・・。

