高分找高手帮忙修改下dedecms模板和css

高分找高手帮忙修改下dedecms模板和css,第1张

方法/步骤

1、网站标题seo优化技巧:

列表页标题优化技巧:把列表文件中的<title></title>改为栏目名称-seo标题-网站名称即<title>{dede:fieldtitle/}-{dede:fieldseotitle

/}-{dede:globalcfg_webname/}</title>

2、内容页标题优化技巧:把内容页文件中的<title></title>改为文章标题-网站名称<title>{dede:fieldtitle/}-{dede:globalcfg_webname/}</title>

3、网站url路径的优化技巧:dede默认的路径名称是栏目的拼音,然而栏目下的文章内容的默认url路径是栏目路径/年/月日/文章id的形式,文章的路径默认就增加了(年/月日/)2层目录,不利于搜索引擎的抓取,应该让网址规范化改为栏目路径/文章idhtml。

具体操作方法如下:在栏目修改哪里的高级选项里有个文章命名规则:默认是这样的{typedir}/{Y}/{M}{D}/{aid}html,把它改成{typedir}/{aid}html或者你把内容都放在一个文件夹里

a/{aid}html这样的话路径就比较规范化了,有利于搜索引擎的抓取。

4、做一个404页面:在主机控制面板开启404功能,然后做一个404文件并上传404htm页面并放入到根目录下

5、做好robots文件并上传网站根目录,文件内容:模板里的,css等不需要蜘蛛爬行,upload里的附件不需要蜘蛛爬行,具体格式:

6、js广告的优化:网站通用的js可以保存到一个文件比如把常用的函数保存到commonjs里,尽量不用dede默认的广告插件,我发现那个广告插件不如直接自己写js速度快。另外如果网站头部有js广告的话,打开的时候可能影响速度,解决方法:可以用一个层,把js放到底部,然后用css绝对定位到头部你需要的位置这样就不影响速度了。另外给大家提醒下,广告文件名和文件目录最好别用ad

ads

guanggao之类的名称,因为如果用这类名称会导致遨游浏览器屏蔽你的广告,虽说遨游用户不多,但是细节问题也要注意啊。

7、织梦dedecms网站seo优化技巧一般就这几项,做好这些会提高网站的收录量,优化知识到此结束,希望可以帮助大家。

dedecms织梦网站搜索不分大小写的问题

测试版本为织梦V57版本,编码为GBK,在使用其搜索模块时,出现了关键字不认大写字母的情况,如下图所示,例如关键字为"Abc"

追踪其源码在"/include/helpers/filterhelperphp"中第133行找到其函数"FilterSearch"

