已有WooCommerce购物车数量后缀代码,如何适配结账页面?
让数量后缀同时显示在购物车和结账页面的方法
你原来的代码只绑定了woocommerce_after_quantity_input_field钩子,这个钩子在购物车页面能正常触发,但结账页面的数量输入区域需要额外绑定对应的钩子才能生效。直接修改代码,让同一个函数绑定到多个相关钩子即可:
// 同时绑定购物车和结账页面的数量输入后钩子 add_action( 'woocommerce_after_quantity_input_field', 'wtwh_echo_qty_front_add_cart' ); add_action( 'woocommerce_checkout_cart_item_quantity', 'wtwh_echo_qty_front_add_cart' ); function wtwh_echo_qty_front_add_cart() { echo '<span class="qty-suff">(Tonnes)</span>'; }
woocommerce_checkout_cart_item_quantity是结账页面订单项数量区域的专属钩子,把你的后缀输出函数绑定到这个钩子上,就能让后缀显示在结账页面的数量输入旁边。- 顺便提一句:你原代码里的转义字符(
<和")可以直接换成正常的HTML标签和引号,代码更易读,执行效果完全一致。
如果上面的钩子还是没生效,试试woocommerce_cart_item_quantity钩子——这个钩子在购物车和结账的订单项数量模块里都会触发,给它设置稍高的优先级确保在数量输入渲染完成后再输出后缀:
add_action( 'woocommerce_after_quantity_input_field', 'wtwh_echo_qty_front_add_cart' ); add_action( 'woocommerce_cart_item_quantity', 'wtwh_echo_qty_front_add_cart', 20 ); function wtwh_echo_qty_front_add_cart() { echo '<span class="qty-suff">(Tonnes)</span>'; }
内容的提问来源于stack exchange,提问作者RyN
相关产品推荐
相关产品推荐

