wp_get_attachment_url() の使い方|説明・引数・注意点

説明

wp_get_attachment_url() は、添付ファイル(メディア)のURLを返す関数です。

基本構文

wp_get_attachment_url( int $attachment_id = 0 ): string|false

引数

  • $attachment_id:添付ファイルのID

戻り値

ファイルのURL。存在しなければ false。

使い方(サンプル)

echo esc_url( wp_get_attachment_url( 45 ) );

注意点

  • 画像のサイズ違いのURLが欲しいときは wp_get_attachment_image_src() を使います。

実務での使いどころ

  • 画像やPDFなど、添付ファイル(メディア)の元のファイルのURLを取得するとき。
  • PDFのダウンロードリンクを作るとき。

よくあるミスと対処

  • サイズ違いの画像のURLが欲しいのに、これを使っている。この関数が返すのは、元のファイル(フルサイズ)のURL。サイズ指定は wp_get_attachment_image_src() を使う。
  • 投稿のIDを渡している。渡すのは、添付ファイルのID。アイキャッチ画像のIDは、get_post_thumbnail_id() で取得する。
  • 存在しないIDでは false が返る。確認せずに出力する。

NG例

echo wp_get_attachment_url( get_the_ID() ); // 投稿のIDを渡している

OK例

$url = wp_get_attachment_url( get_post_thumbnail_id() );
if ( $url ) {
	echo esc_url( $url );
}

使い分け早見表

やりたいこと 使うもの
元のファイルのURL wp_get_attachment_url()
サイズ指定のURLと、幅・高さ wp_get_attachment_image_src()
imgタグのHTML wp_get_attachment_image()

関連項目

wp_get_attachment_image_src()、wp_get_attachment_image()

公式リファレンス:wp_get_attachment_url() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました