php – WordPress Woocommerce – 使用update_post_meta添加产品
发布时间:2020-12-13 13:42:29 所属栏目:PHP教程 来源:网络整理
导读:我客户网站上的产品需要我通过产品添加的某些属性 – WordPress管理中的属性.在这个导入脚本中我编码我需要使用函数update_post_meta($post_id,$meta_key,$meta_value)来导入适当的属性和值. 目前我有这样的功能: update_post_meta( $post_id,'_product_att
我客户网站上的产品需要我通过产品添加的某些属性 – > WordPress管理中的属性.在这个导入脚本中我编码我需要使用函数update_post_meta($post_id,$meta_key,$meta_value)来导入适当的属性和值.
目前我有这样的功能: update_post_meta( $post_id,'_product_attributes',array()); 但是我不确定如何正确传递属性及其值?
是的,所以我花了一段时间来弄清楚自己,但我终于设法通过编写以下函数来做到这一点:
// @param int $post_id - The id of the post that you are setting the attributes for // @param array[] $attributes - This needs to be an array containing ALL your attributes so it can insert them in one go function wcproduct_set_attributes($post_id,$attributes) { $i = 0; // Loop through the attributes array foreach ($attributes as $name => $value) { $product_attributes[$i] = array ( 'name' => htmlspecialchars( stripslashes( $name ) ),// set attribute name 'value' => $value,// set attribute value 'position' => 1,'is_visible' => 1,'is_variation' => 1,'is_taxonomy' => 0 ); $i++; } // Now update the post with its new attributes update_post_meta($post_id,$product_attributes); } // Example on using this function // The attribute parameter that you pass along must contain all attributes for your product in one go // so that the wcproduct_set_attributes function can insert them into the correct meta field. $my_product_attributes = array('hdd_size' => $product->hdd_size,'ram_size' => $product->ram_size); // After inserting post wcproduct_set_attributes($post_id,$my_product_attributes); // Woohay done! 我希望这个功能可以帮助其他人,如果他们需要在WooCommerce中以编程方式导入多个属性! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |