0

我已经按照此处(底部)的文档在页面底部创建了下一步和后退按钮。

它似乎工作正常,直到我到达链接只是将我重定向回第一页的最后一页。有没有办法说如果没有下一页不显示链接?我认为这就是 if 语句应该做的!

<?php
$pagelist = get_pages('sort_column=menu_order&sort_order=asc');
$pages = array();
foreach ($pagelist as $page) {
   $pages[] += $page->ID;
}

$current = array_search(get_the_ID(), $pages);
$prevID = $pages[$current-1];
$nextID = $pages[$current+1];
?>                  

<?php if (!empty($prevID)) { ?>
    <a class="back" href="<?php echo get_permalink($prevID); ?>">BACK</a>
<?php } ?>
<?php if (!empty($nextID)) { ?>
    <a class="next" href="<?php echo get_permalink($nextID); ?>">NEXT</a>
<?php } ?>

ps 请不要将我的问题移至 Wordpress 堆栈 - 这似乎有点死,并且没有得到很多回应!


我的页面设置如下:

父页面

  • 子页面 1
  • 子页面 2
  • 子页面 3

我在父页面上创建了一个链接以转到第一个子页面。然后在子页面模板上我得到了上面的代码。我只希望下一个链接出现在每个页面上,然后当它到达第 3 页时,它不应该显示下一个链接。

4

1 回答 1

2

If you are saying that this is effectively looping around then $nextID must never be empty, which would be why the link was always displayed.

You could set a $firstID, ie

$firstID = pages[0];

and then check;

if ($firstID != $nextID ) {

   // Display link

}
于 2012-10-02T08:50:49.290 回答