如何在opencart订单邮件中显示订单总价(邮件标记需要)

How to display order total price in opencart order mail (needed for email markup)

我正在尝试为 OC 2+ 订单邮件插入电子邮件标记 (https://developers.google.com/gmail/markup/reference/types/PriceSpecification),但我无法显示没有货币符号的总价。

问题是 OC 将所有内容都视为总计(小计、税金、运费和最终总计),所以我不知道如何提取所有税金、运费等后的最终总和。

<?php foreach ($totals as $total) { ?>
  <tr>
    <td colspan="4"><b><?php echo $total['title']; ?>:</b></td>
    <td><?php echo $total['text']; ?></td>
  </tr>
<?php } ?>

感谢任何帮助!谢谢

您可以在这里找到代码:

/catalog/model/checkout/order.php

即:

// Order Totals
$order_total_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order_total` WHERE order_id = '" . (int)$order_id . "' ORDER BY sort_order ASC");

foreach ($order_total_query->rows as $total) {
    $data['totals'][] = array(
        'title' => $total['title'],
        'text'  => $this->currency->format($total['value'], $order_info['currency_code'], $order_info['currency_value']),
    );
}

只需使用 VQmod 将值索引添加到数组即可。 转到 VQmod 文件夹内的 xml 文件夹 创建一个文件,将其命名为您想要的名称并在其中写入这些行:

<modification>
<id>Get Value Without Formatting</id>
<version>OC 2</version>
<vqmver>1.0.0</vqmver>
<author>Your Name</author>
<file name="catalog/model/checkout/order.php">
    <operation>
        <search position="before"><![CDATA['text'  => $this->currency->format($total['value'], $order_info['currency_code'], $order_info['currency_value']),]]></search>
        <add><![CDATA[
            'value' => $order_info['currency_value'] ? ((float)$total['value'] * $order_info['currency_value']) : $total['value'],
            ]]></add>
    </operation>
</file>