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

概要

wp_get_original_image_url 関数は、オリジナルの画像ファイルのURLを取得するためのWordPressの関数です。この関数は、画像がアップロードされた際に生成される各種サイズの画像のURLではなく、オリジナルのサイズの画像ファイルのURLを返します。主に以下のような機能を実装する際に使用されることがあります。

  1. メディアギャラリーのカスタマイズ
  2. 画像ファイルの詳細情報の表示
  3. カスタムフィールドからの画像取得
  4. 投稿やページ内のオリジナル画像のリンク生成
  5. レスポンシブ画像の実装に役立つURL取得
  6. 画像のダウンロードリンクを提供する際
  7. サードパーティのプラグインとの連携
  8. 画像処理や編集機能の拡張

構文

string wp_get_original_image_url( int $attachment_id );

パラメータ

  • $attachment_id (int): 画像の添付ファイルID。

戻り値

  • (string): オリジナルの画像ファイルのURL。画像が見つからない場合は空文字列を返します。

関連する関数

使用可能なバージョン

wp_get_original_image_url は WordPress 5.0.0 以降で使用可能です。

コアファイルのパス

wp-includes/media.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_original_image_url($attachment_id);
echo $image_url; // オリジナル画像のURLを表示

説明: 特定の添付ファイルIDを指定して、そのオリジナル画像のURLを取得し、表示します。

サンプルコード 2: メディアギャラリーでの画像表示

$attachments = get_posts(array(
    'post_type' => 'attachment',
    'posts_per_page' => -1,
));

foreach ($attachments as $attachment) {
    $image_url = wp_get_original_image_url($attachment->ID);
    echo '<img src="' . esc_url($image_url) . '" />';
}

説明: メディアギャラリーに保存されているすべての画像のURLを取得し、画像として表示します。

サンプルコード 3: カスタムフィールドからの画像URL取得

$image_id = get_post_meta(get_the_ID(), 'custom_image_id', true);
$image_url = wp_get_original_image_url($image_id);
echo '<a href="' . esc_url($image_url) . '">オリジナル画像を表示</a>';

説明: 投稿のカスタムフィールドから画像のIDを取得し、そのIDを使ってオリジナル画像のURLを生成し、表示します。

サンプルコード 4: 画像ダウンロードリンク

$attachment_id = get_attachment_id(); // 何らかの方法でIDを取得
$image_url = wp_get_original_image_url($attachment_id);
echo '<a href="' . esc_url($image_url) . '" download>ダウンロード</a>';

説明: 画像のオリジナルURLを使って、ユーザーが画像をダウンロードできるリンクを作成します。

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

$attachment_id = 456; // 添付ファイルのID
$image_url = wp_get_original_image_url($attachment_id);
if (!empty($image_url)) {
    echo '<img src="' . esc_url($image_url) . '" />';
} else {
    echo '画像が存在しません。';
}

説明: 指定されたIDのオリジナル画像のURLを取得し、画像の存在を確認して表示します。

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


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