1. 程式人生 > >dede欄目ID如何修改?

dede欄目ID如何修改?

dede欄目ID可以修改了,申請加精啊

努力了兩天兩夜終於搞清楚了dede資料表結構了

先說明一下,很多朋友和我一樣,刪除了部分欄目,導致部分欄目id空缺,結果是生成HTML時老是出錯。現在我說下我的情況: 

我的網站建立了十個頂級欄目,七十多個二級欄目,由於使用不便,刪除了三個二級欄目,導致空缺幾個id 

打個比方我刪除了id是41的欄目,生成HTML時,生成到這個欄目時就出錯,很不爽!! 

現在我們調整一下欄目id,把後面的提上來彌補41,也就是說利用sql語法從資料庫把id42替換成41,id43替換成42……依此類推。 

具體修改方法: 

1、替換所需的SQL語法 
UPDATE `表名` SET `欄位` = REPLACE(`欄位`,'替換內容','替換值');

2、需要替換id的資料表 
由於我使用的是下載頻道,所以需要修改一下資料表,你如果用的是文章根據需要在調整: 
dede_addonsoft 
dede_arctype 
dede_archives 
dede_cache_feedbackurl 
dede_full_search 
dede_tag_list 

在這幾個表中,代表欄目id的欄位稍微有些不同,有的是“ID”、“tyeid”或者“feedid”,自己根據資料表來確定到底是哪個欄位。 
3.完成第二步, 
開啟根目錄下data\cache中inc_catalog_base.php檔案 
這個檔案依然儲存著曾經刪除的id,形式如下: 
複製程式碼
  1. $_Cs[1]=array(0,3,1); 
    $_Cs[2]=array(0,3,1); 
    $_Cs[3]=array(0,3,1); 
    $_Cs[4]=array(0,3,1); 
    $_Cs[5]=array(0,3,1); 
    $_Cs[6]=array(0,3,1); 
    $_Cs[7]=array(0,3,1); 
    $_Cs[8]=array(0,3,1); 
    $_Cs[9]=array(0,3,1);


其中cs()括號中代表是二級欄目,array()括號中第一個數字代表是頂級欄目,現在開啟網站後臺,根據後臺的二級欄目與頂級欄目的對應關係修改此檔案 

儲存,重新整理後臺。 
大功告成