欢迎来到元素模板ys720.com,本站提供专业的织梦模板PBOOTCMS模板网站模板网站修改/网站仿站
当前位置:主页 > 程序教程 > DEDECMS教程 >
DEDECMS教程

织梦网站地图生成文章列表支持标签调用的方法

(元素模板) / 2015-10-14 11:43

Dedecms网站地图很好用,但sitemap.htm所调用的标签很有限,分析了一下makehtml_map.php?dopost=site这个文件,发现生成视图用的是dedetag.class.php文件,有点简单。所以不能使用织梦的很多标签,例如: 

{dede:arclist titlelen=25 row='25'} 

<a href="[field:arcurl/]">[field:title/]</a> 

{/dede:arclist} 

就不能解析出列表。 

现在仿照首页的方法,使用arc.partview.class.php,这是一个视图类,可以解析这些标签。 

修改makehtml_map.php如下: 

1、将 

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

改成 

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

2、将 

$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); 

3、将 

$dtp->Clear(); 

改成 

//$dtp->Clear(); 

4、将 

$murl = $cfg_cmspath."/data/sitemap.html"; 

$tmpfile = $cfg_basedir.$cfg_templets_dir."/plus/sitemap.htm"; 

改成 

$murl = $cfg_cmspath."/sitemap.html";//把生成的网站地图放在网站根目录下,data目录一般设置了蜘蛛不抓取 

$tmpfile = $cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/sitemap.htm";//同时把网站地图模板改在默认的模板文件夹下 

 

Copyright @ 2013-2021 元素模板 www.ys720.com All Rights Reserved. 版权所有 元素模板 www.ys720.com