我有一个包含现有产品的WooCommerce网站。目前,产品没有尺寸,我希望通过编程方式按ID更新每个产品的尺寸。我以为我可以使用set_height()来做到这一点,但它没有像我预期的那样工作。
这是我在functions.php中的代码,用于快速测试:
$_product = new WC_Product(1234);
var_dump($_product);
$_product->set_height('2');
echo $_product->get_height();
这似乎是基于var_dump和get_height()echo语句。 var_dump是正确的产品信息,echo语句输出的数字是" 2"。但是,这似乎并没有真正保存产品数据。运行此代码然后查看产品后,它的高度值不应为2,而不是像以前一样空白。
我在这里迷失了,有关如何让它真正更新产品高度的任何想法?
感谢。
答案 0 :(得分:0)
在您的情况下,有两种方法可以更新产品尺寸,例如高度:
1)使用 WC_Product
setter方法+ save()
方法:
$_product = wc_get_product(1234); // Get an instance of the WC_Product object
$_product->set_height('2'); // Set your new height
$_product->save(); // <== <== Save the new data set in your product
2)使用产品ID中的update_post_meta()
:
update_post_meta( 1234, '_height', 2 );