我正在尝试将图片发送到电子邮件中,
我的图片代码是:<?php echo $this->Html->image('image-name.jpg', ['class'=>'img-responsive']); ?>
虽然我在我的localhost中调试电子邮件模板,但它工作正常,图像显示正常,但是当相同的代码使其在服务器和火灾电子邮件上生效时,电子邮件内容显示正常但图像未显示(未找到)。 / p>
任何机构都会建议实施它的正确方法。
谢谢, 麦
答案 0 :(得分:1)
对于电子邮件或整个网站,如果您想要内容的完整路径,请使用fullBase
param true
值,
echo $this->Html->image("logo.png", ['fullBase' => true]);
将输出:
<img src="http://example.com/img/logo.jpg" alt="" />
https://book.cakephp.org/3.0/en/views/helpers/html.html#linking-to-images
这是CakePhp框架建议的正确方法。
答案 1 :(得分:0)
首先附加您要发送的文件
$email->attachments([
'photo.png' => [
'file' => '/full/some_hash.png',
'mimetype' => 'image/png',
'contentId' => 'unique-id'
]
]);
然后在您的电子邮件模板中添加唯一ID
<img src="cid:unique-id">
详细说明,here