我正在为商店创建一些新的电子邮件模板。Magento,新订单电子邮件模板总数
我有模板95%的工作我唯一的问题是,在表中显示的订单项目,我似乎无法找到合计拉入文件,链接到显示下面的问题的图像。
当然,我希望能够增加一些内嵌代码到这个领域,由于它是为电子邮件,也改变左边的标签。我已经成功地跟踪总计面积下降到以下文件
模板/销售/订单/ totals.phtml
我不知所措我以什么文件,这然后调用。
我正在为商店创建一些新的电子邮件模板。Magento,新订单电子邮件模板总数
我有模板95%的工作我唯一的问题是,在表中显示的订单项目,我似乎无法找到合计拉入文件,链接到显示下面的问题的图像。
当然,我希望能够增加一些内嵌代码到这个领域,由于它是为电子邮件,也改变左边的标签。我已经成功地跟踪总计面积下降到以下文件
模板/销售/订单/ totals.phtml
我不知所措我以什么文件,这然后调用。
如果您在
layout/sales.xml:268
看你会看到布局手柄sales_email_order_items。里面有一个块“order_totals”,它有该模板。要添加新的电子邮件地址,您只需将其添加为该电子邮件的子项即可。在第275行,你可以看到他们添加了一个名为“税”的块。
在totals.phtml文件中,你可以看到它调用$ this-> getTotals()作为foreach的一部分。该方法定义为
Mage/Sales/Block/Order/Totals.php:281
这只是返回已经定义的总计。此数据由config.xml的文件填充的定义:
<global><sales><quote><totals>...
跳回到totals.phtml,它会检查是否总具有为它定义的块。这将是config.xml文件中的一个字段。如果你有一个总数模型,你想定制你会这样做。否则,在呈现页面(调用第44行上的_beforeToHtml())之前,它会对子块进行交互,如果它们响应方法“initTotals”,则调用该方法。该方法应创建一个代表您的总数并将其添加到父项的对象。例如,这里是一个总计块我最近写的代码(这是基于代码,我不能公开发布):我希望这有助于
public function initTotals()
{
if ((float)$this->getParentBlock()->getSource()->getMytotalAmount() == 0) {
return $this;
}
$total = new Varien_Object(array(
'code' => $this->getNameInLayout(),
'block_name'=> $this->getNameInLayout(),
'area' => $this->getArea()
));
$after = $this->getAfterTotal();
if (!$after) {
$after = 'subtotal';
}
$this->getParentBlock()->addTotal($total, $after);
return $this;
}
。