php – Woocommerce:使用现有属性为现有产品添加变体
发布时间:2020-12-13 22:26:57 所属栏目:PHP教程 来源:网络整理
导读:我试图找出如何为现有产品添加变体的方式,而不是最初的变量产品. 所以我有一个产品衬衫,我有另外一个有不同颜色的库存,所以我的产品进口商需要为这个现有产品添加一个新的变化. wp_set_object_terms ($product_id,'black','pa_color',1);$attr_data = Array(
我试图找出如何为现有产品添加变体的方式,而不是最初的变量产品.
所以我有一个产品衬衫,我有另外一个有不同颜色的库存,所以我的产品进口商需要为这个现有产品添加一个新的变化. wp_set_object_terms ($product_id,'black','pa_color',1); $attr_data = Array( 'pa_color'=>Array( 'name' => 'pa_color','value' => '','is_visible' => '1','is_variation' => '1','is_taxonomy' => '1' ) ); update_post_meta($product_id,'_product_attributes',$attr_data); 这会为我的产品添加颜色,但会破坏产品上的所有现有属性.拉动现有的_product_attributes只会给我序列化的属性,所以只是在所有内容之上添加新的变体是行不通的. 有任何想法吗? 解决方法
基本上问题是product_attribute不是单个变量,似乎wp_set_object_terms中没有合并
我这样解决了我的问题: wp_set_object_terms ($product_id,1); $attr_data = Array( 'pa_color'=>Array( 'name' => 'pa_color','is_taxonomy' => '1' ) ); $product = new WC_Product($product_id); update_post_meta( $product_id,array_merge($product->get_attributes(),$attr_data) ); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |