1

使用 cakePHP 2.3.8 版,

我正在尝试将 X-Mailer: CakePHP 电子邮件更改为 X-Mailer: PHP 邮件。我已经在控制器和我的“默认”设置中的 /app/Config/email.php 中尝试过这个。

 'X-Mailer' => 'PHP mail',

但是改不了,真的很郁闷。

4

2 回答 2

4

您需要在发送电子邮件之前使用 addHeaders() 更改它。如这里所做的那样,例如: https ://github.com/dereuromark/tools/blob/master/Lib/EmailLib.php#L638 在这种情况下 - 扩展核心类 - 可以使用 Configure 自动填充 X-Mailer通过配置。但是您也可以对每个电子邮件发送功能进行内联处理。

基本上,在您的 CakeEmail 对象上:

$CakeEmail = new CakeEmail();
$CakeEmail->addHeaders(array('X-Mailer' => 'My custom X-Mailer'));

如果手动设置,Cake 将不会添加他的默认值 'CakePHP Email'。

于 2013-08-03T10:51:38.840 回答
1

CakePHP 2,您可以在位于 Config/email.php 中的 EmailConfig 类中进行设置,而不是像 @mark 建议的那样每次都从控制器中设置:

public $default = array(
  'transport' => '...',
  'from' => '...',
  'emailFormat' => 'both',
  'charset' => 'utf-8',
  'headerCharset' => 'utf-8',
  'headers'=>array('X-Mailer'=>'Your App Name'),
);

将发送带有这些标题的电子邮件:

To: .....
X-Mailer: Your App Name
Date: ....
于 2015-07-20T08:01:52.130 回答