HTML网站地图对于网站优化具有重要意义,尽管百度和谷歌站长工具更倾向于XML地图的提交,但HTML网站地图同样不可或缺。DedecmsCMS系统自带了HTML网站地图功能,但默认的地图仅列出所有栏目,显得较为简陋。本文将介绍一种通过单页面制作HTML网站地图的方法,并实现每次发布新文章时自动更新网站地图。


首先,需要制作一个HTML网站地图模板。可以下载单页面sitemap模板压缩包,解压后上传至模板目录。进入网站后台,在“核心 -> 频道模型 -> 单页文档管理”中增加一个页面。页面标题、关键字和摘要信息根据自身网站情况填写。模板名称和文件名参照示例,编辑框无需添加内容,因为模板中已设置好。


此时,系统会在网站根目录生成一个名为sitemap.html的页面,其名称和位置可在文件名中自定义。目前还需要手动更新,稍后将加入代码实现自动更新功能。用户可以根据需求修改模板文件中的代码,调整获取数据条目和行数。

{dede:arclist row='50' col='1' orderby=pubdate}
  • [field:title /]

    {/dede:arclist}

  • 接下来,实现发布文章后自动更新HTML网站地图的功能。使用Dreamwear或其他文本编辑器打开后台管理目录下的task_do.php文件,找到以下代码:

    $GLOBALS['_arclistEnv'] = 'index';
    $pv->SetTemplet($tpl);
    $pv->SaveToHtml($homeFile);
    $pv->Close();

    在上述代码下方添加如下代码:

    include_once(DEDEINC."/arc.sgpage.class.php");
    $dsql->Execute("ex","Select aid From 'dede_sgpage' ");
    $i = 0;
    while($row = $dsql->GetArray("ex"))
    {
        $sg = new sgpage($row['aid']);
        $sg->SaveToHtml();
        $i++;
    }
    // 更新所有的单文档

    保存并关闭文件后,发布文章即可自动更新HTML网站地图。需要注意以下两点:


    1. 在后台的“系统基本参数”——性能选项中,将“发布文章后马上更新网站主页”设置为“是”,以确保代码顺利执行(必须);


    2. 在后台的“系统基本参数”——性能选项中,尽量调小“arclist标签调用缓存”(非必须,根据实际功能选择)。


    综上所述,通过上述方法,可以轻松制作出一个自动更新的HTML网站地图,从而提升网站SEO效果。HTML网站地图不仅能帮助搜索引擎更好地抓取网站内容,还能提高用户体验,值得每个网站管理员重视。