【问题标题】:display item price (not item total) in woocommerce emails在 woocommerce 电子邮件中显示商品价格(不是商品总额)
【发布时间】:2014-05-02 00:08:56
【问题描述】:

我需要在发送给管理员和使用 WooCommerce 的客户的电子邮件中显示商品价格。 默认模板显示项目、数量和价格(项目价格 X 数量)。我可以将列添加到表中,但不知道如何从产品中获取数据。 (有趣的是,这并没有包含在默认值中。我想我从来没有在网上下过不包含单件价格的订单。)

这篇文章很有帮助,但并没有给我所有需要的东西: display tax in woocommerce invoice

【问题讨论】:

  • 尝试包含一些显示错误的代码。
  • 确实没有错误,是需要在邮件模板的表格中添加的字段。

标签: wordpress woocommerce orders


【解决方案1】:

我编辑了 plugins/woocommerce/templates/emails/email-order-items.php 在产品名称之后我插入了价格:

 <br/>
   <strong><?php _e( 'Price', 'woocommerce' ); ?>:</strong>

   <?php echo apply_filters(    'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key ); ?>

注意!我将自定义文件放在 mytheme/woocommerce/emails/ 目录中 - 没有“模板”文件夹(!)。奇怪,但这是迫使他们工作的唯一方法。

【讨论】:

    【解决方案2】:

    看起来@Anunja 上面的代码可能不再有效 - 只需在模板/电子邮件/电子邮件订单项.php 的复制版本中的产品名称下方添加以下行

    echo '<br/>Individual Price $' . $_product->get_price();
    

    【讨论】:

    • 请注意,如果价格被插件修改,例如更改为折扣价,则会显示原始价格。
    【解决方案3】:

    已经有一段时间了,但这对其他人来说可能会派上用场。

    据我所知,没有返回单价的方法,但您可以通过将商品的总价除以数量来计算,如下所示:

    $item->get_total() / $item->get_quantity()
    

    由于这将只返回一个数字,您可能想要添加一个货币符号,因此,您最终会得到这样的结果:

    <?php echo wc_price($item->get_total() / $item->get_quantity()); ?>
    

    【讨论】:

    • 我在“woocommerce_order_items”表中搜索了“woocommerce_order_itemmeta”的单价,但没有找到。我想我会采用这个解决方案。
    猜你喜欢
    • 2021-02-19
    • 2013-10-19
    • 2019-12-07
    • 1970-01-01
    • 2018-08-05
    • 2017-05-23
    • 1970-01-01
    • 1970-01-01
    • 2020-11-26
    相关资源
    最近更新 更多