周斌



摘 要:隨著信息化社會的發展,網站集群建設日漸普遍,集群內網站頁面更新也逐漸加快,從而導致網站集群維護成本升高,甚至制約了企事業單位信息化的發展。針對該問題,提出一種基于頁面基礎元素構建多版本網站集群的模型,該模型基于頁面結構、單元塊及其它頁面基礎元素動態組合構建頁面模板,實現頁面元素復用與快捷變更;通過網站版本管控,實現網站多狀態快捷切換;將網站版本與欄目信息及模板整合,實現站內多版本頁面內容復用與批量更新。實踐結果表明,基于該模型的內容管理系統能夠快捷應對頁面頻繁變更和網站多版本切換,實現頁面基礎元素和頁面模板的高效復用與更新。
關鍵詞:網站集群;內容管理系統;頁面基礎元素;頁面模板;網站版本
DOI:10. 11907/rjdk. 201388????????????????????????????????????????????????????????????????? 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP303 ? 文獻標識碼:A ??????????????? 文章編號:1672-7800(2020)011-0066-05
A Model of Website Cluster Construction Based on Fragmented Page Elements
ZHOU Bin
(School of Information Engineering,Wuhan University of Engineering Science, Wuhan 430200,China)
Abstract:With the development of information society, the construction of website cluster is becoming more and more common, and the page update of websites in the cluster is accelerating gradually, which leads to the increase of maintenance cost of website cluster, and even restricts the development of enterprise and institution informatization. To solve this problem, a multi-version web site cluster model based on page basic elements is proposed. Based on the dynamic combination of page structure, unit block and other page basic elements, the model constructs page template to realize the reuse and quick change of page elements; through the website version control, it realizes the quick switch of website multi-state, integrates the website version with column information and template to realize the reuse and batch update of multi version page content in the station. The practice shows that CMS based on this model can quickly respond to frequent page changes and website multi-version switching, and realize the efficient reuse and update of page basic elements and page templates.
Key Words:website cluster; content management system; basic elements of page; page template; website version
0 引言
網站集群建設在當今社會的應用已較為廣泛,其主要依賴支持多網站的內容管理系統(Content Management System,CMS)軟件實現網站集群的信息化管理[1-7]。一批較為成熟的CMS技術被廣泛應用于各類網站集群建設中,如基于各種框架技術或開源的CMS等[8-11]。隨著社會發展速度不斷加快,網站集群的頁面和結構等方面的變更也隨之加快,網站版本更替的時間逐漸縮短,甚至出現了一個網站多個版本交替切換的需求。目前的主流CMS大多難以高效應對網站集群內的版本變更與管控,且較少考慮網站集群內頁面資源共享問題,導致在單位時間內網站集群開發與維護工作量上升,提高了網站集群運行成本,甚至制約了企事業單位信息化的發展。
要解決這一問題,必須使CMS具備網站頁面等方面的快捷變更與重構能力。為此,多種改進方案被提出[12-15]。例如,文獻[16]提出一種將頁面分解成若干區域,各區域包含若干組件,基于可復用組件展示內容的模型,該模型提高了界面組件的復用性,在單網站環境下提升了CMS的運行效率。此外,文獻[17]-[24]提出基于模板等方式構建網站集群,但這些模型在網站集群環境下對大量相同或相似的頁面基礎元素復用性不高,且應對同一網站多版本共存時效果不佳。因此,本文提出一種基于碎片化頁面基礎元素構建多版本網站集群的模型,在傳統CMS模型基礎上進一步細化頁面元素復用粒度,支持快捷、動態構建或變更網站集群架構、網站結構及頁面,并支持網站版本管控,從而較好地解決上述問題。
1 當前CMS問題分析與改進措施
1.1 當前主流CMS存在問題描述
目前主流的CMS通常支持網站內容發布與管理以及比較固化的網站頁面結構管理,在應對較為頻繁的網站變更時存在以下幾個突出問題:
(1)頁面結構和樣式通常由專業的前端程序員設計編寫代碼后加入CMS中,以此生成前端頁面,如需變更頁面樣式,只能依靠前端程序員修改或重新設計頁面代碼后重新生成。在頁面頻繁變更時工作量較大,且必須由技術人員完成。
(2)缺乏版本管控能力。當因某些原因需將更新后的網站恢復到原先版本,或需要網站同時具備多個版本以便根據需求隨時切換時,同樣只能由程序員修改或重新設計頁面代碼。該方式增加了程序員負擔,且效率低下。
(3)當同時運營由多個網站組成的網站集群時,各網站資源均獨立管理,無法做到各網站之間資源共享。若集群下各網站具有相同或相近的界面布局、樣式、界面元素等基礎資源時,必然會造成資源重復存儲,且不便于統一變更與管理。
1.2 改進措施
為解決上述問題,本文在目前主流CMS基礎上作出以下4點針對性改進:
(1)增加網站版本管控能力。在傳統CMS網站管理基礎上增加網站版本管理功能,每個網站對應若干版本,可根據需要在各版本間切換,同時增加版本復制功能,為快捷建立相似版本的網站打下基礎。
(2)傳統CMS通過整體式頁面模板構建前端頁面,將整體式頁面模板分解成框架模板和頁面基礎元素,并以信息化形式進行管理。框架模板通過整合各類頁面基礎元素形成邏輯上的整體模板,進而構建前端頁面,即把通過整體頁面模板構建前端頁面的模式改為由“框架模板+頁面基礎元素”構建前端頁面的模式,以便于框架模板和頁面基礎元素的資源復用與快捷變更。
(3)將傳統CMS中整體頁面模板歸屬網站的模式改為框架模板關聯網站下屬版本的模式。所有網站下屬各版本均可共享框架模板,各框架模板同樣關聯并共享頁面基礎元素,從而達到框架模板和頁面基礎元素利用最大化,且便于頁面批量變更的目的。
(4)在傳統CMS中信息內容歸屬網站的基礎上,增加與該網站下各版本的關聯選擇功能。由此可根據需要選擇站內信息在該網站下各版本中的顯示特性,以達到同一網站下各版本間信息內容共享,并靈活、便捷管控各版本內信息內容的目的。
2 基于碎片化頁面元素構建網站集群的模型
本文提出的模型將傳統CMS中整體式頁面模板進行分解,形成頁面基礎元素,以碎片化、通用化、模塊化、信息化形式分級管理頁面結構、結構中的單元塊、頁面圖片、層疊樣式表單(Cascading Style Sheets,CSS)和JavaScript(JS)腳本。其中,頁面結構用于限定頁面布局,布局中每部分由相應頁面單元塊填充,頁面單元塊中包含關聯頁面圖片、CSS、JS與信息內容標記,在此基礎上構建邏輯型的整體頁面模板,并實現頁面基礎元素資源共享。
頁面模板是指除信息內容外頁面的其它部分,通過將模板中的內容區域標記與相應信息內容相整合,生成前端頁面。
在網站下增設版本管理功能,網站版本與網站欄目和頁面模板相關聯,從而構建網站下各版本欄目和頁面模板,進而匹配相應欄目發布的信息內容,結合頁面模板生成該版本網站下相應欄目的前端頁面。
基于此,網站頁面生成基本流程如圖1所示。在創建頁面結構、頁面單元塊、頁面圖片、CSS和JS基礎上,通過整合相應頁面基礎元素構建頁面模板,同時在網站下建立網站版本和欄目,并將網站版本與欄目建立關聯,進而將頁面模板與網站版本及欄目建立關聯,構建該網站版本的欄目和頁面模板,結合網站下對應欄目發布的信息內容生成相應前端頁面。
本模型在結構上將CMS分為6部分:頁面基礎元素部分、網站管理部分、欄目管理部分、頁面模板部分、網站內容部分和系統基礎管理部分,如圖2所示。
2.1 頁面基礎元素部分
頁面基礎元素是創建頁面模板的基礎,包含頁面結構、頁面單元塊、圖片、CSS、JS等。其中,頁面結構內嵌頁面單元塊,頁面單元塊中包含頁面圖片、CSS、JS和內容標記。
(1)頁面結構用于構建頁面布局,其HTML腳本代碼以信息化形式存儲于數據庫中。每個頁面結構既可用于創建頁面模板,也可作為子結構嵌入其它頁面結構形成邏輯上的新結構,從而為創建頁面模板提供邏輯上的頁面布局基礎。如圖3所示,在每種頁面結構中標記可嵌入子結構或頁面單元塊的區域(如圖中的A、B、C、D、E區域),在圖3(a)中的標記區域B嵌入如圖3(b)所示的子結構,生成如圖3(c)所示的頁面結構,形成A、C、D、E區域。在這些區域可再次嵌入其它頁面結構,也可嵌入相應頁面單元塊。
(2)頁面單元塊內嵌于頁面結構相應區域,同樣以HTML形式存儲于數據庫中,其包含若干內容標記用于后期動態匹配信息內容,同時通過標記圖片、CSS、JS的信息ID與之進行關聯,以便在創建頁面模板時替換成相應圖片、CSS和JS,如圖4所示。