DEDECMS专题栏目内容生成手机版静态页面

时间:2019-10-30 14:21 / 来源:ChinaZ / 作者:酱油 / 点击:

最近因为网站需要,全站独立生成静态页是极端页面,遂修改如下

1:dede/(管理后台目录)makehtml_spec.php

搜索以下代码

if(empty($dopost)) $dopost = "";

在下面添加代码

$est1 = ExecTime();

搜索以下代码

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

在下面添加代码

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

搜索如下代码

if(!$ftp->connect($config)) exit('Error:None FTP Connection!');
    }

在下面添加如下代码

// 专题生成html
if($uptype=='mkmobile') {
    define('DEDEMOB', 'Y');
}
$dsql->Execute('out',"SELECT id FROM `dede_arctiny` WHERE arcrank=0 AND channel=-1");
while($row=$dsql->GetObject('out')) {
    $id = $row->id;
    $ac = new Archives($id);
    $arcurl = $ac->MakeHtml($isremote);
}
$t2 = ExecTime();
$t2 = ($t2 - $est1);
// 专题生成html

2、dede/(管理后台目录)spec_add.php

搜索如下代码

$artUrl = $cfg_phpurl."/view.php?aid=$arcID";
}

在下面加入以下代码

// 专题生成html
    define('DEDEMOB', 'Y');
    MakeArt($arcID, TRUE, TRUE, $isremote);
    // 专题生成html



3、dede/templets(目录)makehtml_spec.htm

用以下代码覆盖

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $cfg_soft_lang; ?>">
<title>生成专题列表HTML</title>
<link href="css/base.css" rel="stylesheet" type="text/css">
</head>
<body background="images/allbg.gif" leftmargin='8' topmargin='8'>
<table width="98%" border="0" cellpadding="3" cellspacing="1" bgcolor="#D6D6D6" align="center">
  <form name="form1" action="makehtml_spec.php" method="get" target='stafrm'>
    <input type="hidden" name="dopost" value="ok">
    <tr>
      <td height="28" background='images/tbg.gif'><table width="98%" border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td width="30%" height="18" style="padding-left:10px;"><strong>生成专题列表HTML:</strong><font color="red">电脑端和手机端</font></td>
            <td width="70%" align="right">&nbsp;</td>
          </tr>
        </table></td>
    </tr>
    <tr>
      <td height="20" valign="top" bgcolor="#FFFFFF"> 说明:为了安全起见,专题目录建议设置仅可读写权限,发布专题后需要手动更新,默认文件为 <br />
        <?php echo $cfg_cmspath.$cfg_special."/index.html"?> </td>
    </tr>
    <!-- 专题生成html -->
    <tr>
      <td height="20" valign="top" bgcolor="#FFFFFF">更新PC||移动:
        <input name="uptype" type="radio" value="0" class="mkpc" checked>
        PC
        <input name="uptype" type="radio" class="np" value="mkmobile">
        移动 </td>
    </tr>
    <!-- 专题生成html -->
    <tr>
      <td height="20" bgcolor="#ffffff" align="center"><input name="b112" type="button" class="coolbg np" value="开始生成HTML" onClick="document.form1.submit();" style="width:100">
        <?php 
          if($cfg_remote_site=='Y') {
    ?>
        <input name="isremote" type="checkbox" id="isremote" value="1">
        是否同步远程发发布
        <?php GetFtp();
    ?>
        <?php
}
?>
      </td>
    </tr>
  </form>
  <tr bgcolor="#F9FCEF">
    <td height="20"><table width="100%">
        <tr>
          <td width="74%">进行状态: </td>
          <td width="26%" align="right"><script language='javascript'>
                function ResizeDiv(obj,ty) {
    if(ty=="+") document.all[obj].style.pixelHeight += 50; else if(document.all[obj].style.pixelHeight>80) document.all[obj].style.pixelHeight = document.all[obj].style.pixelHeight - 50;
}
</script>
            [<a href='#' onClick="ResizeDiv('mdv','+');">增大</a>] [<a href='#' onClick="ResizeDiv('mdv','-');">缩小</a>] </td>
        </tr>
      </table></td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td id="mtd"><div id='mdv' style='width:100%;height:350px;'>
        <iframe name="stafrm" frameborder="0" id="stafrm" width="100%" height="100%"></iframe>
      </div></td>
  </tr>
</table>
</body>
</html>


4、/include(目录)arc.archives.class.php

搜索

//分析要创建的文件名称
        $filename = GetFileNewName(
            $this->ArcID,$this->Fields['typeid'],$this->Fields['senddate'],
            $this->Fields['title'],$this->Fields['ismake'],$this->Fields['arcrank'],
            $this->TypeLink->TypeInfos['namerule'],$this->TypeLink->TypeInfos['typedir'],$this->Fields['money'],$this->Fields['filename']
        );

