Magento如果在交易电子邮件中还有其他声明 - 这当然很简单吗?

时间:2017-09-12 07:17:12

标签: magento

请有人帮忙回答这个问题(我认为这是一个非常简单的练习,但是在花了很长时间检查这个论坛以寻找类似的答案后,遗憾的是我仍然不清楚)。

基本上我们的发票交易电子邮件包含以下代码:

<td class="method-info">
<h6>Payment method:</h6>
<p>Payment has been received</p>
</td>

基本上在付款方式下,它只是说默认{{var payment_html}}所以这被替换为&#39;已收到付款&#39;

但是,对于付款后付款方式(&#39; cashondelivery&#39;),它不应该说“已收到付款”#39;因为客户还没有付款!

所以基本上可以有人请将下面的基本样式逻辑替换为电子邮件

<td class="method-info">
<h6>Payment method:</h6>                   

if {{var payment_html}} is 'Payment after delivery'
  echo  {{var payment_html}} 
else
   echo 'Payment has been received' 
endif
</td>

很抱歉提出这样的基本问题,但我们正在寻找一位新的自由职业者magento开发人员!

非常感谢

1 个答案:

答案 0 :(得分:0)

在电子邮件模板中,我们无法在{{if}}{{depend}}条件中使用逻辑表达式,

{{if order.getPayment().getMethod()=="cashondelivery"}}
Payment after delivery
{{else}}
{{var payment_html}}
{{/if}}

所以要在交货后提供付款&#39;如果付款方式为发票模板的现金投入,则必须覆盖sendEmail类的Mage_Sales_Model_Order_Invoice函数。

在该功能中,您可以添加类似

的条件
if($order->getPayment()->getMethod()=='cashondelivery'){
    $paymentBlockHtml = Mage::helper('sales')->__('Payment after delivery');
}

code_snippet_screenshot

希望它有所帮助!