WEB制作者向け無料テーマ「Arkhe」をリリースしました

WordPressで画像のURLから画像IDを取得する方法

今回は、WordPressでメディアにアップロードした画像のURLから、画像ID(メディアID)を取得する方法をメモ。

例えば、テーマカスタマイザーで画像をアップロードして設定できるようにしている場合、その画像のデータはURLの文字列情報として保存されていますが、(基本的な手法で画像を設定できるようにしている場合)
カスタマイザーで設定された画像のサムネイルサイズ版を取得して、画像を遅延読み込みさせる時のプレースホルダーとして設置したいケースなどでは、URL情報を元に画像IDを取得する必要がでてきます。

ちょうどそのケースに遭遇したので少し調べてみると、attachment_url_to_postid()というめちゃくちゃ便利な関数が用意されていることを知りました。

使い方は簡単で、引数に画像のURLを指定するだけ。(メディアへアップロードされている画像のURL)

$url = 'https://example.com/wp-content/uploads/2019/img_path.jpg';
$img_id = attachment_url_to_postid( $url );

こうするだけで、$img_idにその画像のIDが代入されます。

この時、IDが見つからなければ0を返します。

そもそもWordPressの「メディア」にアプロードされている画像じゃないとIDを持ちませんので、メディアにアップロードされれいる画像にのみ使えます。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA

目次
WordPressテーマ SWELLWordPressテーマ SWELL