WordPress模板标签get_posts用于获取文章信息,通常用于输出最新文章列表、随机文章、指定分类文章等等,在用WordPress制作CMS网站时非常有用。

get_posts( array $args = null )

函数参数

$args

数组或字符串值

get_posts()函数$args参数默认的值如下:

$defaults = array(
	'numberposts' => 5,
	'category' => 0,
	'orderby' => 'date',
	'order' => 'DESC',
	'include' => array(),
	'exclude' => array(),
	'meta_key' => '',
	'meta_value' => '',
	'post_type' => 'post',
	'suppress_filters' => true
);

get_posts()函数$args参数可用的值如下:

orderby

字符串值,默认值:date

设置排序的类型。

  • none:不使用排序;
  • ID:按ID排序;
  • author:按作者排序;
  • title:按标题排序;
  • date:按日期排序;
  • modified:按文章的修改日期排序;
  • parent:按父级文章ID排序;
  • rand:随机顺序;
  • comment_count:按评论数量排序;
  • menu_order:如果页面,有一个排序设置项,则按这个设置排序;
  • meta_value:按元数据排序
  • meta_value_num:按元数据排序;
  • post__in:按照传递参数的顺序。

numberposts

整数型,默认值:5

指定输出文章的数量。

category

整数型,默认值:0

指定分类的ID,输出该分类下的文章,默认所有分类。

order

字符串值,默认值:DESC

指定排序的方式。

  • DESC:降序;
  • ASC:升序。

include

字符串或数组,默认为空

指定文章的ID,以输出这些文章的信息。

exclude

字符串或数组,默认为空

指定文章的ID,以排除这些文章。

meta_key

字符串值,默认为空

自定义字段的名称。

meta_value

字符串值,默认为空

自定义字段的值。

post_type

字符串值,默认值:post

文章类型。

  • post:文章;
  • page:页面;
  • revision:文章的修订版本;
  • attachment:附件;
  • 自定义文章类型。

suppress_filters

布尔值,默认值:true

是否使用过滤器。

函数使用示例

输出5篇分类1的文章

<ul>
<?php
	global $post;
	$args = array( 'numberposts' => 5, 'category' => 1 );
	$myposts = get_posts( $args );
	foreach ( $myposts as $post ) : 
		setup_postdata( $post );
?>
	<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php
	endforeach;
	wp_reset_postdata();
?>
</ul>

扩展阅读

get_posts()函数位于:wp-includes/post.php

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。