操纵 wordpress REST API 搜索查询

Manipulate wordpress REST API search query

我想添加一个自定义字段以包含在我的搜索查询中。这是通过 meta_query 完成的,我完全知道这一点,但问题是,我不知道该挂在哪里以根据我的需要操作查询参数。

所以我正在寻找一个过滤器,以进入 REST API 搜索请求 (/wp/v2/search),有什么线索吗?

您可以实现以下钩子:

add_filter( 'rest_post_search_query', 'rest_search_add_custom_field_cb', 10, 2 );
function rest_search_add_custom_field_cb( $query_args, $request ) {
    // filter...

    return $query_args;
}

您可以修改搜索查询并包含其他参数,例如元查询等。

WordPress 将在以下上下文中使用此过滤器的 return 值:

...
$query->query( $query_args );
...