我为Wordpress制作了一个简单的“帖子页面”导航,我无法找到改变next_posts_link()
和previous_posts_link()
行为的方法,以便按钮始终可见,无论什么页面正在显示。
以下是处于不同状态的菜单:
据我所知,在第一页/最后一页上没有显示“上一页”/“下一页”按钮是这个Wordpress函数的预期,但是我需要覆盖这种行为,因此灰显的上一页/下一页文本分别显示在第一页/最后一页。
我将非常感谢您如何实现这一目标。谢谢
以下是代码:
<?php
function pagination_nav() {
global $wp_query;
$total_pages = $wp_query->max_num_pages;
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
?>
<nav class="pagination" role="navigation">
<div class="nav-previous">← <?php previous_posts_link( 'Previous Page ' ); ?></div>
<div class="nav-position">Page <?php echo $paged ?> of <?php echo $total_pages ?></div>
<div class="nav-next"><?php next_posts_link( 'Next Page' ); ?> →</div>
</nav>
<?php } ?>
答案 0 :(得分:1)
工作解决方案(但可能更好!):
<?php
function pagination_nav() {
global $wp_query;
$total_pages = $wp_query->max_num_pages;
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
?>
<nav class="pagination" role="navigation">
<div class="nav-previous">
<?php
if ($paged == 1) {
echo '<div class="nav-previous-empty">Previous Page</div>';
} else {
previous_posts_link( 'Previous Page' );
}
?>
</div>
<div class="nav-position">Page <?php echo $paged ?> of <?php echo $total_pages ?></div>
<div class="nav-next">
<?php
if ($paged == $total_pages) {
echo '<div class="nav-next-empty">Next Page</div>';
} else {
next_posts_link( 'Next Page' );
}
?>
</div>
</nav>
<?php } ?>
答案 1 :(得分:0)
我认为你可以做这样的事情:
<nav class="pagination" role="navigation">
<?php $prev_link = previous_posts_link('Previous Page');
if (!empty($prev_link)) {
print __('<div class="nav-previous>←' . $prev_link . '</div>', 'domainname');
}
?>
<div class="nav-position">Page <?php echo $paged ?> of <?php echo $total_pages ?></div>
<?php $next_link = previous_posts_link('Next Page');
if (!empty($next_link)) {
print __('<div class="nav-next>←' . $next_link . '</div>', 'domainname');
}
?>
</nav>