修改为

//分析要创建的文件名称
        if(defined('DEDEMOB')) {
        $filename = GetFileNewName(
        $this->ArcID,$this->Fields['typeid'],$this->Fields['senddate'],
        $this->Fields['title'],$this->Fields['ismake'],$this->Fields['arcrank'],
        '/m/'.$this->TypeLink->TypeInfos['namerule'],$this->TypeLink->TypeInfos['typedir'],$this->Fields['money'],$this->Fields['filename']
        );
// 专题生成html
        if($this->ChannelUnit->ChannelInfos['nid'] == 'spec') {
        $filename = '/m/'.$filename;
        }
// 专题生成html
        } else {
        $filename = GetFileNewName(
        $this->ArcID,$this->Fields['typeid'],$this->Fields['senddate'],
        $this->Fields['title'],$this->Fields['ismake'],$this->Fields['arcrank'],
        $this->TypeLink->TypeInfos['namerule'],$this->TypeLink->TypeInfos['typedir'],$this->Fields['money'],$this->Fields['filename']
        );
        }
    $filenames  = explode(".", $filename);
    $this->ShortName = $filenames[count($filenames)-1];
    if($this->ShortName=='') $this->ShortName = 'html';
    $fileFirst = preg_replace("/\.".$this->ShortName."$/i", "", $filename);
    $this->Fields['namehand'] = basename($fileFirst);
    $filenames  = explode("/", $filename);
    $this->NameFirst = preg_replace("/\.".$this->ShortName."$/i", "", $filenames[count($filenames)-1]);
    if($this->NameFirst=='')
    {
        $this->NameFirst = $this->arcID;
    }

5、arc.specview.class.php

搜索如下代码

$tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_spec.htm";

添加如下代码

// 专题生成html
if ( defined('DEDEMOB') ) {
    $tempfile =str_replace('.htm','_m.htm',$tempfile);
    $GLOBALS['cfg_special'] = '/m'.$GLOBALS['cfg_special'];
}
// 专题生成html

搜索如下代码

$ctag = $this->dtp->GetTag("page");

添加如下代码

if(!is_object($ctag)) {
    $ctag = $this->dtp->GetTag('list');
}

6、/include/helpers(目录)channelunit.helper.php

第一处 搜索如下代码

$siteurl = $GLOBALS['cfg_basehost'];

修改为

if(defined('DEDEMOB')) {
    $siteurl = '';
} else {
    $siteurl = $GLOBALS['cfg_basehost'];
}

第二处 搜索如下代码

global $cfg_rewrite, $cfg_cmspath, $cfg_arcdir, $cfg_special, $cfg_arc_dirname;
        //没指定栏目时用固定规则(专题)
        if(empty($namerule)) {
            $namerule = $cfg_special.'/{aid}.html';
            $typeid = -1;
        }

修改为

// 专题生成html
global $dsql, $cfg_rewrite, $cfg_cmspath, $cfg_arcdir, $cfg_special, $cfg_arc_dirname;
//没指定栏目时用固定规则(专题)
// 专题生成html
$row = $dsql->GetOne("SELECT c.nid FROM dede_archives AS a LEFT JOIN dede_channeltype AS c ON a.channel=c.id where a.id='$aid'");
$nid = trim($row['nid']);
if(empty($namerule) || $nid == 'spec') {
    $namerule = $cfg_special.'/arc-{aid}.html';
    $typeid = -1;
}
// 专题生成html

第三处 搜索如下代码

$siteurl = $GLOBALS['cfg_basehost'];

修改为

if(defined('DEDEMOB')) {
    $siteurl = '';
} else {
    $siteurl = $GLOBALS['cfg_basehost'];
}

第四处搜索如下代码

return preg_replace("/http:\/\//i", $gurl) ? $gurl : $GLOBALS['cfg_basehost'].$gurl;

修改为

if(defined('DEDEMOB')) {
    $siteurl = '';
} else {
    $siteurl = $GLOBALS['cfg_basehost'];
}

猜你喜欢

推荐栏目

DEDECMS
DEDECMS

DEDE使用经验和技巧

WordPress
Wordpress

WP使用经验和技巧

Zblog
Zblog

Zblog使用经验和技巧

CSS
CSS

CSS使用经验和技巧

网络资料
网络资料

转载实用网络资料

按键伤人
按键伤人

转载乱七八糟的网络资源

我是酱油
我是酱油

随笔札记 记录生活点滴

本站推荐

百度站内搜索

专业博客主机