[WordPress] 異なる価格とプログラムで追加する製品のバリエーションを WooCommerce 製品ページに反映されません。

スポンサーリンク

Question

シンプル置かせて

1 – データベース 2 の製品の色とサイズの属性を持つ製品を持って我々 はすべての変数がすべての色と「任意の」サイズの製品の 3 バリエーションが追加されます。

各サイズ 2 xl は選択の 3 xl (製品は t シャツ) より高い価格で製品をより多くのバリエーションを 2 を追加する関数書いたし、!

バリエーションが追加されます美しく、ただし、フロント エンド上の増加価格 限り、 商品の編集ページに移動し、更新ボタンをクリックしてでサイズを選択するときに、価格は変更されません。のみ、そのサイズを選択するとカート変更に追加する価格をが。

フロント エンドに各製品の更新] ボタンをクリックしてしなくても反映増加価格変動にどのようにですか?

答え

多分変数の各商品に対して

variable_product_sync()

を実行する必要がありますか?

function so_run_once(){

    $variable_products = get_posts( array(
            'posts_per_page'=> -1,
            'post_type'     => 'product',
            'fields'        => 'ids',
            'post_status'   => 'publish',
            'tax_query' => array(
            array(
                'taxonomy' => 'product_type',
                'field'    => 'slug',
                'terms'    => 'variable',
            ),
        )
    ) );

    if( $variable_products ) foreach( $variable_products as $product_id ){
        $_product = wc_get_product( $product_id );
        $_product->variable_product_sync();
    }
}
add_action( 'admin_init', 'so_run_once' );

http://stackoverflow.com/questions/27347431/woocommerce-adding-product-variations-programatically-with-different-price-will

スポンサーリンク

Leave a Reply