php - 消除
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 ),
);
解决方案
只需使用可用的过滤器挂钩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 文件中。测试和工作。
推荐阅读
- android - 如何在 mapbox android Sdk 中使用 Openmap 矢量图块
- android - 无法使用超级强大的 sdk 从存储中打开文件
- python - 在gmap中使用来自散景的python为圆添加工具提示
- java - 从 Oracle JDK 迁移到 OpenJDK 所需的更改
- ios - 在 Swift 4 中使用分段符解析 JSON
- asp.net-mvc-5 - Entity Framework 6 - 多个添加的实体可能具有相同的主键
- javascript - JavaScript push() 覆盖现有数据
- php - Laravel 5.6 在一组路由中使用服务提供者注入变量
- c# - 如何将 C# 类字符串变量传递给 sbyte* 参数?
- java - IntelliJ - 远程调试 - 无法打开调试器端口