Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress 添加rest\u post\u查询后无法获取所有帖子_Wordpress_Wordpress Rest Api - Fatal编程技术网

Wordpress 添加rest\u post\u查询后无法获取所有帖子

Wordpress 添加rest\u post\u查询后无法获取所有帖子,wordpress,wordpress-rest-api,Wordpress,Wordpress Rest Api,我添加了一个rest\u post\u查询,如 add_filter( 'rest_books_query', function( $args ) { $args['meta_query'] = array( array( 'key' => 'title', 'value' => esc_sql( $_GET['title'] ), ) ); return $args; 所以

我添加了一个rest\u post\u查询,如

add_filter( 'rest_books_query', function( $args ) {
    $args['meta_query'] = array(
        array(
            'key'   => 'title',
            'value' => esc_sql( $_GET['title'] ),
        )
    );
    return $args;
所以像wp json/wp/v2/books这样的查询?title=someTitle工作,
但我现在无法查询所有帖子,比如wp-json/wp/v2/books不再工作了。我应该如何更改它以便它可以同时查询这两个?谢谢

据我所知,您希望使用相同的API路径来获取所有帖子,或者按标题发布。如果是这样,您可以简单地执行以下操作:

add_filter( 'rest_books_query', function( $args ) {
    if(isset($_GET['title'])){
      //better push to meta_query array in case there is other meta_query already here
      $args['meta_query'][] = [
            'key'   => 'title',
            'value' => esc_sql( $_GET['title'] ),
      ];
    }

    return $args;
});
如果未提供
title
参数,则不会将
meta_查询
推送到查询参数数组中

请注意,您还可以声明一个新的API路由,以完全满足您的要求