概要
get_the_post_thumbnail関数は、 WordPressの投稿やページに設定されたアイキャッチ画像を取得し、そのHTMLテキストを出力するために使用される便利な関数です。この関数は特に、テーマやプラグインの開発において、コンテンツが視覚的に魅力的になるようにアイキャッチ画像を表示する際に役立ちます。具体的には以下のような場面でよく使われます。
- 投稿一覧ページでアイキャッチ画像を表示する
- 固定ページにアイキャッチ画像を埋め込む
- ウィジェット内で投稿のアイキャッチ画像を表示する
- カスタム投稿タイプでアイキャッチ画像を利用する
- ギャラリーやスライダーにアイキャッチ画像を使用する
- テーマのカスタマイザーでアイキャッチ画像を設定する
- ブログの個別投稿ページでアイキャッチ画像を表示する
- アーカイブページでアイキャッチ画像を用いる
構文
get_the_post_thumbnail( $post_id = null, $size = 'post-thumbnail', $attr = '' );
パラメータ
$post_id(int|WP_Post) : 取得したい投稿のID。指定しない場合は現在の投稿が使用されます。$size(string|array) : 表示する画像サイズ。デフォルトは ‘post-thumbnail’ です。$attr(string) : 画像に追加するHTML属性。例: ‘class=”custom-class”‘。
戻り値
- 成功した場合は、アイキャッチ画像のHTMLテキストを返します。失敗した場合は、空の文字列を返します。
関連する関数
使用可能なバージョン
get_the_post_thumbnailはWordPress 3.0.0から利用可能です。
コアファイルのパス
wp-includes/post-thumbnail-template.php
この関数のアクションでの使用可能性
| アクション | 使用例 |
|---|---|
| mu_plugin_loaded | |
| registered_post_type | |
| plugins_loaded | |
| wp_roles_init | |
| setup_theme | |
| after_setup_theme | |
| set_current_user | |
| init | |
| register_sidebar | |
| wp_loaded | |
| send_headers | |
| parse_query | |
| pre_get_posts | |
| wp | |
| template_redirect | |
| get_header | |
| wp_head |
サンプルコード
サンプル1: アイキャッチ画像を表示する基本的な例
if ( has_post_thumbnail() ) {
the_post_thumbnail();
}
このコードは、現在の投稿にアイキャッチ画像が設定されている場合、その画像を表示します。
サンプル2: カスタムサイズのアイキャッチ画像を表示する
if ( has_post_thumbnail() ) {
echo get_the_post_thumbnail( null, 'medium' );
}
このコードは、アイキャッチ画像を ‘medium’ サイズで表示します。
サンプル3: 画像にクラスを追加する
if ( has_post_thumbnail() ) {
echo get_the_post_thumbnail( null, 'large', array( 'class' => 'custom-class' ) );
}
アイキャッチ画像に custom-class クラスを追加して表示します。
サンプル4: 特定の投稿のアイキャッチ画像を表示
$post_id = 42;
echo get_the_post_thumbnail( $post_id );
このコードは、投稿ID 42のアイキャッチ画像を表示します。
サンプル5: アイキャッチ画像がない場合のフォールバック
if ( has_post_thumbnail() ) {
echo get_the_post_thumbnail();
} else {
echo '<img src="fallback-image.jpg" alt="Fallback Image" />';
}
アイキャッチ画像がない場合、代わりにフォールバック画像を表示するサンプルコードです。