我正在寻找一种方法来获取在特定日期之后更新的订单列表。我使用Woocommerce REST API来访问这些订单。在API文档中,我发现有一个'之后' GET调用中的参数,但这仅过滤在特定日期之后发布的订单,而不是更新。
非常感谢!
答案 0 :(得分:1)
更新后的答案:
在自定义插件中添加以下代码。
function modify_orders_after_query($request) {
$request['date_query'][0]['column'] = 'post_modified';
return $request;
}
add_filter( "woocommerce_rest_shop_order_query", 'modify_orders_after_query' );
然后你可以向你的API网址发出GET请求,如下所示:
http://example.com/wp-json/wc/v1/orders?after=2016-10-10T10:10:10Z
注意:请在使用此方法之前进行测试。
<强>旧版:强>
这可以通过updated_at_min
来实现
请检查wp-content\plugins\woocommerce\includes\api\class-wc-api-resource.php
:Line 157
和wp-content\plugins\woocommerce\includes\api\class-wc-api-orders.php
:Line 723
答案 1 :(得分:0)
我已经使用上面的提示设法解决了这个问题。在插件文件夹中添加了一个文件名称为以下内容的文件夹:
<?php
/**
* Plugin Name: wooCommerceFilter
* Description: Change the ORDER API endpoint to consider date_modified.
* Version: 1.0
*/
function modify_orders_after_query($request) {
$request['date_query'][0]['column'] = 'post_modified';
return $request;
}
add_filter( "woocommerce_rest_orders_prepare_object_query", 'modify_orders_after_query' );
?>