在我的WooCommerce目录中,我有两种类型的产品:一种使用5位数字的SKU,一种使用带有前缀“ P-”的SKU。
我需要导出不带前缀的产品SKU,以便始终具有5位代码。
我使用了以下代码,但是它不起作用:
add_action( 'woocommerce_thankyou', 'override_sku_and_product_name');
function override_sku_and_product_name( $order_id ) {
$order = wc_get_order( $order_id );
foreach( $order->get_items() as $item_id => $item_data ) {
$product = $item_data->get_product();
// get Product SKU
$sku = $product->get_sku();
if ( strlen( $sku ) > 5 ) {
// edit Product SKU
$product_sku = str_replace( 'P-', '', $sku );
// override Product SKU
wc_update_order_item_meta( $item_id, '_sku', $product_sku );
// get Product Name
$name = $product->get_name();
// edit Product Name
$product_name = str_replace( 'PALLET - ', '', $nome );
// override Product Name
wc_update_order_item_meta( $item_id, '_name', $product_name );
}
}
}