WooCommerce如何配置产品URL为/product/SKU/产品名格式
WooCommerce 产品URL插入SKU实现方案(目标结构:/product/{SKU}/{产品名})
核心实现代码
将以下代码添加到当前主题的functions.php文件,或者自定义功能插件中即可:
// 注册自定义重写规则,识别带SKU的产品URL add_action('init', function() { add_rewrite_tag('%product_sku%', '([a-zA-Z0-9_-]+)'); add_rewrite_rule( '^product/([a-zA-Z0-9_-]+)/([^/]+)/?$', 'index.php?product=$matches[2]&product_sku=$matches[1]', 'top' ); }); // 重写WooCommerce产品永久链接生成逻辑 add_filter('post_type_link', function($post_link, $post) { if ($post->post_type !== 'product') { return $post_link; } $product = wc_get_product($post->ID); $sku = $product ? sanitize_title($product->get_sku()) : ''; // 未设置SKU的产品保留原有链接结构,避免报错 if (empty($sku)) { return $post_link; } return home_url(user_trailingslashit("product/{$sku}/{$post->post_name}")); }, 10, 2);
生效操作
- 代码添加完成后,登录WordPress后台进入「设置」-「固定链接」页面
- 无需修改任何配置,直接滚动到页面底部点击「保存更改」,即可刷新重写规则,新URL结构正式生效
兼容说明
- 支持WooCommerce 3.0及以上版本,不会和产品分类、标签、店铺页面的原有URL规则冲突
- 未填写SKU的产品会自动 fallback 到原生链接结构,不会出现死链
- 若旧版产品链接已经被搜索引擎收录,建议补充301重定向规则,将旧链接跳转到对应新链接,避免SEO权重流失
内容的提问来源于stack exchange,提问作者Behzad Ghotbifar
相关产品推荐
相关产品推荐

