2011/04/24

Diazo Theming Tool

Diazo 能夠讀取設計師的網頁藍圖,搭配內容管理系統,即時產生網站的佈景主題,同時可以佈署數個網站,快速提供一致的操作介面。它是改善使用經驗的強大工具,整個過程不需要存取系統原有的程式碼。這項技術概念,早期由 Deliverance 和 XDV 提供實作,Diazo 著眼在簡化流程,讓佈署的門檻降得更低。

為了使用 Diazo,通常要進行下列的準備工作:
1. 找出佈景主題的檔案裡,哪些是動態顯示的部份,最好使用 HTML 的 id 識別碼,將它們標識出來。
2. 編寫規則設定檔的內容,使用 replace 或 copy 的語法,用來產生上述網頁裡的動態內容。
3. 找出佈景主題的檔案裡,哪些是共用的部份,指的通常是 <head /> 裡的 CSS 或 JavaScript 的程式碼,使用 append 或 prepend 的語法,將它們寫到規則設定檔裡。
4. 找出佈景主題的檔案裡,哪些部份是多餘的,在規則設定檔裡使用 drop 語法來刪除它們。

規則設定檔使用 XML 格式,可以利用 CSS3 或 XPath 的 selector,來指定負責顯示和內容的元件。

有了佈景主題的 HTML 檔案,還有規則設定的 XML 檔案,就可以利用 Diazo 的編譯器,把它們轉成一個 XSLT 檔案,接著佈署在網站應用程式裡,透過 Apache mod_transform 之類的 XSLT 處理器,就能動態產生搭配佈景主題的網站內容。

XSLT 的轉換動作很快,靜態的網頁資源,例如圖檔、CSS、JavaScript 等,也可以直接由靜態網站提供服務。

實用的情境之一,是使用一份佈景主題的 HTML 檔案,配合不同的網站應用程式,產生不同的 XSLT 檔案,再用網址比對的技巧,依照網頁請求來回應不同的 XSLT 檔案。

No comments: