/**
* Sets product SKU.
*
* @see https://wpcodebook.com/woocommerce-set-product-sku-programmatically/
*/
add_filter( 'woocommerce_product_get_sku', function ( $sku, $product ) {
return $product->get_id();
}, 10, 2 );The example sets WooCommerce product SKU to product ID. Another example adds up to six leading zeros and includes a custom prefix in SKU:
return sprintf( 'MY_PREFIX-%06s', $product->get_id() );
Variations
/**
* Sets variation SKU.
*
* @see https://wpcodebook.com/woocommerce-set-product-sku-programmatically/
*/
add_filter( 'woocommerce_product_variation_get_sku', function ( $sku, $variation ) {
return $variation->get_parent_id() . '-' . $variation->get_id();
}, 10, 2 );