如何仅显示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>
答案 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);