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

如何将JS脚本中href的/cart替换为WordPress默认购物车链接wc_get_cart_url()

解决方案

没问题,这事儿很简单,咱们直接修改代码里的href属性部分就行——因为你是在WordPress+WooCommerce环境里,需要把静态的/cart替换成WooCommerce提供的动态购物车链接函数,同时要注意PHP与JS/HTML的混合写法规范:

修改后的完整代码(适用于PHP模板文件)

if ($('.header').width() < 767 ){ 
  $(".header__search").html('<a href="<?php echo esc_url(wc_get_cart_url()); ?>" class="d-block xxxd"><img src="/wp-content/themes/img/cart.png" width="16px" /><span class="badge badge-warning" id="lblCartCount">'+$('#barba-wrapper > div > header > div.header__main > div > div.header__user > ul > li:nth-child(2) > a > span').text()+'</span></a>'); 
}

关键说明

  • 用<?php echo esc_url(wc_get_cart_url()); ?>替代原有的/cart:
    • wc_get_cart_url()是WooCommerce官方提供的函数,会自动返回当前站点的正确购物车页面URL(不管你有没有修改过购物车的slug)
    • 加上esc_url()是WordPress的最佳实践,用来转义URL,避免XSS安全风险和格式错误
  • 注意:这段代码必须放在PHP模板文件里(比如主题的header.php、自定义的functions.php输出脚本,或者页面模板),这样PHP代码才能被服务器正确解析执行。

如果你的代码在单独的.js文件中

如果这段JS是放在独立的.js文件里(PHP代码无法直接执行),可以先在PHP模板中把购物车URL存入全局变量,再在JS中调用:

  1. 在PHP模板(比如header.php)里添加全局变量:
<script>
// 定义全局购物车URL变量
var wcCartUrl = '<?php echo esc_url(wc_get_cart_url()); ?>';
</script>
  1. 修改你的JS代码:
if ($('.header').width() < 767 ){ 
  $(".header__search").html('<a href="' + wcCartUrl + '" class="d-block xxxd"><img src="/wp-content/themes/img/cart.png" width="16px" /><span class="badge badge-warning" id="lblCartCount">'+$('#barba-wrapper > div > header > div.header__main > div > div.header__user > ul > li:nth-child(2) > a > span').text()+'</span></a>'); 
}

另外,原代码末尾多了一个多余的});,我已经帮你去掉了,避免语法错误~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 07:39:14