[英]WordPress pagination not working on home page ( Custom templete )
我已經搜索了這個問題,我擔心不僅我有很多面臨這個問題的編碼員。 我在那里應用修復,但結果相同。 您可以查看我的分頁代碼嗎? 我有一個靜態首頁,在其中分頁會將我重定向到首頁( /
)。 如果我在url /page/2
手動添加,這也會將我重定向到首頁。 我知道這是一個幼稚的問題,但我無法弄清楚這個問題。
這就是功能。
function pagination($pages = '', $range = 2)
{
$showitems = ($range * 2)+1;
global $paged;
if(empty($paged)) $paged = 1;
if($pages == '')
{
global $wp_query;
$pages = $wp_query->max_num_pages;
if(!$pages)
{
$pages = 1;
}
}
if(1 != $pages)
{
echo "<ul class='pagenavi'>";
if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<li><a href='".get_pagenum_link(1)."'>«</a></li>";
if($paged > 1 && $showitems < $pages) echo "<li><a href='".get_pagenum_link($paged - 1)."'>‹</a></li>";
for ($i=1; $i <= $pages; $i++)
{
if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems ))
{
echo ($paged == $i)? "<li><a href='".get_pagenum_link($i)."' class='current' >".$i."</a></li>":"<li><a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a></li>";
}
}
if ($paged < $pages && $showitems < $pages) echo "<li><a href='".get_pagenum_link($paged + 1)."'>›</a></li>";
if ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) echo "<li><a href='".get_pagenum_link($pages)."'>»</a></li>";
echo "</ul>\n";
}
}
用於生成分頁的代碼
<?php query_posts( array( 'post_type' => 'post', 'paged' => $paged, 'cat'=> $bcatid, 'posts_per_page' => 9 ) );
?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
post content
<?php endwhile; endif; ?>
<?php pagination(); ?>
在此先感謝您的寶貴時間。
在靜態首頁(頁面模板)上獲取當前分頁號的正確方法是,必須使用“頁面”查詢變量:
$paged = (get_query_var('page')) ? get_query_var('page') : 1;
此處提供更多信息: http : //codex.wordpress.org/Function_Reference/get_query_var
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.