如何仅显示woocommerce电子邮件中的变体值?

时间:2015-11-13 15:19:20

标签: php email woocommerce

如何仅显示woocommerce电子邮件中的变体值?现在它显示标签和价值。它显示如下 - >尺码:M 但我想只显示价值" M"另外,我如何删除":" ?

        <td class="td" style="text-align: right; vertical-align:middle; font-family: 'Courier New', 'Lucida Sans Typewriter', 'Lucida Typewriter', monospace;">
            <?php if ( ! empty( $item_meta->meta ) ) {
                echo nl2br( $item_meta->display( true, true, '_', "\n" ) );
            } ?>
        </td>

1 个答案:

答案 0 :(得分:3)

Woocommerce使用名为 WC_Order_Item_Meta 的类来显示订单商品元。它由Woocommerce email-order-items.php 模板使用。

添加woocommerce_order_items_meta_display过滤器:

add_filter( 'woocommerce_order_items_meta_display'

注入两个依赖项$output$obj

function ($output, $obj) {...}, 10, 2);

检查订单商品是否为变量类型:

if ($obj->product->parent->product_type == 'variable'){

擦洗输出:

ltrim(explode(':', $output)[1])

总之,这就是代码的样子:

add_filter( 'woocommerce_order_items_meta_display', function ($output, $obj) {
if($obj->product->parent->product_type == 'variable') {
    $output = ltrim(explode(':', $output)[1]);
}
return $output; },10,2);