将WooCommerce供应商插件添加到自动生成的SKU

时间:2019-01-07 作者:Gion Tummers

我想重写由生成的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 );

1 个回复
最合适的回答,由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:)

相关推荐

如何清理wp-content/plugins/wordpress-seo中不必要的文件?

我目前维护Wordpress网站7年。磁盘使用率最近已满,因此我需要定期检查自动备份并保存这些备份,然后将其从服务器中删除。当我检查时,插件文件夹中的wordpress seo文件夹(这是Yoast seo默认插件文件夹)占用了太多空间。据我所知,它充满了各种版本的插件文件。确切地说,它位于wordpress seo插件的js/dist文件夹中。它包含几种类型的小型javascript,每个名称的末尾都有某种序列或版本号,总容量约为250-300 MB。我可以清理这些文件吗?如果是,是否安全?如果我从以前