|
经过一个月的测试,发现Discuz!论坛自带的百度sitemap功能不完善,不会定期更新数据,就算手工去运行它也不一定是按照更新频率的设置的时间来更新数据的。所以我还是决定停用它,并把forumdata目录下的sitemap.xml文件删除它,算是彻底弃用这个功能了。然后去Discuz!论坛中搜索来一个百度sitemap插件。花了我一个金币竟然导不进去,后来选上“允许导入不同版本 Discuz! 的插件”才导进去。
按照说明书做了一个计划任务,让它每天自动生成一次,就可以解决Discuz!论坛自带的百度sitemap插件的问题了。另外,像我们这种论坛题解新比较慢,帖子不多,更新频率不要默认的1小时,1小时内容可能没有发帖子,这时xml文件中就是空的了,所以我把它设置成48小时。这样的话,48小时内新增的帖子和有回复的帖子都会生成在http://bbs.xiuli123.com/sitemap_baidu.xml文件中了。
另外还发现跟google的sitemap插件同样的问题:隐藏的版块也会显示在sitemap中,这就不好了,所以需要去修改baidusitemap.inc.php文件。有两个文件都要改一下,include\crons目录下和plugins\baidusitemap目录下的baidusitemap.inc.php文件。改好后重新上传更新它。比如下面的例子:- $query = $db->query("SELECT tid, fid, subject, dateline, lastpost, replies, views, digest
- FROM {$tablepre}threads
- WHERE lastpost > $xmlfiletime AND fid<>'1' and fid<>'2' and fid IN (".implode(',', $fidarray).") AND displayorder >= 0
- LIMIT $maxitemnum");
复制代码 找到这部分代码,并加上条件fid<>'1' and fid<>'2'表示不要包括这两个版块的内容输出到sitemap中。
因为百度跟Discuz论坛有协议,对于discuz网站,百度会自动抓取forumdata目录下的sitemap.xml文件,所以把它删除它,百度就不会抓取那个旧的了。并且想办法让百度收录http://bbs.xiuli123.com/sitemap_baidu.xml这个文件。我的办法是在存档页中增加这个固定的链接,保证百度能抓取到。
相关文章:
Discuz7.0论坛关于百度sitemap插件有没有用的问题
Discuz!7.0论坛google sitemap插件输出静态网址的改进方法 |
|