向 Prestashop 电子邮件订单确认添加功能
Add features to Prestashop email order confirmation
我想在 Prestashop 中将产品功能添加到发送给客户的订单确认中。
在那种情况下,在 1.6.1.4 class/PaymentModule.php 文件中我们有,它向我们显示 产品名称 - 属性:属性值 就像 漂亮的耐克鞋 - 尺码:42.
我想扩展它以显示:
漂亮的耐克鞋 - 尺码:42
系列:Hyperdunk(作为特征系列和特征值 Hyperdunk)
'name' => $product['name'].(isset($product['attributes']) ? ' - '.$product['attributes'] : ''),
所以我想添加新的模板变量,比如
'features' => $product['features'].(isset($product['features']) ? ' - '.$product['features'] : ''),
我也在 order_conf_product_list.tpl 添加
<td style="border:1px solid #D6D4D4;">
<table class="table">
<tr>
<td width="10"> </td>
<td>
<font size="2" face="Open-sans, sans-serif" color="#555454">
<strong>{$product['name']}</strong><br />{$product['features']}
</font>
</td>
<td width="10"> </td>
</tr>
</table>
</td>
但它不起作用...有什么想法吗?
编辑: 启用调试模式后,我有数组 - 数组代替 {$product['features']} 变量
首先,您对 PaymentModule 的更改不正确。
$product['features']
只包含一个数组 id_feature
、id_product
和 id_feature_value
。
在分配给 tpl 之前,您需要获取功能名称和值:
$features = "";
if($product_features = Product::getFrontFeaturesStatic($order->id_lang, $product['id_product'])){
foreach($product_features as $f){
$features .= $f['name'] . " - " . $f['value'];
}
}
然后将其分配给模板
'features' => $features,
或连接到产品名称。
编辑(根据评论中的要求添加条件):
使用以下代码:
$features = "";
if($product_features = Product::getFrontFeaturesStatic($order->id_lang, $product['id_product'])){
foreach($product_features as $f){
if(in_array($f['id_feature'], array(3, 5)))
$features .= $f['name'] . " - " . $f['value'];
}
}
我想在 Prestashop 中将产品功能添加到发送给客户的订单确认中。
在那种情况下,在 1.6.1.4 class/PaymentModule.php 文件中我们有,它向我们显示 产品名称 - 属性:属性值 就像 漂亮的耐克鞋 - 尺码:42.
我想扩展它以显示:
漂亮的耐克鞋 - 尺码:42
系列:Hyperdunk(作为特征系列和特征值 Hyperdunk)
'name' => $product['name'].(isset($product['attributes']) ? ' - '.$product['attributes'] : ''),
所以我想添加新的模板变量,比如
'features' => $product['features'].(isset($product['features']) ? ' - '.$product['features'] : ''),
我也在 order_conf_product_list.tpl 添加
<td style="border:1px solid #D6D4D4;">
<table class="table">
<tr>
<td width="10"> </td>
<td>
<font size="2" face="Open-sans, sans-serif" color="#555454">
<strong>{$product['name']}</strong><br />{$product['features']}
</font>
</td>
<td width="10"> </td>
</tr>
</table>
</td>
但它不起作用...有什么想法吗?
编辑: 启用调试模式后,我有数组 - 数组代替 {$product['features']} 变量
首先,您对 PaymentModule 的更改不正确。
$product['features']
只包含一个数组 id_feature
、id_product
和 id_feature_value
。
在分配给 tpl 之前,您需要获取功能名称和值:
$features = "";
if($product_features = Product::getFrontFeaturesStatic($order->id_lang, $product['id_product'])){
foreach($product_features as $f){
$features .= $f['name'] . " - " . $f['value'];
}
}
然后将其分配给模板
'features' => $features,
或连接到产品名称。
编辑(根据评论中的要求添加条件):
使用以下代码:
$features = "";
if($product_features = Product::getFrontFeaturesStatic($order->id_lang, $product['id_product'])){
foreach($product_features as $f){
if(in_array($f['id_feature'], array(3, 5)))
$features .= $f['name'] . " - " . $f['value'];
}
}