织梦DEDECMS手机端生成静态页面的方法
织梦DEDECMS手机端生成静态页面方法如下:首先,登录后台管理系统,找到“系统”-“系统基本参数”-“核心设置”,将“是否支持多站点,开启此选项后附件、栏目连接、arclist内容启用绝对网址”设置为“是”。然后,在“模板”中找到对应的模板文件,修改其中的动态链接为静态链接。最后,点击“生成”-“更新主页HTML”,系统会自动生成静态页面。这样,用户访问手机端时,就可以直接看到静态页面,提高访问速度和用户体验。
织梦DEDECMS手机端生成静态页面插件完整版【已解决】
实现手机端(wap版)静态生成
一、添加后台导航栏目链接
1打开dede/inc/inc_menu.php,在146行下面添加代码:<m:itemname='更新WAP主页'link='makehtml_homepagewap.php'rank='sys_MakeHtml'target='main'/><m:itemname='更新WAP栏目'link='makehtml_listwap.php'rank='sys_MakeHtml'target='main'/><m:itemname='更新WAP文档'link='makehtml_archiveswap.php'rank='sys_MakeHtml'target='main'/>
二、更新WAP主页
1.复制文件dede/makehtml_homepage.php,重命名为makehtml_homepagewap.php2.打开makehtml_homepagewap.php,找到最后一行
includeDedeInclude('templets/makehtml_homepage.htm');
修改为
includeDedeInclude('templets/makehtml_homepagewap.htm');
3.复制文件dede/templets/makehtml_homepage.htm,重命名为makehtml_homepagewap.htm
4打开dede/templets/makehtml_homepagewap.htm 修改21行
<formaction="makehtml_homepage.php"method="post"name="form1"target="stafrm">
修改为
<formaction="makehtml_homepagewap.php"method="post"name="form1"target="stafrm">
4.修改36行,指定生成WAP主页模板
<inputname="templet"type="text"id="templet"style="width:300"value="default/wap.htm">
5.修改48行,指定生成WAP主页路径
<tdheight="20"valign="top"bgcolor="#FFFFFF"><inputname="position"type="text"id="position"value="../m/index.html"size="30">
6.修改69~70行,“checked”移到“不保存当前选项”,系统默认是提交保存主页模板和路径数据的
<inputname="saveset"type="radio"value="0"class="np"checked>
不保存当前选项
<inputname="saveset"type="radio"class="np"value="1">
保存当前选项
END
三、更新WAP栏目页
1.复制文件dede/makehtml_list.php,重命名为makehtml_listwap.php
2.打开makehtml_listwap.php,找到最后一行
includeDedeInclude('templets/makehtml_list.htm');
修改为
includeDedeInclude('templets/makehtml_listwap.htm');
3.复制文件dede/templets/makehtml_list.htm 重命名为makehtml_listwap.htm ,修改第10行
<formname="form1"action="makehtml_list_action.php"method="get"target='stafrm'>
修改为
<formname="form1"action="makehtml_listwap_action.php"method="get"target='stafrm'>
4.复制dede/makehtml_list_action.php 重命名makehtml_listwap_action.php
require_once(DEDEINC."/arc.listview.class.php");
修改为
require_once(DEDEINC."/arc.listwapview.class.php");
5.复制include/arc.listview.class.php 重命名为arc.listwapview.class.php
if(!file_exists($tempfile)){$tempfile=$GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_default.htm";}if(!file_exists($tempfile)||!is_file($tempfile)){echo"模板文件不存在,无法解析文档!";exit();}
替换为
$tempfile=$GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_wap.htm";
修改栏目储存目录,在658-659行后面添加代码,生成的栏目文件保存在文件夹“m”下面
$typedir=MfTypedir('/m/'.$typedir);
修改
functionGetMakeFileRule($typeid,$wname,$typedir,$defaultname,$namerule2){$typedir=MfTypedir('/m/'.$typedir);if($wname=='index')代码345-371行是把list第一页复制为首页index.html的,修改354行修改复制保存路径,在$this->Fields['typedir'])前面添加'/m/'.如下面10行所示if($startpage==1){//如果列表启用封面文件,复制这个文件第一页if($this->TypeLink->TypeInfos['isdefault']==1&&$this->TypeLink->TypeInfos['ispart']==0){$onlyrule=$this->GetMakeFileRule($this->Fields['id'],"list",$this->Fields['typedir'],'',$this->Fields['namerule2']);$onlyrule=str_replace("{page}","1",$onlyrule);$list_1=$this->GetTruePath().$onlyrule;$murl=MfTypedir('/m/'.$this->Fields['typedir']).'/'.$this->Fields['defaultname'];//如果启用远程发布则需要进行判断if($cfg_remote_site=='Y'&&$isremote==1){//分析远程文件路径$remotefile=$murl;$localfile='..'.$remotefile;$remotedir=preg_replace('/[^/]*.html/','',$remotefile);//不相等则说明已经切换目录则可以创建镜像$this->ftp->rmkdir($remotedir);$this->ftp->upload($localfile,$remotefile,'acii');}$indexname=$this->GetTruePath().$murl;copy($list_1,$indexname);}}return$murl;}四、更新WAP文档
1.复制dede/makehtml_archives.php 重命名为makehtml_archiveswap.php 修改最后一行
includeDedeInclude('templets/makehtml_archives.htm');
修改为
includeDedeInclude('templets/makehtml_archiveswap.htm');
2.复制dede/templets/makehtml_archives.htm 重命名为makehtml_archiveswap.htm 修改13行form提交地址
<formname="form1"action="makehtml_archives_action.php"method="get"target='stafrm'>
修改为
<formname="form1"action="makehtml_archiveswap_action.php"method="get"target='stafrm'>
3.复制dede/makehtml_archives_action.php 重命名为makehtml_archiveswap_action.php 修改13行
require_once(DEDEINC."/arc.archives.class.php");
修改为
require_once(DEDEINC."/arc.archiveswap.class.php");
4.复制include/arc.archives.class.php 重命名为arc.archiveswap.class.php
修改文章页储存位置,476行,站点真实路径后面添加"/m/" 如下第9行所示:
functionGetTruePath(){$TRUEpath=$GLOBALS["cfg_basedir"].'/m/';return$TRUEpath;}
修改获得模板文件位置,屏蔽528-536行代码,后面添加调用模版路径
/*if(!empty($this->Fields['templet'])){$filetag=MfTemplet($this->Fields['templet']);if(!preg_match("#/#",$filetag))$filetag=$GLOBALS['cfg_df_style'].'/'.$filetag;}else{$filetag=MfTemplet($this->TypeLink->TypeInfos["temparticle"]);}*/$filetag=$GLOBALS['cfg_df_style'].'/'.'article_wap.htm';
是将上面的代码注释掉
注意事项
DEDEcms手机目录是m