0
我发现这个自定义wordpress分页的地方,并尝试使用它。分页和“查看所有”功能工作正常,但问题是与“下一个”和“前一个”功能。当点击“下一个按钮”时,跳到最后一页。你能帮我调试这个代码吗?我对PHP并不熟悉,实际上我第一次整合到WordPress。谢谢!WordPress的自定义分页“下一页”不工作
function numeric_pagination ($pageCount = 9, $query = null) {
if ($query == null) {
global $wp_query;
$query = $wp_query;
}
if ($query->max_num_pages <= 1) {
return;
}
$pageStart = 1;
$paged = $query->query_vars['paged'];
// set current page if on the first page
if ($paged == null) {
$paged = 1;
}
// work out if page start is halfway through the current visible pages and if so move it accordingly
if ($paged > floor($pageCount/2)) {
$pageStart = $paged - floor($pageCount/2);
}
if ($pageStart < 1) {
$pageStart = 1;
}
// make sure page start is
if ($pageStart + $pageCount > $query->max_num_pages) {
$pageCount = $query->max_num_pages - $pageStart;
}
?>
<div id="pagination">
<?php
if ($paged != 1) {
?>
<a href="<?php echo get_pagenum_link(1); ?>" class="numbered page-number-first"><span>‹‹ <?php _e('Previous Page', 'rhinoplasty'); ?></span></a>
<?php
}
if ($pageStart > 1) {
//echo 'previous';
}
for ($p = $pageStart; $p <= $pageStart + $pageCount; $p ++) {
if ($p == $paged) {
?>
<span class="numbered page-number-<?php echo $p; ?> current-numeric-page"><?php echo $p; ?></span>
<?php } else { ?>
<a href="<?php echo get_pagenum_link($p); ?>" class="numbered page-number-<?php echo $p; ?>"><span><?php echo $p; ?></span></a>
<?php
}
}
if ($pageStart + $pageCount < $query->max_num_pages) {
//echo "last";
}
if ($paged != $query->max_num_pages) {
?>
<a href="<?php echo get_pagenum_link($query->max_num_pages); ?>" class="numbered page-number-last"><span><?php _e('Next Page', 'rhinoplasty'); ?> ››</span></a>
<?php } ?>
<?php if(!$_GET['viewall']){ ?>
<a href="<?php echo add_query_arg(array('viewall' => "true"), get_pagenum_link(1)); ?>">View All</a>
<?php } ?>
</div>
<?php
}
if (isset($_GET['viewall']))
{
function view_allposts($query) {
$query->set('posts_per_page', -1);
}
add_action('pre_get_posts', 'view_allposts');
}
谢谢普拉卡什!我需要我的页面的“查看全部”功能。纠正我,如果我错了,但它似乎没有提供该功能。我非常感谢你的帮助。 –
谢谢普拉卡什!这解决了我的问题。我不知道如何“+代表”你。非常感谢! –
感谢哥们..你已经接受了我的回答:) –