就想游城市

快捷导航
登录 |注册居民 |
查看: 8|回复: 0

Discuz!的sitemap.xml网站地图免费插件,网站地图免费制作教程

[复制链接]
发表于 昨天 11:08 | 显示全部楼层 |阅读模式

加入城市,听原创电台,写情感文字,分享你的一切。

您需要 登录 才可以下载或查看,没有帐号?注册居民

x
用了Discuz! 很多年,整体还是不错的,但是发现了一个关于Discuz! 的问题;Discuz! 也算是老牌并且稳定的建站系统了,但是它本身并不具备生成sitemap的站点地图功能,对于百度等搜索引擎的收录有狠大的影响,Discuz! 的应用商城也有不少生成sitemap.xml网站地图的插件,但是售价几乎都是几百块钱元,这么简单的一个功能也成了割韭菜的渠道,今天给大家分享借助DZ后台计划任务就能轻松实现sitemap.xml网站地图的生成方法。
免费简单实用。
方法教程,请认真看,很简单的。


建立一个名为“cron_sitemap.php”的文件;
复制以下代码区的内容到“cron_sitemap.php”中,并保存文件;
PS:注意编码,选择自己DZ对应的编码,我自己用的是UTF-8版本GBK
  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='gbk';// or utf-8//选择编码方式


  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”




计划任务1.png

dx3.4、discuz建立任务itemap生成-新增计划任务


计划任务2.png

首次先手动执行一次该计划任务,在站点根目录会生成名为"sitemap.xml"的文件,这样就完成了网站地图的生成,一劳永逸,就这么简单,不用花一分钱。
以上内容仅分享论坛板块和帖子的 sitemap.xml 网站地图生成方法,希望能为大家提供实用的帮助,个人经验分享,如果不回可以回帖。



这是个寂寞却幸福的城市,这是个声音与耳朵相恋的城市 93you.com
您需要登录后才可以回帖 登录 | 注册居民

本版积分规则

唯一的遗憾是我们连一张合照都没有。

就想游设计 ( 桂ICP备13002329 | 桂公网安备 45030502000286号 )|手机版|Archiver|Sitemap

Powered by Discuz! © 2007-2025 就想游城市原创风格 Jokke Design

GMT+8, 2025-9-16 07:12