如何在WooCommerce结账页产品表下方添加自定义短代码
解决方法
你之前使用的woocommerce_after_checkout_form钩子本身的触发位置就是整个结账表单的最底部,调整优先级无法改变钩子的固有触发位置,只需要替换为对应位置的钩子即可实现需求。
正确实现代码
将你原有的代码替换为以下内容,添加到主题/子主题的functions.php文件中即可:
add_action( 'woocommerce_review_order_before_payment', 'wnd_checkout_code', 10 ); function wnd_checkout_code( ) { echo do_shortcode('[wc_sc_available_coupons]'); }
woocommerce_review_order_before_payment钩子的触发位置正好是结账页产品列表渲染完成后、支付模块加载前,完全匹配你需要的位置。
额外说明
- 如果你调整后发现位置不符合预期,可修改优先级参数(代码里的数字10),数值越小内容越靠前,数值越大内容越靠后,可根据需求调整为5、15、20等数值测试
- 修改代码后请清理网站缓存、浏览器缓存,避免旧缓存导致效果不显示
- 建议在子主题的
functions.php文件中添加代码,避免主主题更新后自定义代码被覆盖
内容的提问来源于stack exchange,提问作者namari
相关产品推荐
相关产品推荐

