如何从 WooCommerce 订单确认电子邮件中删除付款方式?

How to remove payment method from WooCommerce order confirmation email?

我们已经删除了客户电子邮件中的付款信息,但无法删除标题。我们该怎么做?我们使用 Woocommerce 电子邮件模板来发送订单确认电子邮件。

我们已经搜索并尝试更改

我们在 email-order-details,根本没用。

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

要使用挂钩从 WooCommerce 电子邮件通知中删除付款方式:

add_filter( 'woocommerce_get_order_item_totals', 'remove_paymeny_method_row_from_emails', 10, 3 );
function remove_paymeny_method_row_from_emails( $total_rows, $order, $tax_display ){
    // On Email notifications only
    if ( ! is_wc_endpoint_url() ) {
        unset($total_rows['payment_method']);
    }
    return $total_rows;
}

代码进入活动子主题(或活动主题)的 functions.php 文件。已测试并有效。


或覆盖 email-order-details.php 模板文件:

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

应该也可以。