鹿泽鹿泽  2023-07-17 10:58:20 鹿泽笔记 隐藏边栏  0 

最近博主在弄WordPress网站,也体验了很多不同的WordPress主题,其中不乏一些优秀主题,很多主题各个方面的SEO细节做得很完善,也因此造成了它在互联网过于泛滥,带来审美疲劳。

以前博主搭建WordPress就是觉得网站越酷炫越好,现在博主越来越喜欢简洁而功能强大的主题,为此也特意购买了一些比较欣赏的主题来体验一番。但是,有些主题实在是过于简洁,很多实用的功能也被删除掉了,如有些主题文章页没有 上一篇和下一篇 ,没有相关文章版块等。在我看来,这些是绝对不能省掉的,除了不利于搜索引擎优化,也同样不利于读者浏览体验。当然这些小功能可以通过各种插件来实现,但是我试了不少的插件感觉不尽人意,为此博主寻找了一些方法通过代码来完成这个小功能。

实现WordPress上一篇和下一篇代码方法

在模板文件夹下找到single.php文件,编辑文章页模板文件,在文章内容下方可插入以下代码:

$post_tag = $tag_list[ mt_rand(0, count($tag_list) - 1) ];
// 该方法使用 query_posts() 函数来调用相关文章,以下是参数列表
$args = array(
tag__in = array($post_tag),
category__not_in = array(NULL), // 不包括的分类ID
post__not_in = array($post- ID),
showposts = 6, // 显示相关文章数量
caller_get_posts = 1
);
query_posts($args);
if (have_posts()) {
while (have_posts()) {
the_post(); update_post_caches($posts); ?
li * a href= ?php the_permalink(); ? rel= bookmark title= ?php the_title_attribute(); ? ?php the_title(); ? /a /li
?php
}
}
else {
echo li * 暂无相关文章 /li
}
wp_reset_query();
else {
echo li * 暂无相关文章 /li
/ul

PS: 不包括的分类ID 指的是相关文章不显示该分类下的文章,可自定义将NULL改成文章分类的ID即可,多个ID就用半角逗号隔开,满足站长的多样化需求。因为这里限制只显示6篇相关文章,所以不管给 query_posts() 的参数 tag__in 赋多少个值,都是只显示一个标签下的6 篇文章,除非第一个标签有1篇,第二个标签有2篇,第三个有3篇…若当前文章有多个标签对应,那么采取的做法是随机获取一个标签的id,赋值给 tag__in 这个参数,获取该标签下的6篇文章。

方法二、分类相关

li * a href= ?php the_permalink(); ? rel= bookmark title= ?php the_title_attribute(); ? ?php the_title(); ? /a /li
?php
}
}
else {
echo li * 暂无相关文章 /li
}
wp_reset_query();
else {
echo li * 暂无相关文章 /li
/ul

此方法则是通过获取该文章的分类id,然后获取该分类下的6篇文章,来达到获取相关文章的目的。

方法三、作者相关

li * a href= ?php the_permalink(); ? rel= bookmark title= ?php the_title_attribute(); ? ?php the_title(); ? /a /li
?php
}
}
else {
echo li * 暂无相关文章 /li
}
wp_reset_query();
/ul

此方法是获取该文章作者的其他文章来充当相关文章,比较适合一些多个站长运营的网站。

结语:博主之所以坚持给网站添加上一篇和下一篇以及相关文章,是因为博主是做SEO的,站在搜索引擎的角度来说,上一篇和下一篇以及相关文章的链接不仅可以增加搜索引擎蜘蛛抓取,而且也有利于网页权重值传递。站在用户的角度,相关的文章就好比是推荐,以及相关信息的进一步获取,对读者也是非常有利的。另外博主要补充的就是,关于相关文章实现方法,博主是建议选择第一种,标签往往更贴近主题。

1、文章版权归作者所有,未经允许请勿转载。
2、本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
3、咨询请联系QQ:526009505