如何在WooCommerce产品描述中插入短代码?短代码不生效
WooCommerce产品描述短代码不生效的解决方法
你之前添加的代码只针对**产品短描述(摘要)**生效,而你需要处理的是产品长描述,所以没效果。下面是两种可行的解决方式:
方式一:重写产品长描述渲染函数
WooCommerce默认用woocommerce_template_single_description函数渲染产品长描述,在主题的functions.php文件中添加以下代码,让它解析短代码:
if (!function_exists('woocommerce_template_single_description')) { function woocommerce_template_single_description() { global $post; // 用WordPress默认的内容过滤器解析短代码和格式 $product_description = apply_filters('the_content', $post->post_content); echo '<div class="woocommerce-product-details__short-description">' . $product_description . '</div>'; } }
方式二:使用过滤器钩子(更简洁)
无需重写整个函数,直接给产品描述字段添加短代码解析的过滤器,在functions.php中加入:
add_filter('woocommerce_product_description', 'do_shortcode');
额外检查项
- 先确认
[block id="product-callouts-01"]这个短代码本身有效:在普通页面/post中插入该短代码,看是否能正常显示对应区块内容,排除短代码本身的问题。 - 核对区块ID是否正确,确保没有拼写错误。
内容的提问来源于stack exchange,提问作者IVCatalina
相关产品推荐
相关产品推荐

