ワードプレスのwp_get_attachment_image_url関数の使用方法・解説

概要

wp_get_attachment_image_url関数は、指定された添付ファイル(画像)のURLを取得するためのWordPressのビルトイン関数です。この関数は、特に画像ギャラリーやメディアライブラリからの画像を表示する際に役立ちます。また、デザインや表示ニーズに合わせて適切な画像サイズを選択できる機能も提供します。具体的には、以下のような機能を実装する際によく使用されます。

  1. 投稿やページへの画像挿入
  2. サムネイル画像の表示
  3. ギャラリーの作成
  4. カスタムフィールドからの画像取得
  5. 画像ベースのカスタムウィジェットの作成
  6. 商品画像の表示(WooCommerceなど)
  7. スライダーやカルーセルの実装
  8. プロフィール画像やユーザーアバターの表示

構文

wp_get_attachment_image_url( int $attachment_id, string $size = 'full' );

パラメータ

  • $attachment_id (int): 取得したい画像の添付ID。
  • $size (string): 取得したい画像のサイズ(デフォルトは’full’)。例えば、’thumbnail’, ‘medium’, ‘large’ など。

戻り値

  • 添付ファイルの画像URLを返します。画像が存在しない場合はfalseを返します。

関連する関数

使用可能なバージョン

この関数は、WordPress 3.5.0以降で使用可能です。

コアファイルのパス

この関数は、以下のファイルに含まれています:

wp-includes/post.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: 画像URLの取得

$attachment_id = 123; // 取得したい添付ファイルのID
$image_url = wp_get_attachment_image_url($attachment_id, 'full');
echo '<img src="' . esc_url($image_url) . '" alt="画像">';

このコードは、指定されたIDの添付ファイルの画像URLを取得し、その画像をHTMLで表示します。

引用元: WordPress Codex


サンプル 2: サムネイル画像の取得

$attachment_id = get_post_thumbnail_id($post->ID); // 投稿のサムネイルIDを取得
$image_url = wp_get_attachment_image_url($attachment_id, 'thumbnail');
echo '<img src="' . esc_url($image_url) . '" alt="サムネイル">';

このコードは、現在の投稿のサムネイル画像を取得して表示します。

引用元: WordPress Codex


サンプル 3: ギャラリー画像の取得

$attachments = get_posts(array(
    'post_type' => 'attachment',
    'post_mime_type' => 'image',
    'posts_per_page' => -1,
    'post_parent' => $post->ID
));

if ($attachments) {
    foreach ($attachments as $attachment) {
        $image_url = wp_get_attachment_image_url($attachment->ID, 'medium');
        echo '<img src="' . esc_url($image_url) . '" alt="' . esc_attr($attachment->post_title) . '">';
    }
}

このコードは、投稿に関連付けられた全ての画像を取得し、それらを表示します。

引用元: WordPress Codex


サンプル 4: カスタムサイズの画像を取得

$attachment_id = 456; // 取得したい添付ファイルのID
$image_url = wp_get_attachment_image_url($attachment_id, 'medium');
if ($image_url) {
    echo '<img src="' . esc_url($image_url) . '" alt="カスタムサイズ画像">';
} else {
    echo '画像が見つかりません';
}

このコードは、特定の添付ファイルのカスタムサイズの画像URLを取得して表示します。

引用元: WordPress Codex


サンプル 5: 画像の存在確認

$attachment_id = 789; // 取得したい添付ファイルのID
$image_url = wp_get_attachment_image_url($attachment_id, 'full');
if ($image_url) {
    echo '画像のURL: ' . esc_url($image_url);
} else {
    echo '指定された画像は存在しません';
}

このコードは、指定されたIDの画像が存在するかどうかを確認し、存在する場合はそのURLを表示します。

引用元: WordPress Codex

この関数について質問する


上の計算式の答えを入力してください