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

如何在WooCommerce产品附加信息中添加分类并调整SKU显示位置

WooCommerce附加信息标签:添加产品分类并调整SKU位置

要实现同时展示产品分类,并将SKU移到附加信息表格顶部,你可以通过修改WooCommerce的属性显示过滤器来完成,具体代码和步骤如下:

核心代码实现

将以下代码添加到你的主题functions.php文件,或使用自定义代码插件(如Code Snippets):

// 移除原有可能重复的SKU显示钩子(如果之前有单独添加SKU的脚本,请取消下面这行注释并替换对应函数名)
// remove_action( 'woocommerce_product_additional_information', '原SKU显示函数名' );

// 修改附加信息属性:添加分类+调整SKU到顶部
add_filter( 'woocommerce_display_product_attributes', 'custom_add_category_and_reorder_sku', 10, 2 );
function custom_add_category_and_reorder_sku( $attributes, $product ) {
    // 1. 添加产品分类到附加信息
    $categories = wp_get_post_terms( $product->get_id(), 'product_cat', array( 'fields' => 'names' ) );
    if ( ! empty( $categories ) ) {
        $attributes['product_category'] = array(
            'label' => __( '产品分类', 'woocommerce' ),
            'value' => implode( ', ', $categories ),
        );
    }

    // 2. 将SKU移到属性列表顶部
    if ( isset( $attributes['sku'] ) ) {
        $sku_attr = $attributes['sku'];
        unset( $attributes['sku'] );
        $attributes = array_merge( array( 'sku' => $sku_attr ), $attributes );
    }

    return $attributes;
}

代码说明

  • 添加产品分类:通过wp_get_post_terms获取当前产品的分类名称,将其作为新属性添加到附加信息的属性数组中,标签显示为“产品分类”,多个分类用逗号分隔。
  • 调整SKU位置:先从属性数组中移除默认的SKU项,再通过array_merge将SKU项放到数组的最开头,这样在前端表格中就会显示为第一行。
  • 移除原有SKU脚本:如果你之前有单独添加SKU的自定义脚本,需要取消代码中remove_action的注释,并替换为你原来的SKU显示函数名,避免重复显示SKU。

效果说明

修改后,产品单个页面的附加信息标签内:

  • 第一行显示SKU
  • 后续会显示产品分类,以及其他默认的产品属性(如尺寸、重量等)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 02:05:10