if ( ! function_exists('FilterSearch')){

function FilterSearch($keyword) {

global $cfg_soft_lang;

if($cfg_soft_lang=='utf-8') {

$keyword = preg_replace("/["$><']/", '', $keyword);

if($keyword != stripslashes($keyword)) {

return ''; }

else {

return $keyword; }

} else

{ $restr = '';

for($i=0;isset($keyword[$i]);$i++)

{ if(ord($keyword[$i]) > 0x80) {

if(isset($keyword[$i+1]) && ord($keyword[$i+1]) > 0x40) {

$restr = $keyword[$i]$keyword[$i+1]; $i++; } else

{ $restr = ' '; }

} else

{if(preg_match("/[^0-9a-z@#]/",$keyword[$i]))

----------将这里改为"if(preg_match("/[^0-9a-zA-Z@#]/",$keyword[$i]))"即可

{

$restr = ' '; }

else { $restr = $keyword[$i]; } } } } return $restr;

OK了,问题解决了!

参考下面方法

首先,打开后台——模板——默认模板管理——indexhtm

看到有一句,

rel="stylesheet" media="screen" type="text/css" />说明,模板是根据这个 CSS 来布局网

页的,于是就打开网站目录下面的templets\style\dedecmscss然后来分析一下CSS的构成。

根据主页的调用,来研究 CSS 这样容易理解。打开主页模板,找到:

那么 w960 center clear mt1 都定义了什么呢?打开 DEDECMSCSS 找打相关的定义。

center{

1 margin:0px auto; 定义了CSS 模块的边缘位置都是 0,也就是这个center 的层

距离上右下左都是 0px;

2 }

3 w960{

4 width:960px; 定义了整体的宽度为 960px;

5

6 }

7 pright infos_userinfo {

8 margin-bottom: 0px; 定义了首页右部下的互动中心的下面边缘为 0px;

9 }

10 mt1{

11 margin-top:8px; 定义了mt1 的顶部边缘为8px;

12 }

13 pright mt1{

14 margin-top:0px; 定义了pright 下面的mt1 顶部边缘为0px;

15 }

16 mt2{

17 margin-top:16px; 顶部边缘为16px;

18 }

19 clear{

20 overflow:hidden; 如果clear 层里面的内容超出了 层的范围 就隐藏起来。

21 }

这个pleft 的定义没有在dedecmscss 中,但是会发现一句

@import url("layoutcss");

@import url("pagecss");

这说明,在dedecmscss 中引用了 pagecss 和layoutcss 这两个样式表,于是就在

pagecss 中找到了pleft 的定义

pleft{

width:712px;定义了宽度

float:left;该层向左浮动

overflow:hidden;超出范围则隐藏

}

在该层下面调用的是新闻头条的内容,看看它的 css

index bignews{

width:424px;

height:400px;

float:right; 向右浮动

border:1px solid #DFF2F5;表示边框线用 #dff2f5 的实体颜色填充

background:url(/images/headbg-topgif) repeat-x;背景为 headbg-topgif 并且横

向平铺

overflow:hidden;超出则隐藏。

}

所以,看到头条的这部分是在 flash 幻灯片右边显示,并且加上了浅蓝色的边框线。

再来看看 onenews 是如何定义的。

index bignews onenews{

margin:0 3px 0 3px; 左右外边距分别空3 个像素

padding:7px 6px;上左内边距分别空7,6 个像素

border-bottom:1px dashed #EBEBEB;下边框加一个 #ebebeb 的虚线

}

所以看见头条的文章左右都有一定的距离,并且下面还有一个虚线显示

这个下面调用的是以往的头条,默认的有 4 篇文章,调用了d1 d1arc 2 个css

index bignews divd1{

padding:6px 10px;

clear:both;这句话是清除浮动,如果不加它,大家可以试试看,是不是 d1 这个层就跑到 头条的

右边了。

width:406px;

overflow:hidden;

}

index bignews divd1arc{

margin-right:12px;

width:190px;

float:left;因为此时要调用4 篇文章,改文章是 22 排列的,如果不加这个属性,新闻就应该垂

直排列了(因为刚才用 clear:both 清除浮动啦),大家试试看是不是这样的。

height:24px;

line-height:24px;行间距,即字体最底端与字体内部顶端之间的距离

overflow:hidden;

}

最新文章

下面看看 newarticle 这个css 吧,还是拿快学网的首页举例子,上面的这句是用来显示 “最近

更新”那几个绿颜色字的,看看它是怎么定义的。

index bignews divnewarticle{

height:24px; 高度

background:url(/images/new-articlegif) 8px 3px no-repeat;背景在x 轴8px 和y 轴

3px 出出现

font-size:0px;

color:#fff;

} 所以,能看到那个最近更新并且还有一个横条,其实它是个,大家右键另存为

看看就知道了

这里面调用了 c2 和ico1 两个 css

index bignews ulc2{

width:416px;

padding:0px 4px 0px; 内边距为 上0 右4 下0

clear:both;清除浮动 和上面的意思一样

overflow:hidden;

}

ico1 这个css 在layoutcss 中了。

ico1 li{

padding-left:16px; 指的是 新闻列表左内边距为 16px

background:url(/images/ico-1gif) 7px 11px no-repeat; 背景在7px,11px 处出现,所以看到最新文章的列表左边都有一个小黑点,这个小黑点就是 ico-1gif

}

到此,中部的头条新闻和最近更新已经分析完了。

看看flash 的 css 定义

index flashnews{

width:280px;

height:192px;

overflow:hidden;

float:left;这句决定了,flash 的新闻列表在 头条的左边显示。如果把 bignews 和flashnews

的float 属性互换一下应该是上面结果呢?大家试试看。

}

这边是特别推荐调用的样式,还是来看看 css

index latestnews{

width:280px;

height:200px;

margin-top:8px;

float:left;

}

index latestnews dl dd{

padding:2px 5px;

}

index latestnews ul a{

color:#555;

} 这里面就不用解释了吧,可以和上面的对照一下就能明白上面意思了。关键 dl dt dd 要弄明白

是什么意思。

dl 内容块

dt 内容块的标题

dd 内容

可以这么写:

标题

内容1

内容2

在layoutcss 中找到 tbox 的相关定义,其他的都不用罗嗦了,只有一句大家注意看一

tbox dt strong{

height:26px;

line-height:26px; !important;line-height:25px; 这一句是为了兼容 IE 和FF,比如

font-size: 12px !important;

font-size: 13px;

在 IE里面,由于 IE不理解 !important,则字体大小按照最后设定的 13px 展示

而FF 里面, !important 为提高优先级别,则字体大小按照 !important标记的12px 展示

某些css 某些代码在这两类浏览器里的显示是有差别的(注意这也是使用!important 的主要原因

所在),比如height: 21px;,在 IE6 和(IE7,FF)里显示就有差别,后者(IE7,FF)会比前

者(IE6)少一个像素。

padding-left:22px;

padding-right:4px;

display:block;//变成块级 ,因为strong 是内联元素,必须强制转换,不然的话是没有办法

定义padding 的。大家可以百度一下 内联元素看看。

float:left;

color:#397CBE;

background:url(/images/fbicogif) 5px 6px no-repeat;

letter-spacing:1px;

}

dede数据库字段说明:dede_addonarticle 附加文章表

aid int(11) 文章编号

typeid int(11) 分类栏目编号

body mediumtext 文章内容

dede_addonflash 附加Flash表

aid int(11) FLASH编号

typeid int(11) 分类栏目编号

filesize varchar(10) 文件大小

playtime varchar(10) 播放时长

flashtype varchar(10) 作品类型

flashrank smallint(6) 作品等级

width smallint(6) 影片宽度

height smallint(6) 影片高度

flashurl varchar(80) FLASH地址

dede_addonimages 附加图集表

aid int(11) 图集编号

typeid int(11) 分类栏目编号

pagestyle smallint(6) 表现方式(1单页显示 2分多页显示 3多行多列展示)

maxwidth smallint(6) 大图限制宽度

imgurls text 集内容(标签存放)

row smallint(6) 多列式参数(行)

col smallint(6) 多列式参数(列)

isrm smallint(6) 是否下载远程

ddmaxwidth smallint(6) 小宽度限制

dede_addonsoft 附加软件表

aid int(11) 软件编号

typeid int(11) 分类栏目编号

filetype varchar(10) 文件类型

language varchar(10) 界面语言

softtype varchar(10) 软件类型

accredit varchar(10) 授权方式

os varchar(30) 运行环境

softrank int(11) 软件等级

officialUrl varchar(30) 官方网址

officialDemo varchar(50) 程序演示地址

softsize varchar(10) 软件大小

softlinks text 软件下载链接列表

introduce text 软件介绍

dede_addonspec 附加专题表

aid int(11) 专题编号

typeid int(11) 分类栏目编号

note text 专题内容(仅存放标签代码)

dede_admin管理员信息表

ID int(10) 自动编号

usertype int(10) 用户类型

userid varchar(30) 用户登录ID

pwd varchar(50) 用户密码

uname varchar(20) 用户笔名

tname varchar(30) 真实姓名

email varchar(30) 电子邮箱

typeid int(11) 负责频道(0表示全部)

logintime datetime 登录时间

loginip varchar(20) 登录IP

dede_admintype 系统用户组管理表

rank smallint(6) 组级别编号

typename varchar(30) 组名称

system smallint(6) 是否为系统默认组

purviews text 权限列表

dede_arcatt文档自定义属性表

att smallint(6) 编号

attname varchar(30) 属性名称

dede_archives 文章表

ID int(11) 自动编号

typeid int(11) 所属主栏目编号

typeid2 int(11) 所属副栏目编号

sortrank int(11) 文章排序(置顶方法)

iscommend smallint(6) 是否推荐

ismake smallint(6) 是否生成静态

channel int(11) 文章所属模型

arcrank smallint(6) 阅读权限

click int(11) 点击次数

money smallint(6) 消费点数

title varchar(80) 标题

shorttitle varchar(36) 简略标题

color varchar(10) 标题颜色

writer varchar(30) 作者

source varchar(50) 来源

litpic varchar(100) 缩略图

pubdate int(11) 录入时间

senddate int(11) 发布时间

arcatt smallint(6) 自定属性(att)

adminID int(11) 发布管理员ID

memberID int(11) 发布会员ID

description varchar(250) 摘要

keywords varchar(60) 关键词

templet varchar(60) 文档模板

lastpost int(11) 最近评论时间

postnum int(11) 评论数目

redirecturl varchar(150) 跳转网址

mtype int(11) 用户自定义分类

userip varchar(20) 用户IP

locklikeid smallint(6) 是否锁定相关文章

likeid varchar(240) 相关文章ID

dede_arcrank 阅读权限表

ID int(10) 自动编号

rank smallint(10) 权限等级

membername varchar(20) 等级名称

adminrank smallint(10) 管理等级

money int(11) 消费点数

dede_arctype 栏目管理表

ID int(10) 栏目编号(自动编号)

reID int(10) 父栏目编号

topID int(10)

sortrank smallint(6) 排序编号

typename varchar(30) 栏目名称

typedir varchar(100) 栏目目录

isdefault smallint(6) 栏目列表选项(1链接到默认页 0链接到列表第一页 -1使用动态页)

defaultname varchar(20) 默认页的名称

issend smallint(6) 是否支持投稿

channeltype smallint(6) 频道类型

maxpage int(11) 保留

ispart smallint(6) 栏目属性

corank smallint(6) 浏览权限

tempindex varchar(60) 封面模板

templist varchar(60) 列表模板

temparticle varchar(60) 文章模板

tempone varchar(60) 单独页面模板

namerule varchar(50) 文章命名规则

namerule2 varchar(50) 列表命名规则

modname varchar(30) 模板名称

description varchar(200) 栏目介绍

keywords varchar(100) 关键词

moresite smallint(6) 多站点支持

siterefer smallint(6) 多站点站点根目录属性

sitepath varchar(60) 多站点站点根目录

siteurl varchar(60) 多站点绑定域名

ishidden smallint(6) 是否隐藏栏目

dede_sgpage 单页

上面是一些常用字段,可以在dede后台-》系统-》SQL命令行工具执行sql语句来批量修改!

1编辑器打开plusdiyphp

2在40行左右找到此行代码:

$dede_fields=empty($dede_fields)'':trim($dede_fields);

3在这一行代码之下,加入代码,复制的话删掉代码中的空行

//增加必填字段判断

if($required!=''){

if(preg_match('/,/',$required))

{

$requireds=explode(',',$required);

foreach($requiredsas$field){

if($$field==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}else{

if($required==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}

//end

4保存完成后,在表单模版页面找到这行代码:

<formaction="/plus/diyphp"enctype="multipart/form-data"method="post">

在这行代码之下,加入代码:

<inputtype="hidden"name="required"value="数据字段名,数据字段名"/>

注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项

添加新字段--“表单提示文字”:姓名--“字段名称”:name

添加新字段--“表单提示文字”:邮箱--“字段名称”:email

此行代码应为:

<inputtype="hidden"name="required"value="name,email"/>

这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字

网上看到另一种方法,未测试,仅作为资料收藏

js方法:

1先在要发布表单的模板上加

<scriptsrc='你的路径/jsjs'type="text/javascript"></script>

2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:

<!--

$(document)ready(function()

{

//验证

$('complain')submit(function()

{

if($('name')val()==""){

$('name')focus();

alert("用户名不能为空!");

returnfalse;

}

if($('tel')val()=="")

{

$('tel')focus();

alert("联系电话不能为空!");

returnfalse;

}

if($('title')val()=="")

{

$('title')focus();

alert("标题不能为空!");

returnfalse;

}

if($('text')val()=="")

{

$('text')focus();

alert("具体内容不能为空!");

returnfalse;

}

})

});

-->

注:

$('complain')submit(function()//complain为自定义表单的ID,如果生成的表单没有可以自行加上,即id="complain"

if($('name')val()==""){

$('name')focus();//name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同

3设置好后更新就可以看到效果了

希望本文所述对大家的dedecms建站有所帮助。

如果你的模板是系统默认的,那么在后台就能修改了,第一步:系统基本参数设置里面有个“主页链接名”这里写什么,前台就会调用什么。

如果模板是自己做的而且没按默认调用的话,就只能去修改模板里对应的A标签了

第一是域名的选择,最好用几个二级域名来做,比如cnsledacom是中文站,ensledacom是英文站,arsledacom是阿拉伯语站,之所以不用顶级域名,是因为买齐好几个顶级域名还是挺有难度的,小公司就算了。

第二是内容的翻译,最好不要用那些js实时翻译的程序,速度慢,而且不利于浏览和搜索殷勤收录,最好是翻译好之后保存到数据库或静态页面,下次直接调用就可以。

第三是选择人工翻译还是自动翻译,人工翻译准确度高,阅读体验好,缺点是对人才的要求比较高,英文还好说,其他语种的人才不好找,而且成本高。自动翻译省时省力,支持的语种多,缺点是目前的翻译水平不行,读起来不通顺,不过只为收录和提高权重的就还好。

css样式或属性面板,建议css,首先在css面板下选择新建规则,输入名称(随便)(如果你那个栏目是链接的话,请选择伪类选择器),然后会出一个窗口,编辑字体样式并保存,之后选中你那字体,右键,应用css样式就可以了。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 高分找高手帮忙修改下dedecms模板和css

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情