如何 把 dedecms 搜索页面模糊查找改为精确查找
1、标签名称:adminname
功能说明:
获得责任编辑名称
使用实例:
{dede:adminname /}
2、标签名称:arclist
功能说明:
文章列表调用标记
使用实例:
{dede:arclist flag='h' typeid='' row='' col='' titlelen='' infolen=''
imgwidth='' imgheight='' listtype='' orderby='' keyword='' limit='0,1'}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:arclist}
参数说明:
col='' 分多少列显示(默认为单列),53版中本属性无效,要多列显示的可用div+css实现
row='10' 返回文档列表总数
typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;
titlelen = '30' 标题长度 等同于titlelength
infolen='160' 表示内容简介长度 等同于infolength
imgwidth='120' 缩略图宽度
imgheight='90' 缩略图高度
listtype='all' 栏目类型(顶级栏目??)
orderby='sortrank' 文档排序方式
§ orderby='hot' 或 orderby='click' 表示按点击数排列
§ orderby='sortrank' 或 orderby='pubdate' 按出版时间排列
§ orderby='near'
§ orderby=='lastpost' 按最后评论时间
§ orderby=='scores' 按得分排序
§ orderby='id' 按文章ID排序
§ orderby='rand' 随机获得指定条件的文档列表
keyword='' 含有指定关键字的文档列表,多个关键字用","分
innertext = '' 单条记录样式
aid='' 指定文档ID
idlist ='' 提取特定文档(文档ID)
channelid 频道ID
limit='' 起始,结束 表示限定的记录范围(如:limit='1,2')
flag = 'h' 自定义属性值:头条[h]推荐[c][p]幻灯[f]滚动[s]跳转[j]图文[a]加粗
noflag = '' 同flag,但这里是表示不包含这些属性
orderway='desc' 值为 desc 或 asc ,指定排序方式是降序还是顺向排序,默认为降序
subday='天数' 表示在多少天以内的文档
3、标签名称:arclistsg
功能说明:
单表模型的文章列表调用标记
使用实例:
{dede:arclistsg flag='h' typeid='' row='' col='' titlelen='' orderway='' keyword='' limit='0,1'}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:arclistsg}
参数说明:
col='' 分多少列显示(默认为单列),53版中本属性无效,要多列显示的可用div+css实现
row='10' 返回文档列表总数
typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;
titlelen = '30' 标题长度 等同于titlelength
orderwey='desc'或'asc' 排序方向
keyword= 含有指定关键字的文档列表,多个关键字用","分
innertext = "[field:title/]" 单条记录样式(innertext是放在标签之间的代码)
arcid='' 指定文档ID
idlist ='' 提取特定文档(文档ID)
channelid = '' 频道ID
limit='' 起始,结束 表示限定的记录范围(如:limit='1,2')
flag = 'h' 自定义属性值:头条[h]推荐[c][p]幻灯[f]滚动[s]跳转[j]图文[a]加粗
subday='天数' 表示在多少天以内的文档
4、标签名称:autochannel
功能说明:
按排序位置的获取单个栏目的链接信息
使用实例:
{dede:autochannel partsort='' typeid=''}{/dede:autochannel}
参数说明:
partsort = '0' 栏目所在的排序位置
typeid = '0' 指定的父栏目
5、标签名称:channel
功能说明:
获取栏目列表标签
使用实例:
{dede:channel type='top' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}
<li><a href='[field:typelink/]'>[field:typename/]</a> </li>
{/dede:channel}
参数说明:
typeid = '0' 栏目ID
reid = '0' 上级栏目ID
row = '100' 调用栏目数
col = '1' 分多少列显示(默认为单列)
type = 'son' son表示下级栏目,self表示同级栏目,top顶级栏目
currentstyle = '' 应用样式
6、标签名称:channelartlist
功能说明:
获取当前频道的下级栏目的内容列表标签
使用实例:
{dede:channelartlist row=6}
<dl>
<dt><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a></dt>
<dd>
{dede:arclist titlelen='42' row='10'} <ul class='autod'>
<li><a href="[field:arcurl /]">[field:title /]</a></li>
<li>([field:pubdate function="MyDate('m-d',@me)"/])</li>
</ul>
{/dede:arclist}
</dl>
{/dede:channelartlist}
参数说明:
typeid = '0' 频道ID,多个请用","分隔
row = '20' 获取的栏目返回值
其他说明:
除了宏标记外,channelArtlist 是唯一一个可以直接嵌套其它标记的标记,不过仅限于嵌套
{dede:type}{/dede:type} 和 {dede:arclist}{/dede:arclist} 两个标记。
7、标签名称:demotag
功能说明:
这仅是一个演示标签
使用实例:
{dede:demotag /}
8、标签名称:feedback
功能说明:
调用最新评论
使用实例:
{dede:feedback}
<ul>
<li class='fbtitle'>[field:username function="(@me=='guest' '游客' : @me)"/] 对 [field:title/] 的评论:</li>
<li class='fbmsg'> <a href="plus/feedbackphpaid=[field:aid/]" class='fbmsg'>[field:msg /]</a></li>
</ul>
{/dede:feedback}
参数说明:
row='12' 调用评论条数
titlelen='24' 标题长度
infolen='100' 评论长度
9、标签名称:flink
功能说明:
友情链接
使用实例:
{dede:flink row='24'/}
参数说明:
type='image' 或textall,链接,text文字链接;
row='24' 链接数量
titlelen='24' 站点文字的长度
linktype='1' 链接位置(首页,内页)
typeid='0' 所有类型
10、标签名称:hotwords
功能说明:
获取网站搜索的热门关键字
使用实例:
{dede:hotwords /}
参数说明:
num='6' 关键词数目
subday='365' 天数
maxlength='16' 关键词最大长度11、标签名称:infoguide
功能说明:
分类信息的地区与小分类搜索
使用实例:
{dede:infoguide /}
12、标签名称:likepage
功能说明:
单页文档相同标识调用标签
使用实例:
{dede:likepage likeid='' row=''/}
参数说明:
row = '' 调用条数
likeid = '' 标识名
13、标签名称:likesgpage
功能说明:
单页文档调用标签
使用实例:
{dede:likespage row=''/}
参数说明:
row = '' 调用条数
14、标签名称:loop
功能说明:
调用任意表的数据标签
使用实例:
{dede:loop table='dede_archives' sort='' row='4' if=''}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:loop}
参数说明:
table = '' 查询表名
sort = '' 用于排序的字段
row = '' 返回结果的条数
if = '' 查询的条件
15、标签名称:memberinfos
功能说明:
文档关连的用户信息
使用实例:
{dede:memberinfos /}
参数说明:
无属性,支持 innertext
16、标签名称:memberlist
功能说明:
会员信息调用标签
使用实例:
{dede:memberlist orderby='scores' row='20'}
<a href="/member/indexphpuid={dede:fielduserid /}">{dede:fielduserid /}</a>
<span>{dede:fieldscores /}</span>
{/dede:memberlist}
参数说明:
orderby = 'scores' 按积分排序
row = '6' 调用数目
17、标签名称:myad
功能说明:
广告调用
使用实例:
{dede:myad name=''/}
参数说明:
typeid='0' 投放范围,0为全站
name='' 广告标识
18、标签名称:mynews
功能说明:
站内新闻调用标签
使用实例:
{dede:mynews row='' titlelen=''/}
参数说明:
row='1' 调用站内新闻数
titlelen='24' 新闻标题长度
19、标签名称:mytag
功能说明:
自定义宏标记调用标签
使用实例:
{dede:mytag typeid='0' name=''/}
参数说明:
typeid = '0' 栏目ID 0为全站栏目
name = '' 标记名
20、标签名称:softmsg
功能说明:
下载说明标签
使用实例:
{dede:softmsg /}
21、标签名称:sonchannel
功能说明:
子栏目调用标签
使用实例:
{dede:sonchannel}
<a href='[field:typeurl/]'>[field:typename/]</a>
{/dede:sonchannel}
参数说明:
row ='100' 返回数目
col = '1' 默认单列显示
22、标签名称:sql
功能说明:
SQL标签
使用实例:
{dede:sql sql=''}
[field:title/]
{/dede}
参数说明:
sql='' 完整的SQL语句
23、标签名称:tag
功能说明:
TAG调用标签
使用实例:
{dede:tag row='30' sort='new'/}
参数说明:
row='30' 调用条数
sort='new' 排序方式 month,rand,week
24、标签名称:type
功能说明:
指定的单个栏目的链接标签
使用实例:
{dede:type}
<a href="[field:typelink /]">[field:typename /]</a>
{/dede:type}
参数说明:
typeid='' 指定栏目ID
25、标签名称:vote
功能说明:
投票标签
使用实例:
{dede:vote id='' lineheight='22' tablewidth='100%' titlebgcolor='#EDEDE2' titlebackground='' tablebgcolor='#FFFFFF'/}
参数说明:
id='' 数字,当前投票ID
lineheight='24' 表格高度
tablewidth='100%' 表格宽度
titlebgcolor='#EDEDE2' 投票标题背景色
titlebackground=''
tablebg ='' 投票表格背景色
为了更方便修改样式,建议在后台->辅助插件->投票管理,直接复制生成的HTML代码来使用 《 幻为您专业解答》
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建站有所帮助。
找到searchphp这个文件,修改!
找到里面有这个标题搜索,和智能搜索的,将其中的2个代码位置调换下就可以了,后面的字你可以改成自己想要的即可!不明白的HI我,或者百度飞鹿优化,找里面的教程
◆DedeCms模板安装/制作概述:
DedeCms系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基本的默认模板,即是内置系统模型的各个模板,由于DedeCms支持自定义频道模型,用户自定义新频道模型后,还需要按该模型的字段设计一套新的模板,此外,DedeCms也支持使用风格的形式使用模板,默认风格是 default,它表示系统默认使用 cmspath/templets/default 这个文件夹的模板,如果你下载了一套新的模板,你可以不必要删除 default 原有的文件,把下载的模板文件夹命名你想要的风格名称,如 style2 等,然后在后台修改了默认的模板风格名称为 style2 ,那系统将使用 templets/style2 这文件当作默认模板,但是若你手工指定了栏目模板的位置,则后台参数风格的定义无效。
一、概念,设计和使用模板,必须要理解下面几个概念
1、板块(封面)模板:
指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别IDhtm”命名,此外,用户单独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。
2、列表模板:
指网站某个栏目的所有文章列表的模板,一般用 “list_识别IDhtm” 命名。
3、档案模板:
表示文档查看页的模板,如文章模板,一般用 “article_识别IDhtm” 命名。
4、其它模板:
一般系统常规包含的模板有:主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定义一个模板创建为任意文件。
二、 命名,DedeCms模板默认命名规则如下
1、模板保存位置:
模板目录:cmspath/templets/样式名称(英文,默认为default,其中system为系统底层模板,plus为插件使用的模板)/具体功能模板文件}
2、 模板文件命名规范:
(1)index_识别IDhtm: 表示板块(栏目封面)模板;
(2)list_识别IDhtm: 表示栏目列表模板;
(3)article_识别IDhtm: 表示内容查看页(文档模板,包括专题查看页);
(4)searchhtm: 搜索结果列表模板;
(5)indexhtm: 主页模板;
注解:[识别ID]可以在“频道模型管理”的地方获得,当然,你也可以在“频道模型管理”的地方确定某个频道的模板命名。
例:list_imagehtm 表示是就是内容类型为集的栏目默认列表模板。
article_articlehtm 表示的是文章查看页模板。
三、其它模板说明
1、默认底层模板
位置: cmspath/templets/system
功能:在没有指定标记的默认底层模板的时候,系统将自动调用这个文件夹的相应文件作为底层模板。
2、插件目录模板
位置: cmspath/templets/plus
功能:评论、友情链接、RSS地图等模板。
3、会员后台模板
位置: cmspath/member/templets
功能:会员后台的模板。
四、二次开发
DedeCms主要的模板解析类是 include/inc_arcpart_viewphp、include/inc_arclist_viewphp、include/inc_archives_viewphp,这些类是与pub_dedetagphp一起工作的,如果你想为文档模板、列表模板、板块模板增加一些功能,可以直接修改这几个类的ParseTemplet()或ParseTempletsFirst()这类的方法,把标记名称,属性对应试相应该的功能函数即时。
希望能帮到你
0条评论