#1 楼
// get current page we are on. If not set we can assume we are on page 1.
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
// are we on page one?
if(1 == $paged) {
//true
}
#2 楼
如果您只想知道自己位于分页页面的第一页,请尝试is_paged()
:if ( !is_paged() ) {
// first page of pagination
}
评论
这个为我工作。 (2017年8月)。以某种方式标记为正确的答案无法正常工作。
– Surjith S M
17年8月17日在15:38
优秀,干净,简单。
–追踪DeCoy
18-2-28在9:52
不再工作了(2020年1月)
– Gangesh
20年1月24日在9:28
@Gangesh工作正常。这是简单的WordPress条件,请参阅:developer.wordpress.org/reference/functions/is_paged
–crdunst
20-2-19在12:33
#3 楼
我一直在寻找一种简单的方法来确定是否使用posts_nav_link()
函数,而我在网上发现的所有解决方案都过于复杂或不可靠。例如,许多人建议使用$paged
全局变量,但是我发现即使第一页是唯一的页面,该变量也为第一页返回相同的值!在
wp-includes/link-template.php
文件中,发现posts_nav_link()
函数只是输出了另一个函数的返回值:是否需要添加链接在页面之间导航:/**
* Display post pages link navigation for previous and next pages.
*
* @since 0.71
*
* @param string $sep Optional. Separator for posts navigation links.
* @param string $prelabel Optional. Label for previous pages.
* @param string $nxtlabel Optional Label for next pages.
*/
function posts_nav_link( $sep = '', $prelabel = '', $nxtlabel = '' ) {
$args = array_filter( compact('sep', 'prelabel', 'nxtlabel') );
echo get_posts_nav_link($args);
}
最初发布在我的博客上。
评论
这是正确的,但是两次调用get_query_var('paged')是多余的。该函数的可选第二个参数是默认值。因此,您可以将其简化为:$ paged = get_query_var('paged',1);
– Linnea Huxford
16-11-5在21:38
2017年8月:此代码不适用于我,其每页输出1个。但是,迈克尔的答案很完美。
– Surjith S M
17年8月17日在15:38