Dedecms 是一款非常受欢迎的内容管理系统(CMS),但在默认设置下,它生成的 RSS 地图和网站地图都位于 DATA 文件夹中。然而,由于 DATA 文件夹通常在 Robots.txt 中被禁止搜索引擎爬行,这可能导致生成的地图无法被搜索引擎发现。为了解决这一问题,我们可以更改地图自动生成的目录。以下是具体步骤:
首先,登录到您的 FTP 账号,并在根目录下创建一个名为 rss 的文件夹。
接下来,修改根目录下的管理员文件夹(默认为 dede)中的 makehtml_map.php 文件。

将第 17 行的 $cfg_cmspath."\\/data\\/sitemap.html"; 改为
$cfg_cmspath."\\/sitemap.html";
将第 22 行的 $cfg_cmspath."\\/data\\/rssmap.html"; 改为
$cfg_cmspath."\\/rssmap.html";
    

第 17 行用于普通网站地图的生成路径,而第 22 行则用于 RSS 地图的生成路径。
然后,修改根目录下 include 文件夹中的 arc.rssview.class.php 文件。

将第 71 行的 $murl = $GLOBALS['cfg_cmspath']."\\/data\\/rss\\/".$this->TypeID.".xml"; 改为
$murl = $GLOBALS['cfg_cmspath']."\\/rss\\/".$this->TypeID.".xml";
    

之后,继续修改根目录下 include 文件夹中的 sitemap.class.php 文件。

将第 57 行的 $typelink = $GLOBALS['cfg_cmsurl']."\\/data\\/rss\\/".$row->id.".xml"; 改为
$typelink = $GLOBALS['cfg_cmsurl']."\\/rss\\/".$row->id.".xml";
将第 94 行的 $typelink = $GLOBALS['cfg_cmsurl']."\\/data\\/rss\\/".$row->id.".xml"; 改为
$typelink = $GLOBALS['cfg_cmsurl']."\\/rss\\/".$row->id.".xml";
    

最后,修改 /templets/default 模板文件中的 head.htm 文件。
找到大约第 11 行的内容:

  • 网站地图
  • RSS订阅

  • 将其改为:
    
    
  • 网站地图
  • RSS订阅

  • 完成以上所有修改后,进入后台,依次执行以下操作:更新网站地图、更新 RSS 文件以及更新主页。 通过这些步骤,您可以成功更改 Dedecms 自动生成的地图目录,从而确保搜索引擎能够正确抓取您的网站地图和 RSS 地图。这不仅有助于提高网站的 SEO 效果,还能增强用户体验。