WooCommerce REST API v3-按修改日期过滤产品

时间:2020-09-23 12:35:36

标签: wordpress woocommerce

我是WooCommerce开发的新手,在Wordpress插件开发方面经验很少。我正在尝试使用WooCommerce REST API来检索在特定日期之后修改的所有产品。

https://woocommerce.github.io/woocommerce-rest-api-docs/#list-all-products此处提供的文档中,我可以看到可以使用名为 date 的参数按日期过滤产品,该参数引用了产品的创建日期。但是我想使用产品的修改日期来检索它。

我找不到有关WooCommerce挂钩的任何适当文档,以扩展此功能。任何对此的参考或指导将不胜感激。

1 个答案:

答案 0 :(得分:1)

经过数小时的不同文档和API干预后,以下是适用于我的解决方案。

add_filter('woocommerce_rest_product_object_query', function(array $args, \WP_REST_Request $request) {
    $modified_after = $request->get_param('modified_after');

    if (!$modified_after) {
        return $args;
    }

    $args['date_query'][0]['column'] = 'post_modified';
    $args['date_query'][0]['after']  = $modified_after;

    return $args;

}, 10, 2);

请注意,此版本适用于v3版本(在撰写此答案时为最新版本),它可能会或可能不适用于以前的版本。