wpのアイキャッチ画像のURLを取得する

ワードプレスのアイキャッチのURLを取得したい!画像のURLだけ欲しい!

 

ワードプレスのテンプレートタグはとても便利で恋をしそうな程です。しかし、ちょいと困ったことがあります。テンプレートというだけあって決まった動き・表示しかしないことです。

 

欲しいのは画像のURLだけなんだ!

アイキャッチ画像を表示する方法を以前ご紹介しましたが、「表示」は簡単なんです。
アイキャッチ画像表示のテンプレートタグ【the_post_thumbnail()】でimg のhtmlまで形成して出力してくれるもんだからテンプレートタグを埋め込むだけで終わりなんですよね。

アイキャッチの画像URLが欲しい

でも、欲しいのはURLなんです!

URLだけ取得するテンプレートタグ

テンプレートタグでアイキャッチのURLだけを取得する事は可能!
ついでに、PHPの関数を駆使して分かりやすくまとめる!

wpテンプレートタグとPHP関数

アイキャッチ画像の要素とその要素分割するPHP関数を使っちゃいます(`・ω・´)ゞ

テンプレートタグは「wp_get_attachment_image_src()」

ワードプレスのテンプレートタグは「wp_get_attachment_image_src()」を使います。
wp_get_attachment_image_src()のテンプレートタグは、画像の要素を配列で抜き出してくれます。

/*取得後の例【print_r()】*/
(
    [0] => http://www.promeshi.com/wp-content/***/***.jpg
    [1] => 200
    [2] => 200
    [3] => 
)

この時点で、配列0行目を指定してあげたら目的は果たされます。

ついでだから各値を変数に入れよう!list()

折角なので変数に各値を入れてあげましょう。

list( $src, $width, $height ) = $eye_img;

wp_get_attachment_image_srcで取得した画像の要素配列を各変数に代入します。

アイキャッチ画像のURLだけ取得する方法まとめ

上記のテンプレートタグとPHPの関数でアイキャッチ画像のURLを取得します。

/*アイキャッチの}IDを取得・画像は最大サイズを取得*/
$eye_img = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full' );
list( $src, $width, $height ) = $eye_img; 
echo $src;/*URLを出力*/
echo $width;/*幅pxを出力*/
echo $height ;/*高さpxを出力*/

アイキャッチのサイズを指定する

wp_get_attachment_image_src()で画像のサイズを指定する事が出来る
サムネイル:「thumbnail」
中サイズ:「midium」
大サイズ:「large」
フルサイズ:「full」

この方法でアイキャッチの画像URLを取得することが出来ます。
画像のURLを取得して何をするの?みたいなことは聞かないで。

出来ないより出来たほうがいいじゃない(`・ω・´)ゞ

投稿日: 2012/04/30
最終更新日: 2017/10/28
 
筆者のご紹介
角政典@moreiic
真性のお家大好きフリーランスです。プログラムよりご飯の方が断然好き!博多出身のデブデザイナー。インドアだけど遊んでくれる人募集中!
よく検索されてる記事