通过下一个/上一个链接浏览页面兄弟

Pie*_*ter 8 wordpress wordpress-plugin

我正在使用WordPress作为我正在开发的网站的CMS.当我浏览帖子时,我可以使用下一个/上一个链接在帖子之间走动.我想在页面上有相同的东西.

  • 页面A.
  • 第B页
  • 第C页

页面A应链接到下一个兄弟页面B.页面B应链接到上一个兄弟页面A和下一个兄弟页面C.页面C应链接到上一个兄弟页面B.

是否有任何可以推荐的插件可以生成这些链接?我知道有一些插件可以做到这一点,但我特别想要一个自动挂钩到我当前主题的插件.我知道如何编辑主题,但只要主题更新可用,这就会阻止我的网站.

我正在使用LightWord WordPress主题.

jac*_*ert 18

将以下代码弹出到活动主题目录中的functions.php文件中:

function siblings($link) {
    global $post;
    $siblings = get_pages('child_of='.$post->post_parent.'&parent='.$post->post_parent);
    foreach ($siblings as $key=>$sibling){
        if ($post->ID == $sibling->ID){
            $ID = $key;
        }
    }
    $closest = array('before'=>get_permalink($siblings[$ID-1]->ID),'after'=>get_permalink($siblings[$ID+1]->ID));

    if ($link == 'before' || $link == 'after') { echo $closest[$link]; } else { return $closest; }
}
Run Code Online (Sandbox Code Playgroud)

要调用该函数:

<?php siblings('before'); ?>
Run Code Online (Sandbox Code Playgroud)

要么

<?php siblings('after'); ?>
Run Code Online (Sandbox Code Playgroud)

它将回显前一页或下一页的链接.

如果你想要两个,你可以将函数留空,它将返回一个包含两个链接的数组.


faf*_*ook 7

来自wordpress Codex

<?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];
?>

<div class="navigation">
<?php if (!empty($prevID)) { ?>
<div class="alignleft">
<a href="<?php echo get_permalink($prevID); ?>"
title="<?php echo get_the_title($prevID); ?>">Previous</a>
</div>
<?php }
if (!empty($nextID)) { ?>
<div class="alignright">
<a href="<?php echo get_permalink($nextID); ?>" 
 title="<?php echo get_the_title($nextID); ?>">Next</a>
 </div>
 <?php } ?>
</div><!-- .navigation -->
Run Code Online (Sandbox Code Playgroud)