预计阅读时间: 2 分钟

在 WooCommerce 系统中,商品的 SKU 是保存在postmeta数据表中的,字段名称为 _sku,以这个信息为前提,实现自动生成商品 SKU 的功能就简单了。下面是具体的代码

在下面的代码中,我们把功能挂载到了 save_post 这个 Hook 上,这个 Hook 在保存文章后执行。

首先我们判断文章类型是否为「product」,如果是,我们是用 WordPress 内置的 wp_generate_uuid4 函数生成一个随机的代码,并清理到其中的「-」字符,然后判断商品是否已有 SKU,如果没有,就添加生成的产品 SKU 到文章字段中,如果已有,就不再做处理了。


add_action('save_post', function ($post_id)
{
    if (get_post_type($post_id) === 'product') {
        $product_number = str_replace('-', '', wp_generate_uuid4());

        $sku = get_post_meta($post_id, '_sku', true);

        if (empty($sku)) {
            update_post_meta($post_id, '_sku', $product_number);
        }
    }
});

在电商管理中,SKU 是用来判断商品唯一性的参数,商品的价格、属性都是关联到这个参数上面的,如无特殊需要,不建议这么轻率的处理 SKU,如果有 ERP 或库存管理系统,建议和这些系统结合起来进行管理。

此文章对你有帮助吗? 已有 0 人说这篇文章是有用的。