POST TIME:2017-11-13 00:26
制作網(wǎng)站主頁、頻道封面的時候,如果只是把某個欄目最新或者按特定排序方式的文檔無選擇的讀出來,是存在很大不足的,還好織夢DedeCMS給用戶提供了自定義文檔屬性功能,使用自定義屬性之后,只要給arclist標(biāo)記加上att='自定義屬性的ID'的屬性,然后在發(fā)布的時候?qū)m合的文檔選擇專門的屬性,那么使用arclist的地方就會按用戶的意愿顯示指定的文檔。
不過使用織夢DedeCMS自定義文檔屬性,也有比較尷尬的時候,比如織夢DedeCMS默認(rèn)的自定義屬性不夠用,或者名稱不適用等,這些都需要用戶自己對自定義屬性進(jìn)行增加及刪除等操作,整理一篇織夢dedecms自定義屬性增加及刪除方法的文章。具體的操作步驟如下:
在織夢后臺左欄點擊“系統(tǒng)”;
選擇“系統(tǒng)”菜單下的“SQL命令行工具”;
輸入如下代碼:
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;
選擇多行命令,點擊“確定”。
本操作是直接對數(shù)據(jù)庫進(jìn)行操作,操作之前請做好備份工作,以免誤操作造成損失。
代碼第1行:values(9,'d','新自定義屬性') 是根據(jù)我們需要自行定義的,其中9是sortid的值,是不可重復(fù)的,也就是每添加一個自定義屬性,sortid的值就應(yīng)該遞增到 10,11,12...,以此類推!
d是alt的值,是自定義屬性的標(biāo)記,與已存在的標(biāo)記符號不能重復(fù),“評論”是中文名稱,是方便人們直觀地了解自定義屬性的含義的,可以根據(jù)需要改為其他名字,不影響調(diào)用。
代碼第2行:set ('c','h','p','f','s','j','a','b','d'),括號中的字母對應(yīng)已存在的標(biāo)記符號和您需要添加的標(biāo)記符號,并按順序錄入,不得改變先后順序。例如,d排序第9位,則對應(yīng)第一行代碼中添加的自定義屬性"新自定義屬性"。
接下來是如何在首頁或者頻道頁面模板中調(diào)用的問題,跟其他自定義屬性的調(diào)用是一樣的,只需要在屬性flag中加入新增加屬性的字段名,就可以調(diào)用文檔中已經(jīng)勾選新增加自定義屬性名的文檔了。
修改和刪除自定義文檔屬性的方法和添加的方法大同小異,都是操作那兩個數(shù)據(jù)表。如果SQL語句不會寫的話,建議使用phpmyadmin這樣的面板,直接進(jìn)行數(shù)據(jù)庫操作。下面舉幾個使用SQL語句對織夢DedeCMS自定義文檔屬性進(jìn)行操作的例子。
以添加一個名為“超級推薦”的文檔自定義屬性為例,表前綴為織夢DedeCMS默認(rèn),自定義表前綴的對應(yīng)修改:
添加“超級推薦”自定義屬性執(zhí)行以下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;
修改“超級推薦”自定義屬性執(zhí)行以下SQL語句,意思是把滾動[s]修改為"111":
UPDATE `dede_arcatt` SET `attname` = '111' WHERE CONVERT( `dede_arcatt`.`att` USING utf8 ) = 's' LIMIT 1 ;
刪除“超級推薦”自定義屬性執(zhí)行以下SQL語句,意思是刪除超級推薦[e]:
DELETE FROM ` dede_arcatt`WHERE CONVERT(dede_arcatt`,`att`USING utf8)+`e`LIMIT 1;