返回列表 发帖
查看: 389|回复: 9

轻松搞定Discuz!建站的sitemap.xml网站地图-完全免费

10

主题

22

回帖

39

积分

初学乍练

贡献
0 点
金币
5 个
发表于 2024-12-13 11:35:22 | 显示全部楼层 |阅读模式


Discuz! X3.5是个好用稳定的建站系统,但是唯一美中不足就是没有生产sitemap地图的功能,对于各大搜索引擎的收录有很大影响。。
目前虽然DZ插件有此功能,但是基本都是收费的,而且费用还不低。
这么简单的功能也成了割韭菜的渠道,今天分享个借助DZ后台计划任务轻松实现sitemap.xml网站地图的生成方法。

方法一(只针对论坛版块生成sitemap.xml):
建立一个名为“cron_sitemap.php”的文件;
复制以下代码区的内容到“cron_sitemap.php”中,并保存文件;
PS:注意编码,选择自己DZ对应的编码,我自己用的是UTF-8版本DZ

  1. <?php
  2. if(!defined('IN_DISCUZ')) {
  3. exit('Access Denied');
  4. }

  5. $filename='sitemap.xml';
  6. //以下五项根据具体情况修改即可
  7. $cfg_updateperi='60';//协议文件更新周期的上限,单位为分钟
  8. $web_root=$_G['siteurl'];//根网址
  9. $CHARSET='utf-8';// or gbk //选择编码方式
  10. /***********************************************************************************************/
  11. //网站地图sitemap.xml
  12. $sitemap="<?xml version="1.0" encoding="UTF-8"?>\n";
  13. $sitemap.="<urlset\n";
  14. $sitemap.="xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"\n";
  15. $sitemap.="xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n";
  16. $sitemap.="xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9\n";
  17. $sitemap.="http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">\n";
  18. $querys = DB::query("SELECT a.tid FROM ".DB::table('forum_thread')." a inner join ".DB::table('forum_forum')." b on a.fid=b.fid ORDER BY a.tid DESC LIMIT 0,10000");
  19. while($threadfid = DB::fetch($querys))
  20. {
  21. $turl=$web_root.'thread-'.$threadfid['tid'].'-1-1.html';//注意静态规则
  22. $link = $turl;
  23. $t=time();
  24. $riqi=date("Y-m-d",$t);
  25. $priority=rand(1,10)/10;
  26. //date("D F d Y",$t);
  27. $sitemap.="<url>\n";
  28. $sitemap.="<loc>$link</loc>\n";
  29. $sitemap.="<priority>$priority</priority>\n";
  30. $sitemap.="<lastmod>$riqi</lastmod>\n";
  31. $sitemap.="<changefreq>weekly</changefreq>\n";
  32. $sitemap.="</url>\n";
  33. }
  34. $sitemap .= "</urlset>\n";
  35. $fp = fopen(DISCUZ_ROOT.'/'.$filename,'w');
  36. fwrite($fp,$sitemap);
  37. fclose($fp);
  38. ?>
复制代码
●上传“cron_sitemap.php”到source\include\cron目录;
●到discuz后台添加定时任务:后台→工具→计划任务→新增→提交;
●接下来编辑任务,任务脚本填“cron_sitemap.php”


dx3.4、discuz建站系统sitemap生成-新增计划任务






dx3.4、discuz建站系统sitemap生成-编辑计划任务


●首次先手动执行一次该计划任务,在站点根目录会生成名为"sitemap.xml"的文件,这样就完成了网站地图的生成,一劳永逸,就这么简单,不用花一分钱。
本篇只是针对论坛部分的sitemap.xml网站地图生成,下一篇为大家介绍如何生成全站(包括门户文章部分)的sitemap.xml网站地图生成。
本帖内容来源:知乎博主

以上已亲测成功,已可正常使用了:  https://www.footballclub.cc/sitemap.xml
但是好像不能实现分页功能,看看有没有大神在此基础上再改进实现分卷生成多个地图满足搜索引擎xml地图10m的要求!!!

回复

使用道具 举报

31

主题

417

回帖

616

积分

自成一派

贡献
25 点
金币
29 个
QQ
发表于 2025-1-3 22:13:15 | 显示全部楼层
很新的教程啊,如果真能用,可以抛弃插件了!
回复 支持 反对

使用道具 举报

10

主题

22

回帖

39

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2025-1-6 16:49:41 | 显示全部楼层
IsaacZ 发表于 2025-1-3 22:13
很新的教程啊,如果真能用,可以抛弃插件了!

当然能用,我就一直在用啊。
https://www.footballclub.cc/sitemap.xml
回复 支持 反对

使用道具 举报

6

主题

757

回帖

1907

积分

已臻大成

贡献
132 点
金币
82 个
发表于 2025-1-6 17:07:45 | 显示全部楼层
木易 发表于 2025-1-6 16:49
当然能用,我就一直在用啊。
https://www.footballclub.cc/sitemap.xml

你这个貌似只针对论坛的帖子,没有文章的!

这是我的,仅供参考------https://www.boonkiong.com/thread-4473-1-1.html
回复 支持 反对

使用道具 举报

3

主题

21

回帖

30

积分

初学乍练

贡献
0 点
金币
5 个
发表于 2025-1-6 17:16:47 | 显示全部楼层
代码有问题的地方:

  1. $sitemap = "<?xml version='1.0' encoding='UTF-8'?>\n";
  2. $sitemap .= "<urlset\n";
  3. $sitemap .= "xmlns='http://www.sitemaps.org/schemas/sitemap/0.9'\n";
  4. $sitemap .= "xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'\n";
  5. $sitemap .= "xsi:schemaLocation='http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd'>\n";
复制代码


回复 支持 反对

使用道具 举报

10

主题

22

回帖

39

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2025-1-7 14:51:55 | 显示全部楼层
xxc_00126 发表于 2025-1-6 17:16
代码有问题的地方:

什么问题?
回复 支持 反对

使用道具 举报

3

主题

21

回帖

30

积分

初学乍练

贡献
0 点
金币
5 个
发表于 2025-1-7 19:03:22 | 显示全部楼层

已经改了
回复 支持 反对

使用道具 举报

14

主题

74

回帖

104

积分

渐入佳境

贡献
1 点
金币
7 个
发表于 2025-1-7 19:41:14 | 显示全部楼层
这玩意作用是啥??~~小白表示不太懂
回复 支持 反对

使用道具 举报

10

主题

22

回帖

39

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2025-1-10 17:24:49 | 显示全部楼层

改了什么?
回复 支持 反对

使用道具 举报

10

主题

22

回帖

39

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2025-1-10 17:26:07 | 显示全部楼层
文強 发表于 2025-1-6 17:07
你这个貌似只针对论坛的帖子,没有文章的!

这是我的,仅供参考------https://www.boonkiong.com/thread ...

在此基础上,如何自定义分卷生成多个地图满足搜索引擎xml地图10m的要求呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2025-1-22 06:31 , Processed in 0.043956 second(s), 8 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表