メディアライブラリから特定の画像のURLを取得する

WordPressのサイトデザインの都合上、同じ種類の記事などで使用する画像は常に同じものを使うときに、毎回手作業でメディアライブラリから画像を探す作業は大変ですよね。こういった作業をなくすためにメディアライブラリから特定の画像URLを取得する方法を紹介します。
画像URLの取得
目的の画像を取得するためにメディアライブラリに保存する際に設定するタイトルを使用します。指定したタイトルの画像IDを使ってURLを取得します。以下の例はタイトルが”targetimg”の画像IDの画像URLを取得しています。

$attachments = get_children(array('post_type' => 'attachment', 'post_mime_type' => 'image'));
if(!empty($attachments)){
  foreach($attachments as $attachment){
    if($attachment->post_title == ’targetimg') {
      wp_get_attachment_image( $attachment->ID, $size, $icon, $attr );
      $imgid = $attachment->ID;
    }
  }
}

ついでに、アイキャッチ画像を設定したい場合は”update_post_meta()”関数を使います。メタキーは”_thumbnail_id”を設定します。

update_post_meta( $post->ID, $meta_key = '_thumbnail_id', $meta_value = $attachment->ID );

これでメディアライブラリの画像も自由に扱えますね。