在使用Dedecms(织梦CMS)进行网站开发时,我们常常会遇到网站地图生成的问题。默认情况下,Dedecms会将sitemap文件生成到“data”目录下,而该目录却被robots.txt文件禁止搜索引擎抓取。这会导致搜索引擎无法正常获取网站地图,从而影响网站的SEO效果。
为了改善这一问题,我们需要将Dedecms的网站地图生成路径修改为其他可被搜索引擎访问的目录。本文将详细介绍如何将Dedecms的网站地图文件生成到根目录。
第一步:登录FTP,在网站根目录下创建一个名为“rss”的文件夹。
第二步:修改管理员文件夹下的makehtml_map.php文件(默认管理员文件夹名称为dede,如果已更改,请根据实际情况查找)。
具体操作如下:
// 修改第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行和第94行:
$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml";
改为:
$typelink = $GLOBALS['cfg_cmsurl']."/rss/".$row->id.".xml";
第五步:修改模板文件head.htm(位于/templets/default目录下)。
将模板中“网站地图”和“RSS订阅”的链接路径更改为根目录下的路径,去掉原路径中的“data”目录前缀。
第六步:进入Dedecms后台,依次执行以下操作:
- 更新网站地图;
- 更新RSS文件;
- 更新主页。
注意事项:
完成上述修改后,请务必检查并更新网站页面中所有涉及网站地图的路径,确保其指向新的正确路径。同时,别忘了修改robots.txt文件中的网站地图路径,以确保搜索引擎能够顺利抓取最新的网站地图文件。