画像サイズはthumbnail, medium, large, fullに加えアイキャッチが有効な場合はpost-thumbnailを指定できます。 (その他にも任意の幅、高さを配列で指定することも可)
- 画像サイズ(ダッシュボード > 設定 > メディア)
- thumbnail
- medium
- large
- full
- 画像サイズ(アイキャッチ)
- post-thumbnail
アイキャッチのサイズはset_post_thumbnail_sizeで設定
- post-thumbnail
/**
* Eye Catch
*/
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 幅, 高さ );
the_post_thumbnail/get_the_post_thumbnailはアイキャッチ画像を取得します。
(the_post_thumbnailの第1引数の初期値はアイキャッチを表すpost-thumbnailです。)
ただWordPressは画像をアップロードした際にオリジナル画像(full)に加え、 設定 > メディアで設定したサイズ(thumbnail, medium, large)の画像を自動で作成します。
そのためアイキャッチ画像も他のアップロード画像と同じようにthe_post_thumbnail('thumbnail')で設定 > メディアで設定したサムネルサイズのアイキャッチ画像を取得しますがこのthumbnailという言葉はsmallという程度の意味でアイキャッチとは関係ありません。
// 例) 第1引数はpost_id、第2引数はpost-thumbnail, thumbnail, medium, large, fullまたは幅、高さの配列指定
// 第2初期値 post-thumbnail
echo get_the_post_thumbnail($post->ID, 'post-thumbnail');
// 例) 第1引数はpost-thumbnail, thumbnail, medium, large, fullまたは幅、高さの配列指定
// 第1引数初期値 post-thumbnail
the_post_thumbnail('post-thumbnail');
投稿に対して紐付いたアイキャッチ画像のattachement IDを取得します。
get_post_thumbnail_id
アイキャッチ画像のattachment_idからアイキャッチサイズの画像情報(幅、高さ、URL)は下記のように取得できます。
$eyecatch = wp_get_attachment_image_src($attachment_id, 'post-thumbnail');
下記例のようにwp_get_attachment_image_srcはアイキャッチ画像だけでなく、
メディア > 画像サイズで設定したサイズの画像情報も取得できます。
$post_thumbnail = wp_get_attachment_image_src($attachment_id, 'post-thumbnail'); // アイキャッチ
$small = wp_get_attachment_image_src($attachment_id, 'thumbnail'); // サムネイルサイズ
$large = wp_get_attachment_image_src($attachment_id, 'large'); // 大サイズ
wp_get_attachment_image_srcの第2引数の初期値はthumbailのため下記コードはアイキャッチ画像のサムネイルサイズの情報を取得します。
$small = wp_get_attachment_image_src($attachment_id); // サムネイルサイズ
// $small[0]はアイキャッチ画像のサムネイルサイズへのURL
// $small[1]はアイキャッチ画像のサムネイルサイズの幅
// $small[2]はアイキャッチ画像のサムネイルサイズの高さ
- 16:9
720x404/360x202