dedecms 静态页改成动态页 所有页面、栏目

实际上修改模板就可以达到发布文章和采集都是使用的默认动态显示。

简单说下的是,网站空间小而数据库还可以的话,使用动态浏览也是不错的,但是官方的程序默认的生成静态浏览的,只要一发布文章,就会自动生成静态页面,难道做发布文章还要一个一个去更改其他的设置吗?麻烦。对于采集的朋友来说也是个问题。难道就需要在后台用SQL语句更改显示吗?

一、所有文章动态或静态的解决方法 (针对已经添加好的文章)

album_add.htm 发表图集模板
archives_add.htm 发表通用文档模板
article_add.htm 发表普通模板
archives_sg_add.htm 发表特殊类文章模板

SQL语句:

进入“系统” –> “SQL命令行工具” 输入以下命令即可

想要默认动态浏览只要修改对应的主要模板就可以,在../dede/templets/文件下。

将所有文档设置为“仅动态”,
update dede_archives set ismake=-1
将所有栏目设置为“使用动态页”,
update dede_arctype set isdefault=-1

全站所有文章为动态    执行SQL: update dede_archives set ismake=-1
全站所有文章为静态    执行SQL: update dede_archives set ismake=0

将要发布的文章类型的模板代码改下就可以实现以后发布文章就是动态显示,不用在一个一个修改,实现默认动态浏览。

改成1就是静态。

栏目批量设置为动态    执行SQL: update dede_arctype set isdefault=-1
改为1即是静态

将代码:<input name=”ishtml” type=”radio” class=”np” value=”1″
checked=”checked” />
生成HTML
<input type=”radio” name=”ishtml” class=”np” value=”0″ />
仅动态浏览

 实际上修改模板就可以达到发布文章和采集都是使用的默认动态显示。

假如要ID =10 的栏目内 所有文章生成动态,其它全部为静态
执行SQL: update dede_archives set ismake=-1 where typeid=10

改为:<input name=”ishtml” type=”radio” class=”np” value=”1″ />
生成HTML
<input type=”radio” name=”ishtml” class=”np” value=”0″
checked=”checked” />
仅动态浏览

album_add.htm
发表图集模板
archives_add.htm 发表通用文档模板
article_add.htm 发表普通模板
archives_sg_add.htm 发表特殊类文章模板

二、如果想以后添加的文章 都默认是动态的话,还需要进行以下设置:

若发布的是普通一般的文章,该article_add.htm下的代码就可以。
2.如何批量修改动态发布为静态生成,或者反过来修改。
用phpmyadmin打开dede_dede_archives 这个表
ismake这个字段就是我们要修改的对象。
运行sql语句:
UPDATE `dede_archives` SET `ismake` = ‘-1’ 修改所有文档为动态浏览
UPDATE `dede_archives` SET `ismake` = ‘1’ 修改所有文档为静态发布
这样就可以了

想要默认动态浏览只要修改对应的主要模板就可以,在../dede/templets/文件下。

1.增加栏目时动态化: 找到 /dede/templates/catalog_add.htm 文件后
在文件中搜索: (链接到默认页) 这几个字
定位到这三行:  
             <input name=”isdefault” value=”1″ checked=”checked”
type=”radio”>
              链接到默认页
              <input name=”isdefault” value=”0″
type=”radio”>
              链接到列表第一页
              <input name=”isdefault” value=”-1″
type=”radio”>
              使用动态页

或者进入后台→系统→SQL命令行工具→运行SQL命令行: 单行命令执行查询命令:
1.将所有文档设置为“仅动态”:update dede_archives set ismake=-1
2.将所有文档设置为“仅静态”:update dede_archives set ismake=1
3.将所有栏目设置为“使用动态页”: update dede_arctype set isdefault=-1
4.将所有栏目设置为“使用静态页”: update dede_arctype set isdefault=1

将要发布的文章类型的模板代码改下就可以实现以后发布文章就是动态显示,不用在一个一个修改,实现默认动态浏览。

把第一行的
checked=”checked” 剪切到 最后一行代码中即可,记得把找到默认首页改成index.php后缀的

将代码:<inputname=”ishtml”
type=”radio” value=”1″ checked=”checked”/>
             生成HTML
             <input type=”radio” name=”ishtml” value=”0″/>
             仅动态浏览

2.增加文章时(只限普通文章类):找到 /dede/templates/article_add.htm
文件后 在文件中搜索: (生成HTML) 这几个字
定位到这几行:  

改为:<inputname=”ishtml”
type=”radio” value=”1″ />
             生成HTML
             <input type=”radio” name=”ishtml”
value=”0″checked=”checked” />
             仅动态浏览

<input name=”ishtml” value=”1″ checked=”1″ type=”radio”>
生成HTML
<input name=”ishtml” value=”0″ type=”radio”>
仅动态浏览

若发布的是普通一般的文章,该article_add.htm下的代码就可以。如果你想将所有的发布都是动态浏览,就将对应的模板改下代码:

