You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WooCommerce商品页将加入购物车按钮和变体选择器移至短描述上方

如何调整WooCommerce商品页面的Add To Cart按钮和Variation Selector位置

嘿,这个需求挺常见的,我给你分享个稳妥的实现方式——利用WooCommerce的钩子系统来调整元素位置,这种方法不用直接修改主题模板,能避免后续主题更新导致代码丢失的问题。

核心思路

WooCommerce商品页面的核心内容是通过woocommerce_single_product_summary这个钩子挂载的,默认的元素优先级顺序大概是:

  • 商品标题(优先级5)
  • 商品评分(优先级10)
  • 商品价格(优先级15)
  • 商品短描述(优先级20)
  • Add To Cart按钮/Variation Selector(优先级30)

我们要做的就是先把Add To Cart相关元素从原来的位置移除,再把它挂载到价格和短描述之间。

具体实现代码

把下面的代码添加到你的子主题functions.php文件里(一定要用子主题,别直接改父主题!):

// 移除默认位置的Add To Cart按钮及Variation选择器
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );

// 将Add To Cart按钮及Variation选择器添加到价格与短描述之间
add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 18 );

代码解释

  • remove_action:移除原来挂载在woocommerce_single_product_summary钩子上的woocommerce_template_single_add_to_cart函数(这个函数同时包含了简单商品的Add To Cart按钮和可变商品的Variation Selector),最后的30是默认的优先级,必须和原钩子的优先级一致才能移除成功。
  • add_action:把同一个函数重新挂载到同一个钩子上,但把优先级设为18——这个数值介于价格的15和短描述的20之间,这样元素就会显示在价格下方、短描述上方。

测试验证

保存代码后,刷新你的商品页面:

  • 简单商品:Add To Cart按钮会出现在价格和短描述之间
  • 可变商品:Variation Selector(属性选择下拉框)和Add To Cart按钮都会一起移动到目标位置

如果你的主题对商品页面结构做了自定义修改,可能需要调整优先级数值,或者检查主题是否重载了相关模板,但绝大多数情况下上面的代码都能生效。

内容的提问来源于stack exchange,提问作者Ged

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:06:37