获取某个类别中的最新帖子

时间:2017-09-08 作者:Sumit Singh

我正在使用以下代码从类别中获取最新帖子

www.mysite.com/wp-json/mynamespace/v1/latest-posts?category=it

但显示错误

enter image description here

<?php 

        /**
         *
         * Get The latest post from a category !
         * @param array $params Options for the function.
           * @return string|null Post title for the latest,? * or null if none
         *
         */


         function get_latest_post ( $params ){
            $post = get_posts( array(
              \'category\'      => $category,
                \'posts_per_page\'  => 1,
                \'offset\'      => 0
          ) );

            if( empty( $post ) ){
                return null;
            }

            return $post[0]->post_title;
         }

         // Register the rest route here.

         add_action( \'rest_api_init\', function () {

                register_rest_route( \'mynamespace/v1\', \'latest-post\',array(

                    \'methods\'  => \'GET\',
                    \'callback\' => \'get_latest_post\'

                ) );

         } );

    ?>

1 个回复
SO网友:HU ist Sebastian

首先,您注册了路径“latest post”,但您使用的URL是“latest posts”。

第二:在“get\\u latest\\u post”函数中,使用变量$category,但它没有设置任何位置。

修复如下功能:

function get_latest_post ( $params ){
       if(isset($params[\'category\'])){
        $post = get_posts( array(
          \'category\'      => $params[\'category\'],
            \'posts_per_page\'  => 1,
            \'offset\'      => 0
      ) );

        if( empty( $post ) ){
            return new WP_Error( \'no_post_found\', \'there is no post in this category\', array( \'status\' => 404 ) );
        }

    $returnage = new WP_REST_Response( array(\'post_title\' => $post[0]->post_title) );
    $returnage->set_status( 200 );
        return $returnage;
     } else { 
return new WP_Error( \'no_category_given\', \'please add category parameter\', array( \'status\' => 404 ) );
  }
 } 
(WP\\u错误和WP\\u REST\\u响应确保从函数中获得有效的JSON REST API响应)

结束

相关推荐

Dynamic Endpoints

我在WordPress外部有一个数据库表,需要为其创建端点。我已经创建了一个页面/cars/ 我计划使用页面模板生成链接。我希望url看起来像/cars/camaro/ ()/cars/%model%/ ). 起初,我认为我可以使用端点,但不知道如何根据从模型表中提取的段塞使它们动态。我也不确定使用Permalink结构标签是更容易还是更好。我甚至不完全确定从哪里开始,我以前创建过“静态”端点,所以我有一个基础可以跳出,但当我到达request 我不知道该怎么办。/** * Add endpoi