WP_Query 的所有参数及其讲解和实用案例

WP_Query 是 WordPress 提供的一个强大的查询工具,用于获取与当前页面或文章相关的内容。下面是 WP_Query 的所有参数及其讲解:

  1. 'author': 查询特定作者的文章。可以是作者 ID、作者登录名或作者昵称。

实用案例:查询作者为 "John Smith" 的所有文章。

$query = newWP_Query( array(
    'author_name' => 'john-smith'
) );
  1. 'cat': 查询特定分类目录的文章。可以是分类目录 ID、分类目录名称或分类目录 slug。

实用案例:查询分类目录为 "News" 的所有文章。

$query = newWP_Query( array(
    'category_name' => 'news'
) );
  1. 'category__and': 查询同时属于多个分类目录的文章。需要提供一个数组,包含多个分类目录 ID。

实用案例:查询同时属于分类目录 ID 2 和 3 的文章。

$query = newWP_Query( array(
    'category__and' => array( 2, 3 )
) );
  1. 'category__in': 查询属于多个分类目录中任意一个的文章。需要提供一个数组,包含多个分类目录 ID。

实用案例:查询属于分类目录 ID 2 或 3 的文章。

$query = newWP_Query( array(
    'category__in' => array( 2, 3 )
) );
  1. 'category__not_in': 查询不属于多个分类目录的文章。需要提供一个数组,包含多个分类目录 ID。

实用案例:查询不属于分类目录 ID 2 或 3 的文章。

$query = newWP_Query( array(
    'category__not_in' => array( 2, 3 )
) );
  1. 'tag': 查询特定标签的文章。可以是标签 ID、标签名称或标签 slug。

实用案例:查询标签为 "WordPress" 的所有文章。

$query = newWP_Query( array(
    'tag' => 'wordpress'
) );
  1. 'tag_id': 查询特定标签的文章。必须是标签 ID。

实用案例:查询标签 ID 5 的所有文章。

$query = newWP_Query( array(
    'tag_id' => 5
) );
  1. 'tag__and': 查询同时包含多个标签的文章。需要提供一个数组,包含多个标签 ID。

实用案例:查询同时包含标签 ID 5 和 6 的所有文章。

$query = newWP_Query( array(
    'tag__and' => array( 5, 6 )
) );
  1. 'tag__in': 查询包含多个标签中任意一个的文章。需要提供一个数组,包含多个标签 ID。

实用案例:查询包含标签 ID 5 或 6 的所有文章。

$query = newWP_Query( array(
    'tag__in' => array( 5, 6 )
) );
  1. 'tag__not_in': 查询不包含多个标签的文章。需要提供一个数组,包含多个标签 ID。

实用案例:查询不包含标签 ID 5 或 6 的文章。

$query = newWP_Query( array(
    'tag__not_in' => array( 5, 6 )
) );
  1. 'post_type': 查询特定类型的文章。可以是任何已注册的自定义文章类型或默认文章类型。

实用案例:查询类型为 "portfolio" 的所有文章。

$query = newWP_Query( array(
    'post_type' => 'portfolio'
) );
  1. 'post__in': 查询特定文章。需要提供一个数组,包含多个文章 ID。

实用案例:查询 ID 1、3 和 5 的文章。

$query = newWP_Query( array(
    'post__in' => array( 1, 3, 5 )
) );
  1. 'post__not_in': 查询除了特定文章之外的文章。需要提供一个数组,包含多个文章 ID。

实用案例:查询除了 ID 1、3 和 5 之外的所有文章。

$query = newWP_Query( array(
    'post__not_in' => array( 1, 3, 5 )
) );
  1. 's': 查询包含特定关键词的文章。

实用案例:查询包含关键词 "WordPress" 的所有文章。

$query = newWP_Query( array(
    's' => 'wordpress'
) );
  1. 'date_query': 查询在特定日期范围内发布的文章。需要提供一个数组,包含多个日期查询参数。

实用案例:查询在 2022 年 1 月 1 日至 2022 年 12 月 31 日之间发布的所有文章。

$query = newWP_Query( array(
    'date_query' => array(
        'after'  => '2022-01-01',
        'before' => '2022-12-31',
    ),
) );
  1. 'meta_query': 查询具有特定自定义字段值的文章。需要提供一个数组,包含多个自定义字段查询参数。

实用案例:查询具有自定义字段 "featured" 值为 "yes" 的所有文章。

$query = newWP_Query( array(
    'meta_query' => array(
        array(
            'key'   => 'featured',
            'value' => 'yes',
        ),
    ),
) );
  1. 'orderby': 指定结果集按哪个参数排序。可以是多个可排序的参数之一。

实用案例:按发布日期降序排列所有文章。

$query = newWP_Query( array(
    'orderby' => 'date',
    'order'   => 'DESC',
) );
  1. 'posts_per_page': 指定每页显示的文章数量。

实用案例:每页显示 10 篇文章。

$query = newWP_Query( array(
    'posts_per_page' => 10,
) );
  1. WP_Query循环查询案例

 'post', 
            'orderby' => 'date', 
            'order' => 'DESC',   
            
    );
    $query = new WP_Query( $args );
?>

have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); ?>

            
        

以上是一些常用的 WP_Query 参数及其实用案例。 WP_Query 支持许多其他参数,可以在 WP_Query 文档中查看完整列表和用法。

你可能感兴趣的:(wordpress,wordpress)