Magento交易电子邮件徽标和HTTPS(SSL)

时间:2014-05-13 00:12:00

标签: magento email ssl https

在Magento CE 1.8中,似乎{{var logo_url}}默认在其交易电子邮件中使用HTTPS链接(如果启用了SSL)。这会导致Outlook出现问题,因为Outlook不会显示带有SSL URL的图像。

有没有"容易"强制{{var logo_url}}到HTTP?

的方法

1 个答案:

答案 0 :(得分:1)

我认为强制执行HTTP而不是HTTPS是个好主意但是......我能想到的最简单方法是将Mage_Core_Model_Email_Template_Abstract扩展为自己的扩展(更好)或在本地代码池中覆盖它(更快更好但不太干净)并调整函数_addEmailVariables($variables, $storeId)

为了示范,我将展示第二种方法:

app/code/core/Mage/Core/Model/Email/Template/Abstract.php复制到app/code/local/Mage/Core/Model/Email/Template/Abstract.php并创建app/code/local/中尚不存在的任何文件夹。

现在在函数app/code/local/Mage/Core/Model/Email/Template/Abstract.php的{​​{1}}中查找

_addEmailVariables($variables, $storeId)

并将其替换为此类

if (!isset($variables['logo_url'])) {
    $variables['logo_url'] = $this->_getLogoUrl($storeId);
}

未经测试,但这应该有效。您也可以在自己的扩展中调整此方法。如果您不熟悉过程,请查看http://inchoo.net/上的优秀文章(http://inchoo.net/magento/overriding-magento-blocks-models-helpers-and-controllers/是一个很好的起点)。