カスタムフィールドにアップした画像の特定のサムネイルサイズのURLを出す方法
カスタムフィールドにアップした画像の特定のサムネイルサイズのURLを表示する方法のメモ
アイキャッチじゃなくてカスタムフィールドの画像を一覧(リスト)に出したい時が有るのさ
基本的にお客さんは写真の加工が出来ない人が多いので、撮った写真や自前の画像をそのままUPする事が多い。
アイキャッチに登録したら大・中・小に自動で切り取られたいい感じの画像が出るんですが、カスタムフィールドに入れた画像をリストに出す時にどうやって縦横比を保ったまま任意のサイズでいい感じにするか謎でした。
が、調べてみるとどうやらカスタムフィールドに画像をアップした時も、大・中・小とfunction.phpにadd_image_sizeで設定した任意のサイズの画像が生成されるようなんです。
アイキャッチに登録した時だけかと思ってました・・・。
という事で、生成されるんなら取れるなと思いさらに調べたらありました!wp_get_attachment_image_srcのパラメータに任意のサイズを指定可能でした。
例えば
add_image_sizeにブログ用のサムネイル画像を指定したとします。
// function.php
add_image_size( 'blog-size',200, 150, true );
とすると、以後アイキャッチに登録したらblog-sizeという200x150のサイズもいい感じに作られます。
で、カスタムフィールドに登録した画像のこのサイズのアイキャッチ画像URLを呼び出すのは以下のコード。カスタムフィールド名は「blog-photo1」とします。
ID, 'blog-photo1', true); $thumb = wp_get_attachment_image_src($img,'blog-size'); echo $thumb[0];?>
wp_get_attachment_image_srcの第2パラメータに抜き出したいアイキャッチの名前を入れてやればOK!これで該当のアイキャッチサイズの画像URLが出てきます。
まぁ、ぶっちゃけ別にリスト用の画像はアイキャッチに入れてねっていう対応でもOKなんですが^^;
SPONCERD
コメントはまだありません