当前位置:首页 > 开发教程 > dede教程 >

织梦DEDECMS生成静态手机页面

时间:2016-01-20 11:52 来源:互联网 作者:源码搜藏 收藏

织梦DEDECMS生成静态手机页面 工具/原料 dedecms 实现wap手机静态生成 一、添加后台导航栏目链接 1 打开dede/inc/inc_menu.php,在146行下面添加代码: m:item name=更新WAP主页 link=makehtml_homepagewap.php rank=sys_MakeHtml target=main / m:item name

织梦DEDECMS生成静态手机页面

工具/原料

  • dedecms
  • 实现wap手机静态生成

一、添加后台导航栏目链接

  1. 1

    打开dede/inc/inc_menu.php,在146行下面添加代码:

    <m:item name='更新WAP主页' link='makehtml_homepagewap.php' rank='sys_MakeHtml' target='main' />

    <m:item name='更新WAP栏目' link='makehtml_listwap.php' rank='sys_MakeHtml' target='main' /> 

    <m:item name='更新WAP文档' link='makehtml_archiveswap.php' rank='sys_MakeHtml' target='main' />

    END

二、更新WAP主页

  1. 1

    1.复制文件dede/makehtml_homepage.php,重命名为makehtml_homepagewap.php2.打开makehtml_homepagewap.php,找到最后一行

    include DedeInclude('templets/makehtml_homepage.htm');

    修改为

    include DedeInclude('templets/makehtml_homepagewap.htm');

  2. 2

    3.复制文件dede/templets/makehtml_homepage.htm,重命名为makehtml_homepagewap.htm

    4打开dede/templets/makehtml_homepagewap.htm 修改21行

    <form action="makehtml_homepage.php" method="post" name="form1" target="stafrm">

    修改为 

    <form action="makehtml_homepagewap.php" method="post" name="form1" target="stafrm">

  3. 3

    4.修改36行,指定生成WAP主页模板

    <input name="templet" type="text" id="templet" style="width:300" value="default/wap.htm">

  4. 4

    5.修改48行,指定生成WAP主页路径

     

     

     

    <td height="20" valign="top" bgcolor="#FFFFFF"><input name="position" type="text" id="position" value="../m/index.html" size="30"> 

  5. 5

    6.修改69~70行,“checked”移到“不保存当前选项”,系统默认是提交保存主页模板和路径数据的

    <input name="saveset" type="radio" value="0" class="np" checked> 

    不保存当前选项

     <input name="saveset" type="radio" class="np" value="1" >

    保存当前选项

    END

三、更新WAP栏目

  1. 1

    1.复制文件dede/makehtml_list.php,重命名为makehtml_listwap.php

  2. 2

    2.打开makehtml_listwap.php,找到最后一行

    include DedeInclude('templets/makehtml_list.htm');

    修改为

    include DedeInclude('templets/makehtml_listwap.htm');

  3. 3

    3.复制文件dede/templets/makehtml_list.htm 重命名为makehtml_listwap.htm ,修改第10行

    <form name="form1" action="makehtml_list_action.php" method="get" target='stafrm'>

    修改为

    <form name="form1" action="makehtml_listwap_action.php" method="get" target='stafrm'>

  4. 4

    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. 5

    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";

  6. 6

    修改栏目储存目录,在658-659行后面添加代码,生成的栏目文件保存在文件夹“m”下面

    $typedir = MfTypedir('/m/'.$typedir);

    修改

    function GetMakeFileRule($typeid,$wname,$typedir,$defaultname,$namerule2)

        {

         $typedir = MfTypedir('/m/'.$typedir);

         if($wname=='index')

  7. 7

    代码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;

    }

    END

四、更新WAP文档

  1. 1

    1.复制dede/makehtml_archives.php 重命名为makehtml_archiveswap.php 修改最后一行

     

     

     

     

     

    include DedeInclude('templets/makehtml_archives.htm');

    修改为

    include DedeInclude('templets/makehtml_archiveswap.htm');

     

     

  2. 2

    2.复制dede/templets/makehtml_archives.htm 重命名为makehtml_archiveswap.htm 修改13行form提交地址

    <form name="form1" action="makehtml_archives_action.php" method="get" target='stafrm'>

    修改为

    <form name="form1" action="makehtml_archiveswap_action.php" method="get" target='stafrm'>

  3. 3

    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. 4

    4.复制include/arc.archives.class.php 重命名为arc.archiveswap.class.php

    修改文章页储存位置,476行,站点真实路径后面添加"/m/" 如下第9行所示:

        /**

         *  获得站点的真实根路径

         *

         * @access    public

         * @return    string

         */

        function GetTruePath()

        {

            $TRUEpath = $GLOBALS["cfg_basedir"].'/m/';

            return $TRUEpath;

        }

  5. 5

    修改获得模板文件位置,屏蔽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';

     

    是将上面的代码注释掉

    END

注意事项

  • DEDE手机目录是M


dede教程阅读排行

最新文章