我有一个脚本以编程方式更新woocommerce产品的价格。 现在我正在尝试禁用/设置私有变量,如果我的Feed没有价格。
以下是代码:
$query = "UPDATE wp_posts SET
post_status = %s
WHERE ID = %s";
$result = $wpdb->get_results( $wpdb->prepare($query, 'private', $post_id));
虽然db似乎正确更新,但更改不会反映在wp中。事实上,产品变化在后端和前端都完全消失。
似乎wp根本没有看到变化...
作为测试,我尝试了反向并将private
变体设置回public
,结果相同。
我还尝试在使用以下内容更新数据库后同步变体:
$_product = wc_get_product( $post_parent_id );
$_product->variable_product_sync();
或
do_action( 'woocommerce_variable_product_sync', $post_parent_id );
但结果是一样的。
有人知道这里发生了什么吗?
由于
答案 0 :(得分:0)
好吧这是一个f#* ng错字:
正确的值为publish
而不是public