如何用代码删除 WooCommerce 产品页的 SKU 显示?完整实用指南

WooCommerce 默认设置中,产品详情页会显示 SKU(库存单位)字段,用于区分商品库存。但在很多场景下,商家并不希望把 SKU 直接展示给用户,例如:

商品为定制产品,不用公开编号

页面视觉设计要求极简

SKU 对客户没有实际参考价值

下面会介绍如何用一段简单代码,隐藏 WooCommerce 产品页的 SKU 显示内容,不用插件,快速生效。

一、隐藏 SKU 显示的实现方式

想隐藏 WooCommerce 产品页的 SKU 显示?很简单!WooCommerce 是通过钩子(hook)机制来展示 SKU 的,只需要解除这个钩子就能轻松去掉它。下面是具体操作步骤:

1. 打开主题的 functions.php 文件

可以通过以下路径找到该文件:

WordPress 后台 → 外观 → 主题文件编辑器 → functions.php

建议使用子主题或代码片段插件(如 Code Snippets)进行修改,避免主题更新后被覆盖。

2. 添加以下代码

add_filter( ‘wc_product_sku_enabled’, ‘__return_false’ );

这段代码的含义是:把WooCommerce 中用来控制 SKU 显示的过滤器 wc_product_sku_enabled 设置为 false,禁用前台的 SKU 显示功能。

添加代码前:

二、验证效果

添加代码后:

保存并刷新产品页面后,会发现 SKU 不再显示在产品摘要信息中,也不会影响后台编辑页面中对 SKU 的管理。这意味着:

后台还可以输入和保存 SKU 信息

SKU 可用于订单管理、库存控制

前端访客会看不到 SKU 字段

三、补充:只隐藏简单商品的 SKU?

如果只想隐藏某一类商品的 SKU(例如仅限“简单商品”),可以使用以下更复杂的代码实现条件判断:

add_filter( ‘wc_product_sku_enabled’, ‘custom_hide_sku_for_simple_products’, 10, 2 );
function custom_hide_sku_for_simple_products( $enabled, $product ) {
if ( is_product() && $product->is_type( ‘simple’ ) ) {
return false;
}
return $enabled;
}

这个代码的逻辑是:只在单个产品页(is_product())且商品类型为“simple”时,才禁用 SKU 显示,其他商品类型还保留。

四、常见问题解答

Q1:这段代码对变体商品也有效吗?

默认的 add_filter( ‘wc_product_sku_enabled’, ‘__return_false’ ); 会影响所有商品类型,包括可变商品(variable)、分组商品(grouped)等。

如果只想屏蔽某些类型,参考上面提供的第二段代码并根据需要调整判断条件。

Q2:如何恢复 SKU 显示?

只要把添加的代码删除或注释掉,刷新页面就可以恢复默认显示。

五、结论

不用安装插件,不用修改模板,只要在主题的 functions.php 文件添加一行代码就可以让 WooCommerce 产品页更简洁。这是优化产品页面的第一步,后续我们还会分享更多 WooCommerce 定制技巧,打造专业级的电商网站。

Leave a Reply

您的电子邮箱地址不会被公开。 必填项已用 * 标注