欢迎光临
我们一直在努力

next_post_link和previous_post_link

描述

上一篇日志,下一篇日志的导航,只能在日志页使用。

基本用法

<?php previous_post_link("上一篇: %link") ?>
<?php next_post_link("下一篇: %link") ?>

默认HTML代码

上一篇: <a href="#" rel="prev">她没有流泪</a>下一篇: <a href="#" rel="next">今天天气不错</a>

这是最常用的方法,如果上一篇没有日志了,他就什么都不显示,符合绝大多数需求。

只显示同分类下的上一篇和下一篇文章

先来了解下Wordpress的上一篇、下一篇的函数格式

<?php previous_post_link($format, $link, $in_same_cat = false, $excluded_categories = ""); ?>
<?php next_post_link($format, $in_same_cat = false, $excluded_categories = ""); ?>

参数说明

  • $format:格式化被显示的字符串,缺省值是”‘« %link”,第二个函数缺省值是”%link »”。
  • $link:被显示的字符串,缺省值是上一篇或下一篇的”$title”,也可以设置为其它你想显示的字符串。
  • $in_same_cat :表示是显式同一类别下的文章还是不区分类别的文章,缺省值false表示不区分类别,只以发帖的时间先后来确定。
  • $excluded_categories:表示在显示上一篇或下一篇时是否排除掉某分类,缺省不排除,如果排除,把分类ID列在此处,以英文逗号分隔。

直接给出只显示同分类下的上一篇和下一篇的链接代码

<?php previous_post_link("上一篇: %link","%title",true) ?>
<?php next_post_link("下一篇: %link","%title",true) ?>

判断是否为最新日志

判断上一篇或下一篇是否有日志,SJY一般会如此这般的用法

<?php if (get_previous_post()) { previous_post_link("上一篇: %link","%title",true);} else { echo "上一篇:没有了,已经是最后文章";} ?>
<?php if (get_next_post()) { next_post_link("下一篇: %link","%title",true);} else { echo "下一篇:没有了,已经是最新文章";} ?>

 

上面的代码我默认设置为同一分类下的上一篇和下一篇了,如果不需要,则把true改成false,或者直接删除true即可。

这里引申出一个问题,如果只显示同一分类下的上一篇和下一篇,当没文章时依然会显示空白,而不是输出代码中的“已经是最后文章“,解决办法是给特定的分类下指定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 "下一篇:没有了,已经是最新文章";} ?>

好了,现在所有问题都解决了。

官方 next_post_link previous_post_link

欢迎转载,但请保留原文地址 http://www.sjyhome.com/wordpress/next-and-previous-post-link.html

窗外天空
关注公众号『窗外天空』

获取更多建站运营运维新知!
互联网创业、前沿技术......

赞(0) 打赏
文章名称:《next_post_link和previous_post_link》
文章链接:https://www.nixonli.com/18479.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

请先暂停浏览器上的广告屏蔽插件,或者更换浏览器打开即可!