wp_get_attachment_image

説明

string wp_get_attachment_image( int $attachment_id [ , mixed $size = 'thumbnail' [ , bool $icon = false [ , mixed attr = '' ] ] ] )
アタッチメント情報のHTMLテキストを取得する。

パラメータ

  • $attachment_id
    アタッチメント情報のIDを指定。
  • $size
    サイズを文字列('thumbnail'、'post-thumbnail'、'small'、'medium'、'large'など)または配列(幅と高さのピクセル値)で指定(省略時は'thumbnail')。
  • $icon
    アイコン画像を使用する場合はtrue、使用しない場合はfalseを指定(省略時はfalse)。
  • $attr
    添付画像の属性を文字列または連想配列で指定(省略時は'')。
    キー内容デフォルト値
    'class'class属性値(スペースで区切られたクラス名)
    'alt'alt属性値 get_post_meta('_wp_attachment_image_alt')からタグなどを除去したもの
    'srcset'[4.4.0]srcset属性値wp_calculate_image_srcsetの返り値
    'sizes'[4.4.0]sizes属性値wp_calculate_image_sizesの返り値
    'loading'[5.5.0]loading属性値 wp_get_loading_attr_default('wp_get_attachment_image')の返り値('lazy')
    'decoding'[6.1.0]decoding属性値'async'

返り値

アタッチメント情報が存在する場合は、そのHTMLテキストを返す。アタッチメント情報が設定されていない場合は''を返す。

注意

パラメータ$icontrueを指定した場合、アタッチメント情報のタイプに応じたアイコン画像(/wp-includes/images/crystal/*.png)が適用される。

使用例

  • IDが25のアタッチメント情報のHTMLテキストを取得する。
    <?php $html = wp_get_attachment_image( 25 ); ?>
  • IDが25のアタッチメント情報のHTMLテキストを幅120ピクセルと高さ80ピクセルを指定して取得する。
    <?php $html = wp_get_attachment_image( 25, array( 120, 80 ) ); ?>
  • IDが25のアタッチメント情報のHTMLテキストをclass属性を追加して取得する。
    <?php $html = wp_get_attachment_image( 25, 'post-thumbnail', false, array( 'class'=>'alignleft' ) ); ?>

フィルター

[2.8.0]パラメータ$attrを適用する前に'wp_get_attachment_image_attributes'フィルターを呼び出す。パラメータ$attrにはデフォルトの属性値が加わった連想配列が、$attachmentには添付画像の投稿情報が格納されている。
$attr = apply_filters( 'wp_get_attachment_image_attributes', $attr, $attachment );/pre
[5.6.0]HTMLテキストを返す前に'wp_get_attachment_image'フィルターを呼び出す。パラメータ$htmlにはHTMLテキストが、$attachment_id$size$iconにはそれぞれ本関数が受け取った内容が、$attrには'wp_get_attachment_image_attributes'フィルターが返した内容が格納されている。
return apply_filters( 'wp_get_attachment_image', $html, $attachment_id, $size, $icon, $attr );/pre

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/media.php

最終更新 : 2023年06月02日 16:59



お勧め

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

Twenty Seventeenのフォントサイズを変更してみた(2021年12月15日 更新)

先日投稿した「続テーマを変更せずにWebフォントを使ってみた」では、テーマ「Twenty Seventeen」でもWebフォントを使えるようにした。その際、「Twenty Seventeen」のフォントサイズが少し小さく感じたので、今回はフォントサイズを調整してみた。

HTML entities button:プラグイン作ってみました(2021年4月28日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。

5.7の機能拡張:エクスポートファイルに更新日時が追加ほか(2021年2月23日 更新)

WordPressはサイト移行を支援する機能として投稿情報のエクスポート機能を備えている。5.7ではこのエクスポート機能が改良され、更新日時情報が追加されるようだ。

query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)

先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。