動易SiteFactory版模板處理方案與2006比對(1)
動易 SiteFactory 系統(tǒng)中采用的模板處理方案,與之前的06版比較起來,是一套全新設(shè)計的、基于成熟的XML+XSLT技術(shù)、用戶可完全自主控制的方案。本方案充分釋放了站長對自己網(wǎng)站的風(fēng)格、代碼習(xí)慣、數(shù)據(jù)來源的掌控權(quán)。制作網(wǎng)站時,站長們無需再像老版本系統(tǒng)中那樣受制于內(nèi)置標簽對格式的限制,可以自主創(chuàng)建任意風(fēng)格的代碼結(jié)構(gòu)。從而使自己的站點的表現(xiàn)更加自由活躍。下面,筆者就從不同的著眼點出發(fā),一一對這兩個版本的特點做出比較。
一 模板流程概述:
06版中的模板引擎,解析流程如下圖所示:
該引擎的特點是,標簽處理過程內(nèi)置,使用簡單,但效果單一,雖然系統(tǒng)已經(jīng)盡可能多的提供了各種參數(shù)來控制輸出樣式,但畢竟數(shù)量有限,從而影響了網(wǎng)站的表現(xiàn)力和應(yīng)用范圍。
動易 SiteFactory 則完全重構(gòu)了這個部分,流程圖如下:
從圖中可以看出,動易 SiteFactory 與06版在模板引擎流程上面的巨大區(qū)別。工作平臺從 ASP 轉(zhuǎn)換到了.NET并引入了多層開發(fā)概念的動易 SiteFactory 版,實際上已經(jīng)演化成了一個多種數(shù)據(jù)源的綜合處理系統(tǒng)。
二 標簽樣式:
06版延續(xù)使用了動易首創(chuàng)的“函數(shù)式標簽系統(tǒng)”,基本結(jié)構(gòu)如下:
{$labelname(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10}
像這種樣式的函數(shù)標簽,提供很多參數(shù),方便了站長取得不同的列表內(nèi)容,但它也有一個弱點,就是每一個參數(shù)的功能、順序位置和參數(shù)的數(shù)量,在編輯模板時,都必須嚴格按照規(guī)則輸入,不允許有任何的錯誤。
動易 SiteFactory 中的標簽樣式則改用了符合 XML 規(guī)范的參數(shù)形式,基本結(jié)構(gòu)如下:
{$pe id=”labelname” titlelen=”10” tip=”true” conlen=”50” classid=”10” target=”_blank” /}
當所有的參數(shù)都不需要特意指定,使用默認值時,您也可寫成:
{$pe id=”labelname”/}
或者
{$pe titlelen=”10” tip=”true” conlen=”50” id=”labelname”/}
可以看出,動易 SiteFactory 標簽樣式在實用性和容錯性上,比06版是大有改善了吧。
三 標簽定義:
06版:沒什么好說的,系統(tǒng)標簽全部都是固化在組件里,雖然用戶可以通過自定義動態(tài)標簽,和自定義函數(shù)標簽來定制一些獨特的效果,但畢竟功能有限。
動易 SiteFactory :徹底的開放式自定義標簽環(huán)境,標簽名稱、標簽參數(shù)、數(shù)據(jù)來源、內(nèi)容模板全部都開放給網(wǎng)站制作者進行自定義,使用戶可以自主控制標簽輸出的每一行代碼。
四 模板存儲方式:
06版:頁面模板以字符串形式存儲在數(shù)據(jù)庫內(nèi)。
動易 SiteFactory :頁面模板以文件形式存放在硬盤里,用戶可通過直接上傳的方式進行模版的編輯和修改,既方便了使用本地編輯器的用戶,備份和管理工作相對06版也更加直觀和清晰。
通過對網(wǎng)站模版路徑的設(shè)置,可以很方便的對網(wǎng)站整體風(fēng)格進行轉(zhuǎn)換
五 模板編輯器:
06版本的模板編輯,使用了可視化的在線編輯器,通過右鍵的快捷方式,可以快速的編輯和修改模板和標簽代碼,但這種編輯器有一個重大的弱點,就是不夠規(guī)范,它經(jīng)常會自作主張的修改用戶輸入的源代碼,使其不能符合用戶的要求,舉個簡單的小例子:
比如,您輸入的標準 HTML 代碼為
經(jīng)過編輯器的分析,它會自動修改為
這種修改會導(dǎo)致整個頁面不能通過 HTML 規(guī)范的檢查。
動易 SiteFactory 在這方面做出了一定的改變,考慮到用戶對輸出代碼的絕對控制權(quán),我們放棄了使用在線的可視化編輯器進行模板和標簽編輯,轉(zhuǎn)而使用純粹的在線代碼編輯器+本地可視化編輯工具相結(jié)合的方案,用戶可以使用 DW 或其他任何軟件,在本地編輯出滿意的模板文件后,直接上傳到網(wǎng)站后臺進行一下標簽添加,就可以使用這個模板了。
各位可能會想,后臺添加標簽如果是在源碼方式下,操作很麻煩,還要輸入標簽的各種參數(shù),工作量也不會小的。
實際上無須擔心,動易已經(jīng)為我們考慮了這個問題,后臺雖然是在源碼狀態(tài)編輯的,但象06版一樣,動易 SiteFactory 依舊提供了可視化的標簽編輯器和拖放式的操作,最大限度的簡化了模板編輯的難度。
六 數(shù)據(jù)源:
06版:只能使用主數(shù)據(jù)庫里面的限定的表,即便是使用動態(tài)標簽技術(shù),也無法脫離主數(shù)據(jù)庫的范圍。
動易 SiteFactory :數(shù)據(jù)源的多樣化,可以說是動易 SiteFactory 的重點功能之一,脫離了系統(tǒng)數(shù)據(jù)庫的限制,網(wǎng)站管理人員可以對使用任意數(shù)據(jù)庫的系統(tǒng)進行數(shù)據(jù)整合,而無須對方提供數(shù)據(jù)接口,通過對多種不同系統(tǒng)數(shù)據(jù)源的整理,用戶可以把自己的網(wǎng)站建設(shè)成一個綜合信息查看系統(tǒng)。
舉個例子來說,很多企業(yè)內(nèi)部網(wǎng)絡(luò)上運行著不同數(shù)據(jù)庫構(gòu)成的各種應(yīng)用系統(tǒng),比如 OA 系統(tǒng)、質(zhì)量信息管理系統(tǒng)、設(shè)備管理系統(tǒng)等等,通過動易 SiteFactory 的多數(shù)據(jù)源讀取功能,我們可以將這些系統(tǒng)中的大部分信息讀入到網(wǎng)站系統(tǒng)里,處理后輸出到同一個頁面。這樣,網(wǎng)站用戶就可以通過網(wǎng)站中統(tǒng)一的界面對這些數(shù)據(jù)進行查看,而不必依次登陸到各個系統(tǒng)中去,簡化了管理人員對數(shù)據(jù)的閱覽方式,提高了效率。
七 分頁:
06版:只有在允許分頁的頁面里,使用分頁標簽進行分頁,且分頁樣式單一,只有中英文各一種標簽,用戶不能自行修改標簽樣式。
動易 SiteFactory :引用了類似于 VS2005 開發(fā)工具提供的分頁概念,任意頁面中,只要添加一個分頁標簽,并為其指定數(shù)據(jù)源標簽,就可以實現(xiàn)頁面分頁,在同一頁面中,用戶還可以添加其他不同樣式的分頁標簽,它們都可以正常工作,且互不干擾。
通過 Ajax 技術(shù),動易 SiteFactory 還實現(xiàn)了同一頁面多分頁標簽并存的效果,甚至可以進行分頁標簽的嵌套顯示。同時,每個分頁的樣式都可以在后臺自行選擇和編輯,可以這樣說,動易 SiteFactory 的分頁功能,在同類系統(tǒng)中達到了一個史無前例的新高度。
下圖是動易 SiteFactory 實現(xiàn)的同頁面多分頁標簽并存的示例,其中紅框標出的分頁標簽都能對自己的數(shù)據(jù)源標簽進行分頁,且互不干擾:
八 可編程:
06版:不存在編程的問題,模板中只能使用 JavaScript 代碼,而不能使用其他任何的服務(wù)器端程序語言,這成了二次開發(fā)最大的屏障。
動易 SiteFactory :標簽?zāi)0蹇梢允褂?C#、VB、JavaScript 和標準的 XSLT 語句,對數(shù)據(jù)進行處理輸出,下圖中就是同時在標簽編輯器里使用三種不同程序語言的示例:
動易 SiteFactory 的程序編輯,還注重了方便快捷,我們提供了很多常用的內(nèi)置方法,最大程度的簡化了編程的難度:
九 標準化
06版:使用動易自創(chuàng)的標簽樣式,和循環(huán)處理格式,對于非動易用戶來說,需要進行專門的學(xué)習(xí)才可以使用。
動易 SiteFactory :標簽樣式引入了 XML 規(guī)范,屬性命名清晰,無須查找用戶手冊即可準確的知道標簽中每一個參數(shù)的功能和作用。標簽編輯語法嚴格符合 XSLT 規(guī)范,由于 XSLT 是 W3C 確認的國際規(guī)范,用戶無須對動易系統(tǒng)進行特殊學(xué)習(xí),即可上手使用。即便用戶需要重新學(xué)習(xí) XSLT 語法,也不會造成知識的浪費,學(xué)會了 XSLT,也就等于掌握了一門可以通行于 XML 世界的技能,而非動易專有的知識,開發(fā)人員即便脫離動易系統(tǒng),這種技能依舊可以發(fā)揮重要的作用。
十 結(jié)束語
總的來說,動易 SiteFactory 使用的模板處理方案相對于06版,是一個比較大的飛躍,我們秉承著“自由,開放”的原則開發(fā)的這款引擎,將引導(dǎo) CMS 行業(yè)的整體設(shè)計概念發(fā)生轉(zhuǎn)換,從簡單的網(wǎng)站管理系統(tǒng),進化為多功能、高性能的數(shù)據(jù)綜合顯示系統(tǒng)。
用戶登錄
還沒有賬號?
立即注冊