实现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( '←', 'Previous post link', 'twentytwelve' ) . '</span> %title' ); ?></span> <span class="nav-next"><?php next_post_link( '%link', '%title <span class="meta-nav">' . _x( '→', '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,在要显示的位置添加代码,保存文件即可。
延伸阅读:
[学习笔记]JS基础学习 第二天 相等和不相等运算符 等
一.相等运算符 相等运算符用来比较两个值是否相等 如果相等返回true,否则返回false 示例: NaN不和任何值相等...
安城君 2022年3月21日
实现wordpress文章页调用同分类上/下一篇文章
wordpress是强大的,总能满足用户的想法,通过搜索找到了相关的函数代码。 默认直接调用的代码 <nav c...
安城君 2022年2月13日
【LINUX】查看Linux系统版本信息的几种方法
一、查看Linux内核版本命令(两种方法): 1、cat /proc/version 2、uname -a 二、查看Li...
安城君 2021年12月22日