欢迎光临好主题官网!致力于 WordPress 企业主题定制开发及 WP外贸模板下载。

WooCommerce 商品分类 URL 优化:彻底去掉 product-category

文章目录

在使用 WooCommerce 建立电商网站时,很多站长都会注意到一个细节:
商品分类页面的链接通常带有 /product-category/ 前缀,例如:

https://yourdomain.com/product-category/shoes/

这样的链接虽然能正常使用,但对 SEO 友好度和用户体验并不是最优。很多人更希望分类链接简洁一些,比如:

https://yourdomain.com/shoes/

本文将带你了解 如何删除 WooCommerce 商品分类 URL 上的 product-category 前缀,并给出几种不同的解决方案。

为什么要去掉 product-category

  1. URL 简洁:短链接更容易被用户记住。
  2. SEO 优化:搜索引擎更喜欢层级清晰、简洁的 URL。
  3. 提升转化率:用户在浏览器中看到简短直观的链接,更愿意点击和分享。

方法一:通过 WooCommerce 自带设置

实际上 WooCommerce 并没有直接提供去掉 product-category 的选项,但我们可以通过 固定链接设置 做部分优化:

  1. 登录 WordPress 后台
  2. 打开 设置 > 固定链接
  3. 找到 商品固定链接 部分
  4. 将 “商品分类基础” 留空

这样可以一定程度上优化 URL,但 WooCommerce 默认还是会加上 product-category 前缀。

方法二:使用插件实现

如果你不熟悉代码,可以用插件来解决:

推荐插件:

  • Permalink Manager Lite
  • Remove Taxonomy Base Slug

安装并启用后,通常只需在设置中选择删除分类基础,系统就会自动去掉 product-category

方法三:代码方式实现(推荐开发者使用)

如果你希望保持轻量,不依赖插件,可以在主题的 functions.php 或者自定义插件中加入以下代码:

// 移除 product-category 前缀
add_filter('request', function ($vars) {
    if (isset($vars['product_cat'])) {
        $vars['product_cat'] = str_replace('product-category/', '', $vars['product_cat']);
    }
    return $vars;
});

// 重写规则
add_action('init', function () {
    global $wp_rewrite;
    $wp_rewrite->extra_permastructs['product_cat']['struct'] = '%product_cat%';
});

⚠️ 注意:

  • 修改后需要 到后台 → 设置 → 固定链接 → 保存更改(刷新重写规则)。
  • 如果和其他分类或页面别名冲突,可能会出现 404,需要避免重名。

方法四:高级优化方案(结合 SEO)

在实际项目中,删除 product-category 后,还需要注意:

  1. 301 重定向:将旧的 URL 自动跳转到新的 URL,避免 SEO 权重丢失。
    • 可用 Rank MathYoast SEO 插件设置。
  2. 避免冲突:分类名称不要和文章、页面别名重复。
  3. 站点地图更新:删除前缀后,重新生成并提交 sitemap.xml。

总结

在 WooCommerce 中删除 URL 上的 product-category 前缀,有三种常见方法:

  1. 后台固定链接设置(有限优化)
  2. 使用插件(适合小白用户)
  3. 代码实现(适合开发者和对性能有要求的网站)

无论选择哪种方式,记得一定要做好 301 重定向站点地图更新,这样才能保证对 SEO 友好,同时也能提升用户体验。

👉 如果你的网站正在做 SEO 优化,建议结合 代码方式 + SEO 插件的重定向功能,实现简洁、稳定、SEO 友好的商品分类链接。

 

本文由 好主题 原创整理,致力于分享实用的 WordPress 建站知识与主题开发经验。 我们专注于提供高质量的 WordPress企业主题 资源,帮助中小企业轻松构建专业网站。 转载请注明来源,并保留原文链接,感谢您的支持与理解。

发表回复

相关文章
主题推荐
还没有账号?

会员注册

成为会员,获得更多专属优惠!

验证码: 加载中... =

已有账号?