怎么让dedecms搜索页面支持标签调用及自定义字段调用
我们在做织梦建站的时候,有些时候满足不了需求,比如给文档添加一个价格、属性等,就需要添加字段来完成。请看看下面的教程操作:
以下案例以文章模型来做案例:
1:打开后台--频道模型--内容模型管理
2:添加自定义字段--输入信息及数据类型
3:标签调用:
{dede:arclist addfields='附加字段1,附加字段2,附加字段3' row='8' channelid='自定义模型id号'}
[field:附加字段1/] - [field:附加字段2/] - [field:附加字段3/] <br />
{/dede:arclist}
比如刚刚我们添加字段jiage,调用方式就是:
{dede:arclist addfields='jiage' row='8' channelid='1'}
[field:jiage /]
{/dede:arclist}
秀站网整理回答,如对您有帮助,请采纳!
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建站有所帮助。
首页调用{dede:arclist typeid='xx' row='调用条数'channelid='文章模型id'addfields='自定义字段名' } [field:自定义字段/]{/dede:arclist}列表调用自定义字段:必须使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择)勾上他{dede:listpagesize='调用条数'channelid='文章模型id' addfields='自定义字段名'} [field:自定义字段/]{/dede:list}
用Dedecms中的arclist标签也是可以在列表页调用文章内容的,虽然在官方的标签说明中,arclist标签的底层标签中不包含body。调用的Html格式如下:
{dede:arclist typeid='' titlelen='' limit='' orderby='' addfields='body' channelid='1'}
[field:body/]
{/dede:arclist}
重点就是addfields='body' channelid='1'这部分,意思为调用ID为1的内容模型中的附加字段body。因此除了在列表页中加入上述代码外,还需要进入Dedecms后台--核心--频道模型--内容模型管理--普通文章,点击进入后,在“列表附加字段”这个项目中添加字段:body,这样就可以了。
0条评论