织梦CMS网站自带stiemap地图如何调用全站最新内容


avatar
pcwnas 2023-04-21 185

原文来自:https://www.zixuephp.com

织梦CMS网站自带stiemap地图如何调用全站最新内容,DEDE地图优

织梦CMS网站自带stiemap地图如何调用全站最新内容,DEDE地图优化makehtml_map.php位置,makehtml_map.php位置在织梦后台管理目录下默认是dede文件夹.

织梦cms网站地图织梦放到根目录,下面我要说的是:织梦CMS网站地图如何调用全站最新内容?

类似这样的问题我看到也有很多人在问,但回答出来的却没有多少,下面具体说下方法.

以DEDECMS5.6为例:sitemap.htm 在/templets/plus/目录里,就算添加了织梦相关标签调用,但却不能显示文章.

这是因为makehtml_map.php不能解析织梦的相关调用标签,我们可以稍作修改,让他实现调用任意标签.

修改makehtml_map.php如下.

  1. //把:
  2. require_once(DEDEINC."/dedetag.class.php");
  3. //改成:
  4. require_once(DEDEINC."/arc.partview.class.php");
  5. //把
  6. $dtp=newDedeTagParse();
  7. $dtp->LoadTemplet($tmpfile);
  8. $dtp->SaveTo($cfg_basedir.$murl);
  9. //改成
  10. $dtp=newPartView();
  11. $GLOBALS['_arclistEnv']='index';
  12. $dtp->SetTemplet($tmpfile);
  13. $dtp->SaveToHtml($cfg_basedir.$murl);
  14. //把
  15. $dtp->Clear();
  16. //注释掉
  17. //$dtp->Clear();
  18. //更新:
  19. //26行把
  20. $murl=$cfg_cmspath."/data/sitemap.html";
  21. $tmpfile=$cfg_basedir.$cfg_templets_dir."/plus/sitemap.htm";
  22. //改成
  23. $murl=$cfg_cmspath."/sitemap.html";
  24. $tmpfile=$cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/sitemap.htm";

都改好之后就可以解析dedecms所有的标签了,包括文章列表标签.

要解释的是最后:

$cfg_basedir.$cfg_templets_dir."/plus/sitemap.htm"; 改成$cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/sitemap.htm";

注意原来的路径是固定在/plus/目录中的,也就是网站地图的风格,现在我们用的是调用标签,将网站地图的模板放到网站风格中这样更方便管理.