如何将织梦dede搜索改为URL伪静态
1:织梦CMS国内第一大开源程序,系统成熟,利于开发上手。WEB应用中织梦占比30%,WP占比20%,DZ占比13%,帝国CMS占比57%。
2:占用服务器资源少,性能优越。
3:前端模板做到精简,利于搜索爬虫抓取。
5:缺点是手机站是M目录形式,需二次改进或做独立系统手机站。适配教麻烦,尽可能选择响应式模板,用自适应方式完成移动适配。
一、最新版的织梦本身就有手机版的功能,根目录下的m文件就是手机版的入口文件,手机版文件的命名是的PC版的命名加上后缀_m。如PC版的文件是list_articlehtm则对应的手机版的文件命名为list_article_mhtm
二、手机版的文件跟PC的放一起就行了,如PC的放在templets/moban文件夹下,手机的也放在这个文件夹下就可以了,只是调用路径不能用[dede:typelink/]手机的调用路径是href="listphptid=[field:id/]"。不用管data下的commonincphp文件,默认就是共用数据库的,如果要把手机版的也做成静态而同步更新数据的话,具体dede0com有详解
dede57伪静态设置七步法:
第一步、后台-系统参数-核心设置-是否使用伪静态:选择“是”;
注:你的网站空间是否支持伪静态,你可以与空间的IDC商联系一下,如果是自己的服务器,那就更好办了,自己动手,丰衣足食。一般来说,空间都是支持伪静态的。Apache服务器伪静态相对简单,直接在htaccess文件中加入相应伪静态规则即可;而IIS服务器伪静态的实现,则需要加载Rewrite组件,然后配置httpdini文件。
第二步、如果你的网站已经存在生成的静态栏目或文章HTML,那么只需在后台-系统-SQL命令行工具中执行如下语句:
将所有文档设置为“仅动态浏览”:
update dede_archives set ismake=-1
将所有栏目设置为“使用动态页”:
update dede_arctype set isdefault=-1
第三步、列表页、文章页伪静态修改
打开/include/helpers/channelunithelperphp。
(1)查找:
//动态文章
if($cfg_rewrite == 'Y')
{
return $GLOBALS["cfg_plus_dir"]"/view-"$aid'-1html';
}
替换为
//动态文章
if($cfg_rewrite == 'Y')
{
return "/DedeCMS/DedeCMS57-"$aid'-1html';
}
意思是:将默认的/plus/view-1-1html文章链接格式改为/DedeCMS/DedeCMS57-1-1html。
(2) 查找:
//动态
$reurl = $GLOBALS['cfg_phpurl']"/listphptid="$typeid;
替换为
//动态
$reurl = "/category/list-"$typeid"html";
意思是:将默认的频道或是列表页URL/plus//listphptid=1变更为/dedecms/list-1html形式。
第四步、列表分页伪静态修改
打开/include/arclistviewclassphp
查找:
$plist = str_replace('phptid=', '-', $plist);
替换为
$plist = str_replace('plus/listphptid=', ‘DedeCMS/DedeCMS57-', $plist);
将默认的plus/listphptid=替换成RMB/list-;
意思是:将默认的列表分页链接格式plus/listphptid=x$x$xl修改为DedeCMS/DedeCMS57-x-x-xhtml。
第五步、文章分页伪静态
打开/include/arcarchivesclassphp,找到获取动态的分页列表GetPagebreakDM()函数末尾处:
查找:
$PageList = str_replace("plus/viewphptid=","DedeCMS/DedeCMS57-",$PageList);
替换为
$plist = str_replace('plus/viewphptid=', ’DedeCMS/DedeCMS57-', $plist);
将默认的plus/viewphptid=替换成RMB/huilv-;
意思是:将默认的文章分页链接格式plus/viewphptid=x$x$xl修改为DedeCMS/DedeCMS57-x-x-xhtml
第六步、TAG标签伪静态
DedeCms默认的TAG标签URL,形如/tagsphp/dedecms模板 /,是不是觉得有个问号不怎么爽,我们改成/tags/dedecms模板 /,是不是好看多了。
下面我们来改一下,打开/include/taglib/taglibphp:
查找:
$row['link'] = $cfg_cmsurl"/tagsphp/"urlencode($row['keyword'])"/";
替换为
$row['link'] = $cfg_cmsurl"/tags/"urlencode($row['keyword'])"/";
这样就修改好了,上传你到你的网站,切记:要记得将原网站备份哦!!
第七步、httpdini伪静态规则:
[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]
将上面代码保存为:httpdini 上传到网站的根目录。
如无特特殊需求建议采用官方默认的生成静态的页面方式浏览。
把静态网站页面转为织梦模板确实需要自学html、php和dedecms标签调用的相关知识。一般来说建站可以下载织梦网站模板,但很多时候如果看中的是静态页面,要转为织梦,可以:
先学习必要的静态网页div/css代码知识
自学织梦模板标签调用规则和文件组成
将静态网页代码合并到织梦模板公版上面去。
ismake是dede_archives表中的字段。ismake='1' 是在开放状态下生成html 如果文章需要审核那么ismake='0' 。看看你的栏目是不是审核的,对应的修改栏目是否需要审核,或者在数据库中ismake的值。
0条评论