适合中文wordpress的相关文章插件

刚开始用的是WP Kit CN插件来调取相关文章,不过发现WP Kit CN只能通过tag来调取相关文章,实用性一般。后来找Yet Another Related Posts,发现这个相关日志插件真是挺牛的。不过在设置上倒是给我添了点麻烦,所以觉得有必要把网上找到的一篇关于Yet Another Related Posts改变相关文章显示的位置的文章收藏起来。以备后用。

给WordPress博客日志页面添加相关日志文章的链接可以提高pv,同时也给浏览者提供了感兴趣的相关文章的友好链接,增加了不同页面之间的差异化,总之好处很多。因此给WordPress博客添加显示相关日志文章的功能很有必要。

添加相关日志文章最快捷的办法就是安装wp插件了。不过很多插件都是国外作者开发的,适合英文博客,并不能很好地支持中文分词,相关日志文章插件的选择余地小了很多。在后台进入添加新插件页面,输入关键词”related posts”能找到很多相关日志插件。第一次随便选择了”Microkid’s Related Posts”,很遗憾安装设置了之后发现不支持中文,相关日志文章都是显示None。

然后将”Microkid’s Related Posts”停用,继续尝试第二个“Yet Another Related Posts Plugin”(以下简称YARPP)。看它的下载量36万,应该算比较热门的插件了,介绍说好像在jorwang. com上还有简体中文版 (zh_CN)的YARPP介绍,但这个网站连接失败。看来只能去下载完整语言版本了(yarpp 3.1.3)。

1. 在WordPress插件页面上下载YARPP安装压缩包,下载完毕后解压缩。

2. 将文件夹yet-another-related-posts-plugin 上传到你的wp-content/plugins/目录下,以及(可选)在这个文件夹里找到yarpp-templates,将这个文件夹里的几个php文件上传到theme目录下你正在使用的主题中(wp-content/themes/themename),注意不是将yarpp-templates整个文件夹上传。

3.到管理后台启用YARPP插件,然后点击Settings设置选项:

设置禁止关联的分类和标签:没有特殊情况不用设置
关联设置:这个最重要,设置关联匹配值,匹配值越低,相关联的文章数越高;所以如果你的相关文章数偏少,匹配值就设置低一些,比如我设置成了0.5;然后设置是否关联标题、正文、分类、标签,这个选项各种情况多试几次,看哪种条件下文章相似度最高就选哪个。
显示设置:我用了random.php这个模板,顾名思义,它可以在没有相关文章的时候,随机输出一篇文章。打开yarpp-template-random.php将related posts之类的文字改成你想要的形式,比如中文“相关文章”。当我改成中文的时候,发现输出乱码,检查发现原来是用Dreamweaver编辑,默认编码为gb2312了,修改页面属性为utf-8就OK了
RSS设置:要在RSS中输出相关日志文章,一样设置即可。
这里要说明一下,需要使用自定义模板,需要把yet-another-related-posts-plugin安装目录下的yarpp-templates里面的相关模板文件复制到主题的目录下,这样才能调用。
这里附上一个支持调用相关日志和随机日志的模板。

将下列代码复制,另存档名为 yarpp-template-example.php(记得选为UTF-8格式)
上传至wp-content/themes/当前的主题/后在设置中选择该模板就行

<?php /*

Example template

Author: mitcho (Michael Yoshitaka Erlewine)

*/

?>

<?php

if ($related_query->have_posts()):?>

<div>

<p><strong>相关文章:</strong>

<ul>

<?php while ($related_query->have_posts()) : $related_query->the_post(); ?>

<li><a href=”<?php the_permalink() ?>” rel=”bookmark”><?php the_title(); ?></a><!– (<?php the_score(); ?>)–></li>

<?php endwhile; ?>

</ul>

</div>

<?php else: ?>

<div>

<p><strong>随便读读:</strong>

<ul>

<?php

$posts = get_posts(‘numberposts=10&orderby=rand’);

foreach($posts as $post)

{

setup_postdata($post);

echo ‘<li><a href=”‘ . get_permalink() . ‘”>’ . get_the_title() . ‘</a></li>’;

}

$post = $posts[0];

?>

</ul>

</div>

<?php endif; ?>

4. 最后点击保存,看看WordPress单篇文章的末尾,发现日志文章的相关性还可以哦。如果不满意,修改YARPP的Settings设置吧。

5. YARPP默认紧跟在文章后面显示相关文章,如果你想改变相关文章显示的位置,比如加到转载声明和版权文字的下面,或者在sidebar中显示。先到管理后台插件设置中将“自动插入相关文章”功能关闭,然后在任何你想显示相关文章的地方手工加入代码,分别表示插入相关文章、相关页面、相关文章和相关页面。

如果你对PHP知识了解得更多,那么就可以编辑yarpp-templates/template-random.php文件,对YARPP相关日志文章的显示进行高级设置了,详细教程请看作者说明:http://mitcho.com/blog/projects/yarpp-3-templates/ 。

如果你不喜欢Yet Another Related Posts Plugin(YARPP)插件,那么你可以试用一下 simple tag 或者国人开发的 WordPress 2.3 Related Posts Plugin ,也是比较受欢迎的显示相关日志文章的热门插件。