在wordpress主题使用过程中,文章翻页是一个函数是一个刚需也是主题展现个性的功能关键点。其实wordpress翻页函数很简单,上一篇next_post_link和下一篇previous_post_link。相互依存在文章内容页。
最基础的翻页函数用法如下:
1 2 |
<?php previous_post_link("上一篇: %link") ?> <?php next_post_link("下一篇: %link") ?> |
在前台html 代码里如下显示:
上一篇: 明天的大挖很帅下一篇: 昨天的大挖超帅的
这个样例是最简单的应用格式,如果不加上/下一篇文字的情况下,是显示空白的。而且翻页的关联是通过最新文章来关联的,并不是分类内的文章翻页,如果需要在同分类下翻阅上/下篇的文章,可以用下面的函数代码:
1 2 |
<?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列在此处,以英文逗号分隔。
熟悉过上面的功能和参考后,继续再了解一点基础加强版
1 2 |
<?php previous_post_link("上一篇: %link","%title",true) ?> <?php next_post_link("下一篇: %link","%title",true) ?> |
本段代码可用来调用同分类文章的上下文章,如果需要判断上下文章是否存在,可以应用下面的代码;
1 2 |
<?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.
1 2 3 4 5 6 7 8 9 10 11 |
<?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 "下一篇:没有了,已经是最新文章";} ?> |
好了,想必大家了解这么多后已经对wordpress翻页函数彻底蒙蔽了,乖乖的回到文章的开始,复制基础函数吧。