当前位置:首页 > PHP教程 > PHP常见问题

WordPress中用于获取文章作者与分类信息的方法整理

作者
查询和某些作者(用户)有关的文章,可以使用 4 个参数:

  • author(整数):用户 id
  • author_name(字符串):用户的昵称(“user_nicename” 字段)
  • author__in(数组):用户 id
  • author__not_in(数组):用户 id
  • 获取一个作者的文章

    根据用户 id 获取:

    $query = new wp_query( 'author=123' );
    

    根据用户的昵称(“user_nicename” 字段)获取:

    $query = new wp_query( 'author_name=rami' );
    

    获取多个作者的文章

    根据用户 id 获取多个作者的文章:

    $query = new wp_query( 'author=2,6,17,38' );
    

    排除作者的文章

    排除一个作者可以使用用户 id 前边加上 “-” 的方式:

    $query = new wp_query( 'author=-12' );
    

    多作者查询

    获取多个作者的文章:

    $query = new wp_query( array( 'author__in' => array( 2, 6 ) ) );
    

    排除多个作者的文章:

    $query = new wp_query( array( 'author__not_in' => array( 2, 6 ) ) );
    
    

    分类

    关于分类有 5 个可用的参数:

  • cat(整数):分类 id
  • category_name(字符串):分类别名
  • category__and(数组):分类 id
  • category__in(数组):分类 id
  • category__not_in(数组):分类 id
  • 获取一个分类的文章

    根据分类的 id 获取一个分类的文章(包含此分类的子分类):

    $query = new wp_query( 'cat=4' );
    

    根据分类的别名获取一个分类的文章(包含此分类的子分类):

    $query = new wp_query( 'category_name=staff' );
    

    根据分类的 id 获取一个分类的文章(不包含此分类的子分类):

    $query = new wp_query( 'category__in=4' );
    

    获取多个分类的文章

    根据分类的 id 获取多个分类的文章:

    $query = new wp_query( 'cat=2,6,17,38' );
    

    根据分类别名获取多个分类的文章:

    $query = new wp_query( 'category_name=staff,news' );
    

    根据分类别名获取同时拥有几个分类的文章:

    $query = new wp_query( 'category_name=staff+news' );
    

    排除分类

    想要排除一些分类只需要在分类 id 前加上 “-” 号:

    $query = new wp_query( 'cat=-12,-34,-56' );
    

    多分类查询

    获取同时有多个分类的文章,下边的代码会获取必须同时拥有 id 为 2 和 6 的分类的文章:

    $query = new wp_query( array( 'category__and' => array( 2, 6 ) ) );
    

    获取多个分类的文章,不包含其子分类,下边的代码获取了拥有 id 为 2 或者 id 为 6 的分类的文章:

    $query = new wp_query( array( 'category__in' => array( 2, 6 ) ) );
    

    排除一些分类的文章:

    $query = new wp_query( array( 'category__not_in' => array( 2, 6 ) ) );
    
    


    【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!