Woocommerce 电子邮件通知中的样式订单详细信息表

我正在使用 WordPress 4.8.1 并使用桥接主题.
我在从新订单模板电子邮件中删除价格方面遇到了一些问题.
我想删除 price 列,但是我删除了 total 和 subtotal ,但没有得到任何东西来删除带有产品的 price 列作为通过文件.

我发现这是来自这个代码:

 $sent_to_admin,'show_image' =>错误的,'图像大小' =>数组( 32, 32 ),'纯文本' =>$plain_text,'sent_to_admin' =>$sent_to_admin,) );?>

在 email-order-details.php 模板中,我已将其从 woocommerce 模板文件夹复制到我的子主题中.

但是,如何自定义这个钩子 'wc_get_email_order_items' 或任何其他方式来删除价格?

这就是我现在所拥有的:

任何帮助将不胜感激,因为我花了很多时间寻找相同的解决方案.

解决方案

这可以做到

I am using WordPress 4.8.1 and using bridge theme.
I am facing some problem regarding removing price from new order template email.
I want to remove price column ,however I removed total and subtotal , but not getting anything to remove price column with products as going through files.

I have found this is coming from this code:

 <?php 
    echo wc_get_email_order_items( $order, array(
                'show_sku'      => $sent_to_admin,
                'show_image'    => false,
                'image_size'    => array( 32, 32 ),
                'plain_text'    => $plain_text,
                'sent_to_admin' => $sent_to_admin,
            ) ); ?>

In email-order-details.php template which I have copied to my child theme from woocommerce template folder.

But , how to customise this hook 'wc_get_email_order_items' or any other way to remove price?

This is what I have now:

Any help will be appreciated as I have spent so much hours finding solution for same.

解决方案

This can be done Overriding the following WooCommerce Templates via a Theme:

1.Template email/email-order-details.php

  • Where you will remove the block at line 38:

<th class="td" scope="col" style="text-align:<?php echo $text_align; ?>;"><?php _e( 'Price', 'woocommerce' ); ?></th>

  • And here also, all this blocks at line 50 to 63 (to remove):

<tfoot>
    <?php
        if ( $totals = $order->get_order_item_totals() ) {
            $i = 0;
            foreach ( $totals as $total ) {
                $i++;
                ?><tr>
                    <th class="td" scope="row" colspan="2" style="text-align:<?php echo $text_align; ?>; <?php echo ( 1 === $i ) ? 'border-top-width: 4px;' : ''; ?>"><?php echo $total['label']; ?></th>
                    <td class="td" style="text-align:<?php echo $text_align; ?>; <?php echo ( 1 === $i ) ? 'border-top-width: 4px;' : ''; ?>"><?php echo $total['value']; ?></td>
                </tr><?php
            }
        }
    ?>
</tfoot>

2.Template emails/email-order-items.php.

  • Where you will remove this block at line 59:

<td class="td" style="text-align:<?php echo $text_align; ?>; vertical-align:middle; border: 1px solid #eee; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;"><?php echo $order->get_formatted_line_subtotal( $item ); ?></td>

So you will get this:

相关文章