我正在爲商店創建一些新的電子郵件模板。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;
}
。