首页 > 解决方案 > 消除

WooCommerce 中产品属性的标签

问题描述

WooCommerce 会<p>在重量和尺寸之后自动为所有产品属性添加标签。这意味着产品属性的格式在前 2 行之后发生了变化。

我相信下面的代码(从 wc-template-functions.php 中提取)<p>是自动添加的,但是我无法弄清楚如何在wpautop不直接编辑 wc-template-functions.php 的情况下删除。我确信这可以与某种过滤器一起应用。任何帮助弄清楚如何删除它将不胜感激。

$product_attributes[ 'attribute_' . sanitize_title_with_dashes( $attribute->get_name() ) ] = array(
            'label' => wc_attribute_label( $attribute->get_name() ),
            'value' => apply_filters( 'woocommerce_attribute', wpautop( wptexturize( implode( ', ', $values ) ) ), $attribute, $values ),
        );

标签: phpwordpresswoocommerceproducttaxonomy-terms

解决方案


只需使用可用的过滤器挂钩woocommerce_attribute移除wpautop(),例如:

add_filter( 'woocommerce_attribute', 'woocommerce_attribute_filter_callback', 10, 3 );
function woocommerce_attribute_filter_callback( $formatted_values, $attribute, $values ) {
    return wptexturize( implode( ', ', $values ) );
}

代码位于您的活动子主题(或活动主题)的 function.php 文件中。测试和工作。


推荐阅读