把第一行的
checked=”checked” 剪切到 最后一行代码中即可,记得把找到默认首页改成index.php后缀的

album_add.htm
发表图集模板
archives_add.htm 发表通用文档模板
article_add.htm 发表普通模板
archives_sg_add.htm 发表特殊类文章模板

2.增加文章时(只限普通文章类):找到 /dede/templates/article_add.htm
文件后 在文件中搜索: (生成HTML) 这几个字
定位到这几行:  
<input name=”ishtml” type=”radio” class=”np” value=”1″
checked=”1″/>
生成HTML
<input type=”radio” name=”ishtml” class=”np” value=”0″ />
仅动态浏览

这些模板的代码都该下。要有根据的改,才能将对应发布的信息内容实现动态浏览。

把第一行的 checked=”1″ 剪切到 第二行代码中即可.

———————————————————————-

如还需默认 “禁止评论” 的 搜索找到位 (允许评论) 几个字
定位到这二行
<input type=’radio’ name=’notpost’ class=’np’ value=’0′ <?php
if($cfg_feedback_forbid==’Y’) echo “checked=’1′ “; ?>
/>允许评论
          <input type=’radio’ name=’notpost’ class=’np’ value=’1′
<?php if($cfg_feedback_forbid==’N’) echo “checked=’1′ “; ?>
/>禁止评论

 

把两行中的 php if($cfg_feedback_forbid==   等于号的Y和N对换即可

dedecms把全站改为动态(伪静态)浏览的方法

3.其它类仅动态的,方法同理,找到相应文件即可

 但是首先要把伪静态的规则写到apche里的httpd.conf里面,:

三、首页动态设置 (去除if语句)
把以下一段

<IfModule mod_Rewrite.c>

=====================================================
//自动生成HTML版
if(isset($_GET[‘upcache’]))
{
require_once (dirname(__FILE__) . “/include/common.inc.php”);
require_once DEDEINC.”/arc.partview.class.php”;
$GLOBALS[‘_arclistEnv’] = ‘index’;
$row = $dsql->GetOne(“Select * From <%60dede_homepageset>`”);
$row[‘templet’] = MfTemplet($row[‘templet’]);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . “/” .
$row[‘templet’]);
$pv->SaveToHtml(dirname(__FILE__).’/index.html’);
include(dirname(__FILE__).’/index.html’);
exit();
}
else
{
header(‘HTTP/1.1 301 Moved Permanently’);
header(‘Location:index.html’);
}

RewriteEngine On

?>

换成

=====================================================
//自动生成HTML版
require_once (dirname(__FILE__) . “/include/common.inc.php”);
require_once DEDEINC.”/arc.partview.class.php”;
$GLOBALS[‘_arclistEnv’] = ‘index’;
$row = $dsql->GetOne(“Select * From <%60dede_homepageset>`”);
$row[‘templet’] = MfTemplet($row[‘templet’]);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . “/” .
$row[‘templet’]);
$pv->SaveToHtml(dirname(__FILE__).’/index.html’);
include(dirname(__FILE__).’/index.html’);
exit();

RewriteRule ^(.*)/index.html
$1/index.PHP

?>

原文地址:

RewriteRule
^(.*)/plus/list-([0-9]+).html$1/plus/list.php?tid=$2

#RewriteRule
^(.*)/plus/list-([0-9]+)-([0-9]+)-([0-9]+).html$1/plus/list.php?tid=$2&TotalResult=$3&PageNo=$4

RewriteRule
^(.*)/plus/view-([0-9]+)-([0-9]+).html$1/plus/view.php?arcID=$2&pageno=$3

</IfModule>在把相关的模块打开

共三个步骤:
1、将所有文档设置为“仅动态”:执行以下MySQL语句:
update dede_archives set
ismake=-12、将所有栏目设置为“使用动态页”,也可以建立栏目时选择“使用动态页”:执行以下mysql语句:
update dede_arctype set isdefault=-13、首页动态:把根目

  

共三个步骤:

1、将所有文档设置为“仅动态”:

执行以下MySQL语句:

update dede_archives set ismake=-1

2、将所有栏目设置为“使用动态页”,也可以建立栏目时选择“使用动态页”:

执行以下MySQL语句:

update dede_arctype set isdefault=-1

3、首页动态

把根目录下生成的 index.html 删除即可。(注意,以后不要再生成首页html,否则又成静态的了。)

解释:dede伪静态的意思是通常我们为了更好的缓解服务器压力,和增强搜索引擎的友好面.都将文章内容生成静态页面.

  但是有的朋友为了实时的显示一些信息.或者还想运用动态脚本解决一些问题.不能用静态的方式来展示网站内容.

  但是这就损失了对搜索引擎的友好面.怎么样在两者之间找个中间方法呢,这就产生了伪静态技术.

也就是说直接从数据库里取数据,然后生成页面。

发表评论

电子邮件地址不会被公开。 必填项已用*标注