概要
wp_get_attachment_image_src
関数は、指定された添付ファイルの画像情報(URL、幅、高さ、およびその画像がサイズに合っているかどうかのフラグなど)を取得するために使用されます。この関数は、特に以下のような機能を実装する際によく利用されます。
- 投稿やページに関連付けられた画像を表示する。
- ギャラリー機能を持つプラグインで画像データを取得する。
- カスタム投稿タイプの添付画像を処理する。
- サムネイル画像を表示するテンプレートを作成する。
- 画像の条件付き表示を行う。
- ビジュアルエディタのカスタマイズを行う際の画像取得。
- 商品ページで商品画像を表示するEコマース機能。
- ウェブサイトのカスタムウィジェットに画像を挿入する。
構文
$array = wp_get_attachment_image_src( $attachment_id, $size, $icon );
パラメータ
$attachment_id
(整数): 取得したい添付ファイルのID。$size
(文字列または配列): 画像サイズ(例: ‘thumbnail’, ‘medium’, ‘large’, ‘full’)。サイズが配列の場合は幅と高さを指定できます。$icon
(ブール): アイコンとして表示するかどうか。デフォルトはfalse
。
戻り値
配列(URL、幅、高さ、およびサイズに合っているかどうかのフラグ)。ファイルが見つからなかった場合は false
を返します。
関連する関数
使用可能なバージョン
この関数は、WordPress 2.9.0以降で利用可能です。
コアファイルのパス
wp-includes/media.php
サンプルコード
サンプルコード1
$attachment_id = 42; // 添付ファイルのID
$image_src = wp_get_attachment_image_src( $attachment_id, 'medium' );
if ( $image_src ) {
echo '<img src="' . esc_url( $image_src[0] ) . '" width="' . esc_attr( $image_src[1] ) . '" height="' . esc_attr( $image_src[2] ) . '">';
}
このコードは、指定したIDの添付画像を中サイズで取得し、画像タグを出力します。
サンプルコード2
$attachment_id = 50;
$image_src = wp_get_attachment_image_src( $attachment_id, 'full' );
if ( $image_src ) {
// 画像が見つかった場合のみ実行
echo '<a href="' . esc_url( $image_src[0] ) . '">画像を表示</a>';
}
このコードは、指定されたIDの添付ファイルのフルサイズ画像を取得し、リンク付きで表示します。
サンプルコード3
$attachments = get_post_gallery_images( get_the_ID() );
foreach ( $attachments as $attachment_id ) {
$image_src = wp_get_attachment_image_src( $attachment_id, 'thumbnail' );
echo '<img src="' . esc_url( $image_src[0] ) . '" />';
}
このコードは、投稿のギャラリーからサムネイル画像を取得し、すべてを表示します。
サンプルコード4
$attachment_id = 1;
$image_data = wp_get_attachment_image_src( $attachment_id, 'medium', true );
if ( $image_data ) {
echo '画像URL: ' . esc_url( $image_data[0] );
} else {
echo '画像が見つかりませんでした。';
}
このコードは、指定されたIDの画像情報を取得し、URLを表示しますが、画像が見つからない場合は警告メッセージを出力します。
サンプルコード5
$post_thumbnail_id = get_post_thumbnail_id( get_the_ID() );
$image_src = wp_get_attachment_image_src( $post_thumbnail_id, 'large' );
?>
<img src="<?php echo esc_url( $image_src[0] ); ?>" alt="投稿サムネイル">
このコードは、現在の投稿のサムネイル画像を大サイズで取得し、画像タグを表示します。
この関数のアクションでの使用可能性
アクション名 | 使用可能 |
---|---|
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 |
非推奨・削除情報
wp_get_attachment_image_src
関数は、現在のところ、特定のバージョンにおいて非推奨または削除されていません。