dedecms的shtml方式解决友情链接包含,这个问题十分紧迫,很简单的道理,如果我们的文章有几十万片,但是都生成了html。如果你要在文章的底部增加一个友情链接的时候,我们可以在后台增加一条友情链接记录,但是必须全部重新生成之后,才能显示出来,这个十分麻烦。这个时候我们可以考虑到使用shtml包含的方式。将友情链接做成flink.shtml,在页面中直接包含就可以。
1:编写shtml标签。
if($type == 'flink'){
if(in_array($file,array('index.php','list.php','view.php'))){
if(file_exists($html_dir)){
return file_get_contents($html_dir."friendlink.htm");
}
}else{
return '<!--#include virtual="'.$shtml_dir.'friendlink.htm"-->';
}
}
2:编写成flink.htm的接口
$flink_temp = $cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/friendlink.htm";
$flink = $cfg_basedir.$cfg_cmspath."/data/shtml/friendlink.htm";
$pv->SetTemplet($flink_temp);
$pv->SaveToHtml($flink);
3:在所有模板里面,调用此标签
{dede:shtml type="flink"/}
通过这样我们就可以通过shtml的方式来包含该友情链接,当我们需要该数据的时候,或者新增加一条友情链接之后,直接就可以动态的显示出来,而不需要全站重新生成html.
1:编写shtml标签。
if($type == 'flink'){
if(in_array($file,array('index.php','list.php','view.php'))){
if(file_exists($html_dir)){
return file_get_contents($html_dir."friendlink.htm");
}
}else{
return '<!--#include virtual="'.$shtml_dir.'friendlink.htm"-->';
}
}
2:编写成flink.htm的接口
$flink_temp = $cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/friendlink.htm";
$flink = $cfg_basedir.$cfg_cmspath."/data/shtml/friendlink.htm";
$pv->SetTemplet($flink_temp);
$pv->SaveToHtml($flink);
3:在所有模板里面,调用此标签
{dede:shtml type="flink"/}
通过这样我们就可以通过shtml的方式来包含该友情链接,当我们需要该数据的时候,或者新增加一条友情链接之后,直接就可以动态的显示出来,而不需要全站重新生成html.