我想重写由生成的SKUWooCommerce Product SKU Generator 并在其前面加上WooCommerce Product Vendors 转换为以下格式:[供应商Slug][生成的SKU]。E、 g.“GT1234”、“JD1235”等。。。如果产品作者不是供应商或订单未与供应商关联,则前缀应默认为“XX”。
对我来说,主要的困难是为添加新产品的用户检索供应商slug。我该怎么做呢?任何能让我走的东西都很感激!
function filter_wc_sku_generator_sku( $product_sku, $product ) {
$vendor_slug = \'???\'
if (!$vendor_slug) {
$product_sku = \'XX\' . $product_sku;
} else {
$product_sku = $vendor_slug . $product_sku;
}
return $product_sku;
};
add_filter( \'wc_sku_generator_sku\', \'filter_wc_sku_generator_sku\', 10, 2 );
最合适的回答,由SO网友:Junnel Gallemaso 整理而成
有一门课WC_Product_Vendors_Utils
您可以使用的,例如。
$vendor = WC_Product_Vendors_Utils::is_vendor_product( $item["product_vendors_product_id"] ); //replace this with the product ID
if ( ! empty( $vendor[0] ) ) {
$vendor_data = WC_Product_Vendors_Utils::get_vendor_data_by_id( $vendor[0]->term_id );
if ( ! empty( $vendor_data ) ) {
$vendor_slug = $vendor_data[\'slug\']; // I am not sure of the correct value here but you can var_dump() just to make sure
}
}
希望这将帮助您开始正确生成SKU:)