dede地图显示最新文章的解决方法

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

 

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

 

修改makehtml_map.php如下:

 

require_once(DEDEINC."/dedetag.class.php");

 

改成

require_once(DEDEINC."/arc.partview.class.php");

 

$dtp = new DedeTagParse();
$dtp->LoadTemplet($tmpfile);
$dtp->SaveTo($cfg_basedir.$murl);

 

改成

$dtp = new PartView();
$GLOBALS['_arclistEnv'] = 'index';
$dtp->SetTemplet($tmpfile);
$dtp->SaveToHtml($cfg_basedir.$murl);

 

$dtp->Clear();

 

注释掉

//$dtp->Clear();

 

更新:

26行 把

$murl = $cfg_cmspath."/data/sitemap.html";
$tmpfile = $cfg_basedir.$cfg_templets_dir."/plus/sitemap.htm";

 

改成

$murl = $cfg_cmspath."/sitemap.html";
$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/目录中的,也就是网站地图的风格,现在我们用的是调用标签,将网站地图的模板放到网站风格中这样更方便管理。

 

记得到最好一定要把地图模版放到模版模版文件里面 

posted @ 2017-08-11 16:37  千方  阅读(171)  评论(0编辑  收藏  举报