DEDE织梦cms常用的参数标签汇总、以及操作过程中的一些bug问题解决方法,dede网站二开,以下龙腾飞网络科技-小吴在建站实操中笔记记录,织梦dede建站教程保存使用非常方便:
【DEDE建站教程】织梦cms网站如何做伪静态
第一步:后台——系统参数——核心设置——是否使用伪静态:选择“是”;
查看网站空间(虚拟主机)是否支持伪静态,一般来说,空间都是支持伪静态的,如果不行,可以与空间的IDC商联系一下,如果是自己的服务器,那就可以自己设置。
Apache服务器伪静态相对简单,直接在.htaccess文件中加入相应伪静态规则即可;而IIS服务器伪静态的实现,则需要加载Rewrite组件,然后配置httpd.ini文件。
第二步:如果你的网站已经存在生成的静态栏目或文章HTML,那么只需在 后台——系统——SQL命令行工具 中执行如下语句:
将所有文档设置为“仅动态浏览”:
update dede_archives set ismake=-1
将所有栏目设置为“使用动态页”:
update dede_arctype set isdefault=-1
第三步、列表页、文章页伪静态修改
第一项、效果:将默认的/plus/view-1-1.html文章链接格式,
改为/DedeCMS/DedeCMS5.7-1-1.html。
解决:打开 /include/helpers/channelunit.helper.php 文件。
1、查找:
if($cfg_rewrite == 'Y') { return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html'; }
替换为
if($cfg_rewrite == 'Y') { return "/DedeCMS/DedeCMS5.7-".$aid.'-1.html'; }
第二项、效果:将默认的频道或是列表页URL/plus//list.php?tid=1,
变更为/dedecms/list-1.html形式。
2、查找:
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
替换为:
if($GLOBALS["cfg_rewrite"] == 'Y') //伪静态 { $reurl = $GLOBALS["cfg_phpurl"]."/list-".$typeid.'.html'; } else { $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid; }
第四步、列表分页伪静态修改
效果:将默认的列表分页链接格式plus/list.php?tid=x$x$xl,
修改为DedeCMS/DedeCMS5.7-x-x-x.html。
解决:打开 /include/arc.listview.class.php 文件
查找:
$plist = str_replace('.php?tid=', '-', $plist);
替换为
$plist = str_replace('plus/list.php?tid=', 'RMB/list-', $plist);
将默认的 plus/list.php?tid= 替换成 RMB/list-;
第五步、文章分页伪静态
效果:将默认的文章分页链接格式plus/view.php?tid=x$x$xl,
修改为DedeCMS/DedeCMS5.7-x-x-x.html
解决:打开 /include/arc.archives.class.php 文件,
找到获取动态的分页列表 GetPagebreakDM() 函数末尾处:
查找:
$PageList = str_replace("plus/view.php?tid=","DedeCMS/DedeCMS5.7-",$PageList);
替换为:
$plist = str_replace('plus/view.php?tid=', 'RMB/huilv-', $plist);
将默认的plus/view.php?tid=替换成RMB/huilv-;
第六步:TAG标签伪静态
效果:DedeCms默认的TAG标签URL,形如/tags.php?/dedecms模板 /,改成/tags/dedecms模板 / 。要记得将原网站备份。
解决:打开 /include/taglib/tag.lib.php 文件
查找:
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
替换为
$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";
第七步:httpd.ini伪静态规则:
[ISAPI_Rewrite] # 3600 = 1 hour CacheClockRate 3600 RepeatLimit 32 RewriteRule ^(.*)/RMB/list-([0-9]+).html $1/plus/list.php?tid=$2 [I] RewriteRule ^(.*)/RMB/list-([0-9]+)-([0-9]+)-([0-9]+).html $1/plus/list.php?tid=$2&TotalResult=$3&PageNo=$4 [I] RewriteRule ^(.*)/RMB/huilv-([0-9]+)-([0-9]+).html $1/plus/view.php?arcID=$2&pageno=$3 [I] RewriteRule ^(.*)/(.*)_(.*)_([0-9]+).html $1/huilv/?from=$2&to=$3&num=$4 [I] RewriteRule ^(.*)/tags.html $1/tags.php [I] RewriteRule ^(.*)/tags/(.*)(?:(?.*))* $1/tags.php?/$2 [I] RewriteRule ^(.*)/tags/(.*)/(?:(?.*))* $1/tags.php?/$2/ [I] RewriteRule ^(.*)/tags/(.*)/([0-9])(?:(?.*))* $1/tags.php?/$2/$3 [I] RewriteRule ^(.*)/tags/(.*)/([0-9])/(?:(?.*))* $1/tags.php?/$2/$3/ [I]
将上面代码保存为:httpd.ini 上传到网站的根目录。
如无特殊需求建议采用官方默认的生成静态的页面方式浏览。