我正在尝试更新与 woocommerce 订单相关的数据。我可以检索现有数据但不能更新。在开始之前,我已经手动创建了一个订单,方法是转到仪表板的订单页面,单击添加订单按钮,然后填写运输和账单地址详细信息并添加一些产品。
然后我在我的主题中创建了woocommerce/checkout/form-pay.php的副本,并在其中添加了代码:
$invoiceid = $order->id;
echo invoiceid;
这将返回与 URL 中对应的 ID 号,所以我知道我在正确的位置。接下来,我尝试深入了解与订单相关的地址详细信息。在我有一个工作流程之前,为了保持简单,我将更新“Billing First Name”字段。我输入:
$billing_first_name = $order->get_billing_first_name();
echo $billing_first_name;
同样,它返回我在手动创建订单时在该字段中输入的值。到目前为止,一切都很好。但是,当我尝试更新值时,事情就崩溃了。
在阅读了关于 CRUD 的 WooCommerce 页面后,我尝试了:
$order->set_billing_first_name( 'Foo' );
$order->save;
但值不会更新。基于此页面,我也尝试过:
$order->update_meta_data( billing_first_name, 'foo' );
$order->save;
这也没有导致该字段被更新。
更新此字段的正确过程/语法是什么?
三国纷争