wordpress开发教程(WordPress 如何使用分页相关的参数)

第五讲关于分页相关的参数,分页相关的参数比较多,先简单罗列一下:

  • nopaging (boolean) – 如果为 true 则显示所有文章,false 则分页显示,默认为 false。
  • posts_per_page (int) – 每页显示的文章数量。使用 ‘posts_per_page’=>-1 则显示所有文章(此时 “offset” 参数将被忽略)。注意:如果 feed 中,则 WordPress 会使用存储的 “posts_per_rss” 选项覆盖此参数。
  • posts_per_archive_page (int) – 设置存档页面每页显示的文章数量。当模板函数 is_archive() 和 is_search() 为 true 时会覆盖 posts_per_page 参数。
  • offset (int) – 设置偏移的文章数量。特别注意:设置偏移量参数会覆盖/忽略 paged 参数,并破坏分页,并且 “posts_per_page” 为-1(显示所有文章)时,offset 参数会被忽略。
  • paged (int) – 第几页。使用“较早的文章”链接时,显示通常仅在X页上显示的文章。
  • page (int) – 静态首面的第几页,显示通常仅在静态首页的第X页上显示的文章。
  • ignore_sticky_posts (boolean) – 忽略置顶的文章,默认为 false,不忽略,就是在文章列表前面显示置顶文章。

每页显示3篇文章:

$query = new WP_Query( array( 'posts_per_page' => 3 ) );

在一页上显示所有文章:

$query = new WP_Query( array( 'posts_per_page' => -1 ) );

通过屏蔽分页来显示所有文章:

$query = new WP_Query( array( 'nopaging' => true ) );

从第4篇文章开始显示:

$query = new WP_Query( array( 'offset' => 3 ) );

每页显示5篇文章,然后偏移最近的三篇:

$query = new WP_Query( array( 'posts_per_page' => 5, 'offset' => 3 ) );

显示第6页的文章:

$query = new WP_Query( array( 'paged' => 6 ) );

显示当前页的文章:

$query = new WP_Query( array( 'paged' => get_query_var( 'paged' ) ) );

如果设置了 paged 参数,则显示当前页的文章,未设置,则第一页的文章。

$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
$query = new WP_Query( array( 'paged' => $paged ) );

如果你想 get_query_var('page') 在页面模板中也能生效,那首先要设置该页为静态首页。因为 ‘page’ 查询变量同时也是用于文章或者页面的内容中含有 <!--nextpage--> 中用于页面导航。

在静态首页显示当前页面的文章:

$paged = ( get_query_var('page') ) ? get_query_var('page') : 1;
$query = new WP_Query( array( 'paged' => $paged ) );

仅显示第一篇置顶文章:

$sticky = get_option( 'sticky_posts' );
$query = new WP_Query( array( 'p' => $sticky[0] ) );

仅显示第一篇置顶文章,如无则显示第一篇发布的文章:

$args = array(
	'posts_per_page' => 1,
	'post__in' => get_option( 'sticky_posts' ),
	'ignore_sticky_posts' => 1,
);

$query = new WP_Query( $args );

仅显示第一篇置顶文章,如无则返回空:

$sticky	= get_option( 'sticky_posts' );

$args	= array(
	'posts_per_page' => 1,
	'post__in' => $sticky,
	'ignore_sticky_posts' => 1,
);

$query	= new WP_Query( $args );

if ( $sticky[0] ) {
	// insert here your stuff...
}

排除所有置顶文章:

$query = new WP_Query( array( 'post__not_in' => get_option( 'sticky_posts' ) ) );
本文《wordpress开发教程(WordPress 如何使用分页相关的参数)》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。

随机文章

SEO教程
友情链接交换
搜素引擎算法
网站内容优化
SEO教程
站长导航
友情链接交换
搜素引擎算法

百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:用户投稿,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/143571.html