Loading
Salesforce から送信されるメールは、承認済ドメインからのみとなります続きを読む

Salesforce からのメールに静的リソース画像がない

公開日: May 23, 2026
説明
※この記事は英語版を翻訳しており、一部機械翻訳を含むため内容は後日更新される可能性があります。最新の内容は英語版を参照してください。表示言語は画面右下の言語名から切り替えられます。
 

静的リソースにいくつかの画像をアップロードしました。これらの画像を VF ページのメールテンプレートに含めると、画像がメールに表示されません。代わりに「X」マークが表示されます。

静的リソースを含めるために使用しているマークアップは以下のとおりです。

<apex:image id="theImage" value="{!$Resource.myResourceImage}" width="200" height="200"/> <apex:image url="{!URLFOR(!$Resource.TestZip, 'images/Bluehills.jpg')}" width="50" height="50" />
解決策

画像がメールに表示されない理由は、画像がレンダリングされる相対 URL が value="{!$Resource.myResourceImage}" によって生成されるためです (つまり、"/resource/1312483024000/logo")。この URL は認証済みのプラットフォームユーザーしかアクセスできません。

また、画像を静的リソースとして保存する場合、項目 "Cache Control" = "Public" では、Salesforce サーバーにキャッシュされた静的リソースデータを**組織内の他のユーザー**と共有し、ロード時間を短縮するように指定します。「Public」に設定しても、Salesforce Org 外からアクセスできるようにはなりません。

この問題を解決するには、画像をドキュメントに保存し、[外部参照可] をオンにする必要があります。以下のマークアップを使用することで画像を利用できるようになります。

<apex:image id="theImage" value="https://<MyDomainName>.file.force.com/servlet/servlet.ImageServer?id=<document_id>&oid=<organization_id>" width="200" height="200"/>
ナレッジ記事番号

000384817

 
読み込み中
Salesforce Help | Article