进入后台——系统——SQL命令行工具——运行SQL命令行:
insert into `dede_arcatt`(sortid,att,attname) values(9,'mn','自定义名称');
alter table `dede_archives` modify `flag` set ('h','c','p','f','s','j','a','b','d') default NULL;
注意:织梦自身有8个自定义属性,所以sortid应该从9开始,不能跟1-8重复;att自定义的调用标记;attname自定义属性的名称;
代码第2行:set ('c','h','p','f','s','j','a','b','mn'),括号中的字母对应已存在的标记符号和您需要添加的标记符号,并按顺序录入,不得改变先后顺序。例如,mn排序第9位,则对应第一行代码中添加的自定义属性“mn”。
使用“自定义属性”
后台——模板——默认模板管理——这里找到自己要使用自定义属性的模板
{dede:arclist flag='mn' limit='0,1' titlelen='64'}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:arclist}
注意:其中flag后写你自己自定义的属性,其他的跟织梦调用标签一样
扫描二维码关注公众号,回复:
742012 查看本文章
附:
当用户新增自定义属性代码为多位字符的时候,提交文章后,会出现识别错误。
例如: ID 属性名称 a 首屏 b 推荐 ab 自定义焦点 如果新发布文章时,选择属性为“ab”,文章提交发布成功后,在文章编辑界面,你会发现,属性变成了“a”、“b”、“ab”三个都被选中
检查代码后发现,Dede
cms团队在文章编辑页面,做属性轮询时,用了一个正则来匹配:
- if(preg_match("#".$trow->att."#",$arcRow['flag'] ))
这就是出错原因所在了,知道原因,就好修改了,我们改为:
- $flags = explode(',',$arcRow['flag']);
- if(in_array($trow->att,$flags))
OK,再测试,没有问题了