【发布时间】:2020-06-21 18:10:40
【问题描述】:
我正在使用 woocommerce 动态制作产品,需要将它们添加到购物车中。我有一个在 php 插件文件中调用它的 ajax 函数:
$name = $_POST['name'];
$price = $_POST['price'];
$post_id = wp_insert_post( array(
'post_title' => 'new Product',
'post_content' => 'here is product content',
'post_status' => 'publish',
'post_type' => "product",
'ID' => 1,
) );
wp_set_object_terms( $post_id, 'simple', 'product_type' );
update_post_meta( $post_id, '_visibility', 'visible' );
update_post_meta( $post_id, '_stock_status', 'instock');
update_post_meta( $post_id, 'total_sales', '0' );
update_post_meta( $post_id, '_downloadable', 'no' );
update_post_meta( $post_id, '_virtual', 'yes' );
update_post_meta( $post_id, '_regular_price', $price );
update_post_meta( $post_id, '_sale_price', '' );
update_post_meta( $post_id, '_purchase_note', '' );
update_post_meta( $post_id, '_featured', 'no' );
update_post_meta( $post_id, '_weight', '' );
update_post_meta( $post_id, '_length', '' );
update_post_meta( $post_id, '_width', '' );
update_post_meta( $post_id, '_height', '' );
update_post_meta( $post_id, '_sku', '' );
update_post_meta( $post_id, '_product_attributes', array() );
update_post_meta( $post_id, '_sale_price_dates_from', '' );
update_post_meta( $post_id, '_sale_price_dates_to', '' );
update_post_meta( $post_id, '_price', '' );
update_post_meta( $post_id, '_sold_individually', '' );
update_post_meta( $post_id, '_manage_stock', 'no' );
update_post_meta( $post_id, '_backorders', 'no' );
update_post_meta( $post_id, 'product_id', '444' );
update_post_meta( $post_id, '_stock', '' );
WC()->cart->add_to_cart($post_id);
}
这会创建一个新产品,但不会将其添加到购物车中。有人知道为什么吗?
【问题讨论】:
-
为什么将 ID 指定为静态?
标签: javascript php wordpress woocommerce plugins