我做了一个简单的插件,让用户一步一步地选择他想要的产品。它使用4个步骤,其中3个是属性选择。现在我遇到的问题是直接链接需要variation_id。生成的产品链接:
/cart/?add-to-cart=3772&attribute_pa_izmers=20&attribute_pa_forma=kaste&attribute_pa_krasas=spilgtas
为了让下面的链接工作,我还需要通过variation_id。然而,如果不手动传递每一个variation_id组合,我无法找到获取它的方法。是否有一个钩子/动作可以用于根据我传递的属性获取变化id?或添加产品到购物车没有通过变化ID?
我已经在woocommerce论坛上问过了,但没有用。
提前感谢。
您可以从WC\u Ajax::get\u variation()
方法中借用一些代码,因为当您为普通变量产品使用select属性时,会运行该方法。
$data_store = WC_Data_Store::load( 'product' );
$variation_id = $data_store->find_matching_product_variation( $variable_product, wp_unslash( $_POST ) );
需要WooCommerce 3.0