我有一个扩展,它覆盖 getSkinUrl() 并拦截通过它的图像,进行更改,然后继续。这适用于 PHTML 文件中引用的任何图像。
但是,这不会在 CMS 块中捕获图像。在 CMS 块中,我正在使用
{{skin url="images/your_amazing_image.gif"}}
我有一个扩展,它覆盖 getSkinUrl() 并拦截通过它的图像,进行更改,然后继续。这适用于 PHTML 文件中引用的任何图像。
但是,这不会在 CMS 块中捕获图像。在 CMS 块中,我正在使用
{{skin url="images/your_amazing_image.gif"}}
Magento 的模板变量在以下文件中定义。
app/code/core/Mage/Core/Email/Template/Filter.php
对于{{skin}}
变量,围绕使用以下代码line 264 in filter.php
public function skinDirective($construction)
{
$params = $this->_getIncludeParameters($construction[2]);
$params['_absolute'] = $this->_useAbsoluteLinks;
$url = Mage::getDesign()->getSkinUrl($params['url'], $params);
return $url;
}
我不确定您是如何覆盖的getSkinUrl
,但请确保该getSkinUrl
方法与您要覆盖的方法相同。