欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  程序教程

织梦DedeCMS给文档添加自定义属性

程序员文章站 2021-11-21 18:16:01
...

制作网站主页、频道封面的时候,如果只是把某个栏目最新或者按特定排序方式的文档无选择的读出来,是存在很大不足的,还好织梦DedeCMS给用户提供了自定义文档属性功能,使用自定义属性之后,只要给arclist标记加上att='自定义属性的ID'的属性,然后在发布的时候对适合的文档选择专门的属性,那么使用arclist的地方就会按用户的意愿显示指定的文档。

不过使用织梦DedeCMS自定义文档属性,也有比较尴尬的时候,比如织梦DedeCMS默认的自定义属性不够用,或者名称不适用等,这些都需要用户自己对自定义属性进行增加及删除等操作,整理一篇织梦dedecms自定义属性增加及删除方法的文章。具体的操作步骤如下:

  1. 在织梦后台左栏点击“系统”;
  2. 选择“系统”菜单下的“SQL命令行工具”;
  3. 输入如下代码:
    insert into `dede_arcatt`(sortid,att,attname) values(9,'d','新自定义属性'); alter table `dede_archives` modify `flag` set ('c','h','p','f','s','j','a','b','d') default NULL;
  4. 选择多行命令,点击“确定”。

本操作是直接对数据库进行操作,操作之前请做好备份工作,以免误操作造成损失。

代码第1行:values(9,'d','新自定义属性') 是根据我们需要自行定义的,其中9是sortid的值,是不可重复的,也就是每添加一个自定义属性,sortid的值就应该递增到 10,11,12...,以此类推!

d是alt的值,是自定义属性的标记,与已存在的标记符号不能重复,“评论”是中文名称,是方便人们直观地了解自定义属性的含义的,可以根据需要改为其他名字,不影响调用。

代码第2行:set ('c','h','p','f','s','j','a','b','d'),括号中的字母对应已存在的标记符号和您需要添加的标记符号,并按顺序录入,不得改变先后顺序。例如,d排序第9位,则对应第一行代码中添加的自定义属性"新自定义属性"。

接下来是如何在首页或者频道页面模板中调用的问题,跟其他自定义属性的调用是一样的,只需要在属性flag中加入新增加属性的字段名,就可以调用文档中已经勾选新增加自定义属性名的文档了。

修改和删除自定义文档属性的方法和添加的方法大同小异,都是操作那两个数据表。如果SQL语句不会写的话,建议使用phpmyadmin这样的面板,直接进行数据库操作。下面举几个使用SQL语句对织梦DedeCMS自定义文档属性进行操作的例子。

以添加一个名为“超级推荐”的文档自定义属性为例,表前缀为织梦DedeCMS默认,自定义表前缀的对应修改:

添加“超级推荐”自定义属性执行以下SQL语句,意思是添加超级推荐[e]属性:

insert into `dede_arcatt`(sortid,att,attname) values(9,'e','超级推荐');alter table `dede_archives` modify `flag` set ('c','h','p','f','s','j','a','b','e') default NULL;

修改“超级推荐”自定义属性执行以下SQL语句,意思是把滚动[s]修改为"111":

UPDATE `dede_arcatt` SET `attname` = '111' WHERE CONVERT( `dede_arcatt`.`att` USING utf8 ) = 's' LIMIT 1 ;

删除“超级推荐”自定义属性执行以下SQL语句,意思是删除超级推荐[e]:

DELETE FROM ` dede_arcatt`WHERE CONVERT(dede_arcatt`,`att`USING utf8)+`e`LIMIT 1