dedecms网站栏目增加的字段在{dede:list}中调用不显示的解决方法。在dede:channel中调用显示。
首先找到根目录下的 include/taglib/flinktypelibphp 文件
然后打开找到,如下代码
1$dedecms = false; 2 3$dedecms->id = 999; 4 5$dedecms->typename = '织梦链'; 6 7if($type == 'dedecms') $row[] = $dedecms; 直接将其删除即可,然后保存即可。
然后到dedecms57后台重新生成下主页,再刷新网站首页,此时织梦链已经去掉了。
1编辑器打开\plus\diyphp
2在40行左右找到此行代码:
$dede_fields = empty($dede_fields) '' : trim($dede_fields);
3在这一行代码之下,加入代码,复制的话删掉代码中的空行
//增加必填字段判断
if($required!=''){
if(preg_match('/,/', $required))
{
$requireds = explode(',',$required);
foreach($requireds as $field){
if($$field==''){
showMsg('带号的为必填内容,请正确填写', '-1');
exit();
}
}
}else{
if($required==''){
showMsg('带号的为必填内容,请正确填写', '-1');
exit();
}
}
}
//end
4保存完成后,在表单模版页面找到这行代码:
1
<form action="/plus/diyphp" enctype="multipart/form-data" method="post">
在这行代码之下,加入代码:
1
<input type="hidden" name="required" value="数据字段名,数据字段名" />
注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项
添加新字段--“表单提示文字”:姓名--“字段名称”:name
添加新字段--“表单提示文字”:邮箱--“字段名称”:email
此行代码应为:
1
<input type="hidden" name="required" value="name,email" />
这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字
网上看到另一种方法,未测试,仅作为资料收藏
js方法:
1先在要发布表单的模板上加
1
<script src='你的路径/jsjs' type="text/javascript"></script>
2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:
<!--
$(document)ready(function()
{
//验证
$('#complain')submit(function ()
{
if($('#name')val()==""){
$('#name')focus();
alert("用户名不能为空!");
return false;
}
if($('#tel')val()=="")
{
$('#tel')focus();
alert("联系电话不能为空!");
return false;
}
if($('#title')val()=="")
{
$('#title')focus();
alert("标题不能为空!");
return false;
}
if($('#text')val()=="")
{
$('#text')focus();
alert("具体内容不能为空!");
return false;
}
})
});
-->
注:
$('#complain')submit(function () //complain为自定义表单的ID,如果生成的表单没有可以自行加上,即 id="complain"
if($('#name')val()==""){
$('#name')focus();//#name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同
3设置好后更新就可以看到效果了
希望本文所述对大家的dedecms建站有所帮助。
您好,
朋友。跟版网团队很高兴为您解答:
这个问题看下您后台的这个字段是否勾选了 使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择)
在这个字段中可以看到,如下图所示:
希望我的回答能够帮到您!
给php的这个函数强制设定编码格式,这样也能解决这个问题,具体对应的位置是
①:dede/article_addphp 这个php文件中查找
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));
改成
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');
②:然后再找到dede/article_editphp这个php文件中查找
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));
改成
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');
③:include/ckeditor/ckeditor_php5php 查找
htmlspecialchars($value)
改为htmlspecialchars($value, ENT_COMPAT ,'GB2312')
有两个可能:
1如果是新建模型或者是复制模型的话,那这里需要增加模型属性,channelid='模型ID',模型ID可以
去后台模型管理中查看。
2在模型中添加字段的时候,需要选择:在前台模版中显示 那个选项。
你能修改模型或者是新建模型,相信你应该可以对你能根据以上两点查到问题的。
网站模板库 » dedecms网站栏目增加的字段在{dede:list}中调用不显示的解决方法。在dede:channel中调用显示。
0条评论