实现wordpress文章页调用同分类上/下一篇文章

wordpress是强大的,总能满足用户的想法,通过搜索找到了相关的函数代码。

默认直接调用的代码

 <nav class="nav-single">
                    <h3 class="assistive-text"><?php _e( 'Post navigation', 'twentytwelve' ); ?></h3>
                    <span class="nav-previous"><?php previous_post_link( '%link', '<span class="meta-nav">' . _x( '&larr;', 'Previous post link', 'twentytwelve' ) . '</span> %title' ); ?></span>
                    <span class="nav-next"><?php next_post_link( '%link', '%title <span class="meta-nav">' . _x( '&rarr;', 'Next post link', 'twentytwelve' ) . '</span>' ); ?></span>
                </nav><!-- .nav-single -->
<?php previous_post_link('上一篇: %link') ?>
<?php next_post_link('下一篇: %link') ?>

当文章处于首篇或末篇时,会显示空白,但可以通过增加判断还填补空白:

<?php if (get_previous_post()) { previous_post_link('上一篇: %link');} else {echo "已是最后文章";} ?>
<?php if (get_next_post()) { next_post_link('下一篇: %link');} else {echo "已是最新文章";} ?>

经过测试虽然显示同分类下的文章,但首篇文章和末尾的文章会不显示对应的提示信息“已是最后文章”和“已是最后文章”。只要在get_previous_post()函数中指定一下文章所属分类ID便能使代码完全有效。

下面是完整的代码:

<?php
$categories = get_the_category();
        $categoryIDS = array();
        foreach ($categories as $category) {
            array_push($categoryIDS, $category->term_id);
        }
        $categoryIDS = implode(",", $categoryIDS);
?>
<?php if (get_previous_post($categoryIDS)) { previous_post_link('上一篇: %link','%title',true);} else { echo "已是最后文章";} ?>
<?php if (get_next_post($categoryIDS)) { next_post_link('上一篇: %link','%title',true);} else { echo "已是最新文章";} ?>

打开主题目录下的文章页single.php,在要显示的位置添加代码,保存文件即可。

暂无介绍....

延伸阅读:

Mysql数据库批量更换内容

UPDATE wp_posts SET post_type = REPLACE(post_type, 'old', 'a...

安城君
2025年7月19日
实现wordpress文章页调用同分类上/下一篇文章

wordpress是强大的,总能满足用户的想法,通过搜索找到了相关的函数代码。 默认直接调用的代码  <nav c...

安城君
2022年2月13日
友盟+ U-Web 统计(原CNZZ) 今日起正式关闭免费用户统计功能,开始收费了

自从阿里收购了cnzz之后啊,这一系列的骚操作,一个一个的来临了。 在今年1月的时候,友盟宣布停止海外站点的统计服务,上...

安城君
2022年4月1日
推荐一款电脑端(PC)小说阅读器 calibre

我媳妇比较喜欢看小说,奈何上班的时候有时候没活想摸一下鱼都不好摸,拿出手机看小说难免被老板看到,让我找一款电脑阅读器给她...

安城君
2022年2月10日
在腾讯云接入备案的麻烦事,大家切记最好一次性修改好。

小站之前在阿里云备案,备案后发现腾讯云活动力度较大,阿里云有一个网站,腾讯云的价格比较诱惑,想着两个网站分开吧,不占用各...

安城君
2021年12月17日