WooCommerce结账页嵌入条款显示控制命令/标签,求解决方案
WooCommerce结账页条款弹窗显示WPBakery标签的解决方案
这本质是**WP Bakery Builder(现称WPBakery Page Builder)**的短代码未被正确解析导致的,和Qode Bridge主题关联不大——条款页面用WPBakery编辑生成的短代码,在结账弹窗的渲染环境中未被执行解析,直接以原始标签形式输出了。
可以通过PHP代码片段解决,有两种可选方案:
方案1:过滤移除WPBakery短代码
添加以下代码到主题的functions.php文件,或使用代码片段插件:
add_filter( 'woocommerce_get_terms_and_conditions_content', 'filter_terms_conditions_remove_wpbakery_shortcodes' ); function filter_terms_conditions_remove_wpbakery_shortcodes( $content ) { // 移除所有WPBakery短代码 $content = preg_replace( '/\[\/?vc_[^\]]+\]/', '', $content ); return $content; }
方案2:强制解析WPBakery短代码
如果希望保留条款页面的排版样式,而非单纯移除标签,可让短代码在弹窗中被解析:
add_filter( 'woocommerce_get_terms_and_conditions_content', 'filter_terms_conditions_parse_wpbakery_shortcodes' ); function filter_terms_conditions_parse_wpbakery_shortcodes( $content ) { // 解析所有短代码 $content = do_shortcode( $content ); return $content; }
注意:使用方案2时,需确保WPBakery的短代码在结账页面环境中能正常加载样式,避免排版错乱;若出现样式问题,优先选择方案1,或额外添加CSS调整弹窗内文本样式。
内容的提问来源于stack exchange,提问作者SwissDrago
相关产品推荐
相关产品推荐

