以下部分為原創(chuàng ),如需轉載請注明“出處:http://3rgb.com 作者:檸檬園主”
上次我們講了FCKeditor的使用相關(guān)的設置以及一些優(yōu)化設置,對于普通的用戶(hù)已經(jīng)很受用了,今天再來(lái)講幾個(gè)小技巧,另外著(zhù)重講一下對上傳文件部分的定制,適用于高級用戶(hù)。
第一部分,裝自己定制的插件,實(shí)現模板標簽(開(kāi)源的東西就有這點(diǎn)好處,隨心所欲地修改),打開(kāi)fckconfig.js文件找到 // FCKConfig.Plugins.Add( ‘placeholder‘, ‘en,it‘ ) ;
FCKConfig.PluginsPath = FCKConfig.BasePath + ‘plugins/‘ ;
去掉//后,就相當于把placeholder這個(gè)插件功能加上了,fckeditor的插件文件都在/editor/plugins/文件夾下分類(lèi)按文件夾放置的,對于fckeditor2.0來(lái)說(shuō),里面有兩個(gè)文件夾,也就是有兩個(gè)官方插件,placeholder這個(gè)文件夾就是我們剛才加上去的,主要用于多參數或單參數自定義標簽的匹配,這個(gè)在制作編輯模板時(shí)非常管用,要想看具體實(shí)例的話(huà),大家可以去下載acms這個(gè)系統查看學(xué)習,另一個(gè)文件夾tablecommands就是編輯器里的表格編輯用到的了。當然,如果你想制作自己其它用途的插件,那就只要按照f(shuō)ckeidtor插件的制作規則制作完放置在/editor/plugins/下就行,然后再在fckeidtor.js里再添加FCKConfig.Plugins.Add(‘Plugin Name‘,‘,lang,lang‘);就可以了。
第二部分 ,如何讓編輯器一打開(kāi)的時(shí)候,編輯工具條不出現,等點(diǎn)“展開(kāi)工具欄”時(shí)才出現?Easy,FCKeditor本身提供了這個(gè)功能啦,打開(kāi)fckconfig.js,找到
FCKConfig.ToolbarStartExpanded = true ;
改成
FCKConfig.ToolbarStartExpanded = false ;
就可以啦!
第三部分,使用自己的表情圖標,同樣打開(kāi)fckcofnig.js到最底部那一段
上面這段已經(jīng)是我修改過(guò)的了,為了我發(fā)表此文的版面不會(huì )被撐得太開(kāi),我把FCKConfig.SmileyImages那一行改得只有三個(gè)表情圖了。
第一行,當然是表情圖標路徑的設置,第二行是相關(guān)表情圖標文件名的一個(gè)List,第三行是指彈出的表情添加窗口最每行的表情數,下面兩個(gè)參數是彈出的模態(tài)窗口的寬和高嘍。
第四部分,文件上傳管理部分
此部分可能是大家最為關(guān)心的,上一篇文章簡(jiǎn)單的講了如何修改來(lái)上傳文件以及使用fckeidtor2.0才提供的快速上傳功能。再我們繼續再深層次的講解上傳功能
FCKConfig.LinkBrowser = true ;
FCKConfig.ImageBrowser = true ;
FCKConfig.FlashBrowser = true ;在fckconfig.js找到這三句,這三句不是連著(zhù)的哦,只是我把他們集中到這兒來(lái)了,設置為true的意思就是允許使用fckeditor來(lái)瀏覽服務(wù)器端的文件圖像以及flash等,這個(gè)功能是你插入圖片時(shí)彈出的窗口上那個(gè)“瀏覽服務(wù)器”按鈕可以體現出來(lái),如果你的編輯器只用來(lái)自己用或是只在后臺管理用,這個(gè)功能無(wú)疑很好用,因為他讓你很直觀(guān)地對服務(wù)器的文件進(jìn)行上傳操作。但是如果你的系統要面向前臺用戶(hù)或是像blog這樣的系統要用的話(huà),這個(gè)安全隱患可就大了哦。于是我們把其一律設置為false;如下
FCKConfig.LinkBrowser = false ;
FCKConfig.ImageBrowser = false ;
FCKConfig.FlashBrowser = false ;
這樣一來(lái),我們就只有快速上傳可用了啊,好!接下來(lái)就來(lái)修改,同樣以asp為范例進(jìn)行,進(jìn)入/editor/filemanager/upload/asp/打開(kāi)config.asp,修改
ConfigUserFilesPath = "/UserFiles/"這個(gè)設置是上傳文件的總目錄,我這里就不動(dòng)了,你想改自己改了
好,再打開(kāi)此目錄下的upload.asp文件,找到下面這一段
然后再在其后面添加
這樣的話(huà),上傳的文件就進(jìn)入“/userfiles/文件類(lèi)型(如image或file或flash)/年/月/”這樣的文件夾下了,這個(gè)設置對單用戶(hù)來(lái)用已經(jīng)足夠了,如果你想給多用戶(hù)系統用,那就這樣來(lái)改
這樣上傳的文件就進(jìn)入“/userfiles/用戶(hù)目錄/文件類(lèi)型/年/月/”下了,當然如果你不想這么安排也可以修改成別的,比如說(shuō)用戶(hù)目錄再深一層等,這里的Session("username")請根據自己的需要進(jìn)行修改或換掉。
上傳的目錄設置完了,但是上傳程序還不會(huì )自己創(chuàng )建這些文件夾,如果不存在的話(huà),上傳不會(huì )成功的,那么我們就得根據上面的上傳路徑的要求進(jìn)行遞歸來(lái)生成目錄了。
找到這一段
把它下面的這兩行
用下面這一段代碼來(lái)替換
用這段代碼就可以生成你想要的文件夾了,在上傳的時(shí)候自動(dòng)生成。
好了,上傳文件的修改到現在可以暫時(shí)告一段落了,但是,對于中文用戶(hù)還存在這么個(gè)問(wèn)題,就是fckeditor的文件上傳默認是不改名的,同時(shí)還不支持中文文件名,這樣一來(lái)是上傳的文件會(huì )變成“.jpg”這樣的無(wú)法讀的文件,再就是會(huì )有重名文件,當然重名這點(diǎn)倒沒(méi)什么,因為fckeditor會(huì )自動(dòng)改名,會(huì )在文件名后加(1)這樣來(lái)進(jìn)行標識。但是,我們通常的習慣是讓程序自動(dòng)生成不重復的文件名
在剛才那一段代碼的下面緊接著(zhù)就是
‘ Get the uploaded file name.
sFileName = oUploader.File( "NewFile" ).Name
看清楚了,這個(gè)就是文件名啦,我們來(lái)把它改掉,當然得有個(gè)生成文件名的函數才行,改成下面這樣
‘//取得一個(gè)不重復的序號
Public Function GetNewID()
dim ranNum
dim dtNow
randomize
dtNow=Now()
ranNum=int(90000*rnd)+10000
GetNewID=year(dtNow) & right("0" & month(dtNow),2) & right("0" & day(dtNow),2) & right("0" & hour(dtNow),2) & right("0" & minute(dtNow),2) & right("0" & second(dtNow),2) & ranNum
End Function
‘ Get the uploaded file name.
sFileName = GetNewID() &"."& split(oUploader.File( "NewFile" ).Name,".")(1)
這樣一來(lái),上傳的文件就自動(dòng)改名生成如20050802122536365.jpg這樣的文件名了,是由年月日時(shí)分秒以及三位隨機數組成的文件名了。
聯(lián)系客服