利用開(kāi)源CMS 建立基于Web2. 0 的圖書(shū)館門(mén)戶網(wǎng)站的實(shí)踐.doc_第1頁(yè)
利用開(kāi)源CMS 建立基于Web2. 0 的圖書(shū)館門(mén)戶網(wǎng)站的實(shí)踐.doc_第2頁(yè)
利用開(kāi)源CMS 建立基于Web2. 0 的圖書(shū)館門(mén)戶網(wǎng)站的實(shí)踐.doc_第3頁(yè)
利用開(kāi)源CMS 建立基于Web2. 0 的圖書(shū)館門(mén)戶網(wǎng)站的實(shí)踐.doc_第4頁(yè)
利用開(kāi)源CMS 建立基于Web2. 0 的圖書(shū)館門(mén)戶網(wǎng)站的實(shí)踐.doc_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

利用開(kāi)源CMS建立基于Web2.0的圖書(shū)館門(mén)戶網(wǎng)站的實(shí)踐張平杉 馬蕾 (四川大學(xué)公共管理學(xué)院信息資源管理系 成都 610064)【摘要】?jī)?nèi)容管理系統(tǒng)(Content Mangangement System)可以達(dá)到網(wǎng)站管理的高效率,增強(qiáng)與用戶的互動(dòng)。本文對(duì)開(kāi)源內(nèi)容管理系統(tǒng)Drupal進(jìn)行介紹,并以此為工具開(kāi)發(fā)了基于Web2.0的圖書(shū)館門(mén)戶網(wǎng)站,探討了實(shí)現(xiàn)內(nèi)容管理的四川師范大學(xué)圖書(shū)館門(mén)戶網(wǎng)站的方法和步驟。【關(guān)鍵詞】開(kāi)源 內(nèi)容管理系統(tǒng) Drupal 門(mén)戶網(wǎng)站建設(shè) 【分類號(hào)】TP3935引言內(nèi)容管理系統(tǒng)(Content Mangangement System),簡(jiǎn)稱CMS,是一種位于WEB前端(Web 服務(wù)器)和后端辦公系統(tǒng)或流程(內(nèi)容創(chuàng)作、編輯)之間的軟件系統(tǒng),能把網(wǎng)站中的內(nèi)容(比如文字,圖片等)從網(wǎng)頁(yè)中分離出來(lái),進(jìn)行單獨(dú)管理,從而達(dá)到內(nèi)容和形式相分離,使得網(wǎng)站能夠更容易地管理和維護(hù)。CMS與XML技術(shù)所倡導(dǎo)的文檔樣式、結(jié)構(gòu)、內(nèi)容三者分離來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的高效管理的思想如出一轍。其基本思想是分離內(nèi)容的管理和設(shè)計(jì):頁(yè)面設(shè)計(jì)存儲(chǔ)在模板里,而內(nèi)容存儲(chǔ)在數(shù)據(jù)庫(kù)或獨(dú)立的文件中。 當(dāng)一個(gè)用戶請(qǐng)求頁(yè)面時(shí),各部分聯(lián)合生成一個(gè)標(biāo)準(zhǔn)的 HTML 頁(yè)面。隨著突出以用戶中心,注重與用戶交互的Web2.0浪潮的展開(kāi)以及開(kāi)放源碼軟件的廣泛應(yīng)用,高校圖書(shū)館網(wǎng)站有了達(dá)成更好服務(wù)效率和更佳服務(wù)方式的技術(shù)條件。高校圖書(shū)館是一個(gè)以提供信息查詢利用服務(wù)為主要目的的機(jī)構(gòu),利用內(nèi)容管理系統(tǒng)來(lái)進(jìn)行圖書(shū)館門(mén)戶網(wǎng)站的信息發(fā)布、更新和維護(hù)管理平臺(tái),能更好地體現(xiàn)以用戶為中心的服務(wù)理念,改進(jìn)服務(wù)效率。為此,需要對(duì)現(xiàn)有門(mén)戶網(wǎng)站進(jìn)行重構(gòu),增加并強(qiáng)調(diào)用戶參與,形成與用戶的良性互動(dòng),從而提高圖書(shū)館網(wǎng)站的可用性。本文以四川師范大學(xué)圖書(shū)館網(wǎng)站為例,探討利用開(kāi)源CMS軟件Drupal建立圖書(shū)館門(mén)戶網(wǎng)站的實(shí)現(xiàn)方式和步驟。1Drupal簡(jiǎn)介Drupal是一個(gè)基于Web的、開(kāi)源的、跨平臺(tái)的內(nèi)容管理系統(tǒng)(Content Mangangement System,簡(jiǎn)稱CMS),所有的內(nèi)容均存儲(chǔ)在數(shù)據(jù)庫(kù)中,根據(jù)用戶的需求以動(dòng)態(tài)或者靜態(tài)的方式呈現(xiàn)。Drupal所需要的基本運(yùn)行環(huán)境包括一個(gè)可執(zhí)行PHP腳本的服務(wù)器端、PHP、以及數(shù)據(jù)庫(kù)系統(tǒng)。它的特性包括:(1)模塊化:Drupal是一個(gè)模塊化(Modules)的系統(tǒng),通過(guò)核心模塊(Core Modules)基本模塊(Core Optional Modules)和提供各種功能的附加模塊(Contributed Modules)完成諸如用戶認(rèn)證、內(nèi)容管理、以及以聚合、Blog、維基等web2.0技術(shù)以突出交互功能及社群特性。用戶可根據(jù)需要選擇模塊輕松擴(kuò)展Drupal以獲得更為豐富的功能。(2)內(nèi)容和外在顯示的分開(kāi):Drupal 使用主題系統(tǒng)(Themes)將內(nèi)容和外在顯示(Layout)分開(kāi)。因此可以通過(guò)更換主題或自定義主題的方式獲得不同的網(wǎng)站外觀,并支持W3C標(biāo)準(zhǔn)。(3)個(gè)性化(Personalization):Drupal可以提供完善的個(gè)性化環(huán)境。不論內(nèi)容還是顯示方式、系統(tǒng)功能等都可以通過(guò)自定義的參數(shù)或者附加模塊實(shí)現(xiàn)。 (4)共同寫(xiě)作(Collaborative Book):Drupal可以讓用戶設(shè)立一個(gè)內(nèi)容項(xiàng)目以供創(chuàng)作,同時(shí)也可授權(quán)其他用戶共同參與寫(xiě)作。(5)開(kāi)放源碼:Drupal是一個(gè)基于GPL的開(kāi)放源碼軟件,用戶可以根據(jù)自己需要使用并修改該軟件。Drupal的使用和應(yīng)用是免費(fèi)的,而且有一個(gè)異?;钴S的社區(qū)支持其發(fā)展。2四川師范大學(xué)圖書(shū)館門(mén)戶網(wǎng)站建設(shè)的目的大學(xué)圖書(shū)館門(mén)戶網(wǎng)站是用戶查找信息的入口,應(yīng)該成為以資源為基礎(chǔ),以服務(wù)為出發(fā)點(diǎn)的信息門(mén)戶,應(yīng)具有以下功能:樹(shù)立圖書(shū)館形象,介紹圖書(shū)館的概況以及所提供的資源與服務(wù);為用戶提供能跨越時(shí)空限制,充分利用圖書(shū)館資源和服務(wù)的平臺(tái);體現(xiàn)用戶第一的服務(wù)理念,通過(guò)雙向互動(dòng)了解掌握用戶需求,為用戶提供更好服務(wù)。為了達(dá)成以上功能,經(jīng)多方考察論證,結(jié)合本校實(shí)際情況,對(duì)原有網(wǎng)站的體系結(jié)構(gòu)做了全面改版。用通俗易懂的語(yǔ)言,重新規(guī)劃內(nèi)容板塊:以查找資料、用戶服務(wù)、幫助信息、本館概況四個(gè)欄目為主,每個(gè)欄目下又分若干子欄目;將常用鏈接統(tǒng)一整合到一個(gè)欄目,使用統(tǒng)一的站點(diǎn)導(dǎo)航條、內(nèi)容導(dǎo)航欄,使得整體風(fēng)格統(tǒng)一,簡(jiǎn)潔明了;利用Photoshop CS 以及Dreamwaver制作出了網(wǎng)站的首頁(yè)、導(dǎo)航條、以及內(nèi)容頁(yè)面模板。3四川師范大學(xué)圖書(shū)館門(mén)戶網(wǎng)站建設(shè)實(shí)踐3. 1 初始安裝以及測(cè)試環(huán)境采用基于Windows/Apache/PHP/MySQL的開(kāi)源套裝軟件WAPM1.7.4版以及Drupal 5.3版,安裝Wamp1.7.4后,將Drupal-5.3.tar.gz解壓到 Wamp中的www目錄下,在命令行或利用phpmyadmin(一款基于Web的Mysql數(shù)據(jù)庫(kù)開(kāi)源管理軟件)創(chuàng)建門(mén)戶網(wǎng)站數(shù)據(jù)庫(kù)以及用戶。打開(kāi)瀏覽器,在地址欄里輸入 http:/localhost/index.php 安裝Drupal。并啟用Apache的mod_rewrite模塊(該模塊的作用是URL重寫(xiě),以達(dá)到用靜態(tài)頁(yè)面形式的鏈接隱藏后臺(tái)的動(dòng)態(tài)頁(yè)面,Drupal的Clean URLs功能需要使用該模塊)。3.2安裝模塊擴(kuò)展功能安裝完成后,為體現(xiàn)網(wǎng)站功能,并加強(qiáng)與用戶的交互,還需要使用一些擴(kuò)展模塊。從/project/Modules下載部分模塊,并將其解壓到Drupal目錄下的modules文件夾中(或解壓到sitesall下新建的modules文件夾中),以下是筆者所使用的一些模塊及其在網(wǎng)站中的功能:Aggregator:內(nèi)容聚合發(fā)布模塊提供RSS, RDF, and Atom 輸出。Book:Book模塊,本站點(diǎn)使用該模塊作為文獻(xiàn)檢索課程欄目,采用共同創(chuàng)作的方式讓有興趣參與其中的用戶與文檢教師完成文獻(xiàn)檢索網(wǎng)絡(luò)教學(xué)欄目。Comment:評(píng)論模塊,讓用戶對(duì)內(nèi)容進(jìn)行評(píng)論或討論,通過(guò)這個(gè)模塊可直接了解用戶對(duì)圖書(shū)館服務(wù)、購(gòu)買(mǎi)資源的評(píng)價(jià)。Locale:本地化模塊,漢化Druapl所必須。Path:將url重新命名為直觀可讀的url。通過(guò)重新命名的url,用戶可以更為直觀的了解將要閱讀的內(nèi)容。如查找資料欄目下的圖書(shū),可以將其url重命名為 how to find a book or books ,參考咨詢可重新命名為ask a library等。Poll和Advance Poll:投票模塊,可提供多選問(wèn)卷調(diào)查,可將圖書(shū)館近期購(gòu)買(mǎi)的書(shū)目作為多選問(wèn)卷調(diào)查表,讓用戶也參與到圖書(shū)館的采購(gòu)計(jì)劃。Search:搜索模塊,提供對(duì)本站內(nèi)容的搜索功能。Statistics和Xstatistics :統(tǒng)計(jì)模塊,統(tǒng)計(jì)站點(diǎn)訪問(wèn)、頁(yè)面點(diǎn)擊等情況。Taxonomy:分類模塊,提供自定義的分類目錄結(jié)構(gòu),是一非常重要的模塊,本站點(diǎn)的許多功能的實(shí)現(xiàn)都需要該模塊。如可自定義電子資源語(yǔ)種、電子資源狀態(tài)、電子資源分類等分類詞組,在創(chuàng)建內(nèi)容過(guò)程中可以將自定義的分類詞組最終以Tag的形式輸出,通過(guò)對(duì)Tag的點(diǎn)擊能很方便的將具有同一分類詞組的內(nèi)容集中到一個(gè)界面。Throttle:甩負(fù)模塊,提升網(wǎng)站的相應(yīng)速度。Tracker:跟蹤模塊。可以讓用戶了解網(wǎng)站新增的內(nèi)容,包括評(píng)論等,也可以指定了解某種類型、某位用戶的發(fā)文情況。FCKeditor:所見(jiàn)及所得的內(nèi)容編輯模塊。Jrating:基于AJAX的的評(píng)分模塊,可以作為comment模塊的輔助部分,允許用戶對(duì)內(nèi)容評(píng)分。Views:實(shí)現(xiàn)自定義頁(yè)面內(nèi)容顯示,如以列表方式顯示、摘要方式顯示等,結(jié)合panals模塊、的輔助模塊,可以實(shí)現(xiàn)更多的顯示方式。Faq:常見(jiàn)問(wèn)題解答模塊。Content Construction Kit模塊:內(nèi)容發(fā)布模塊,用來(lái)定制內(nèi)容發(fā)布的字段模塊,定義哪些字段是必填、那些可以多選,此外利用其它輔助模塊如Node Reference在cck中定義參見(jiàn)字段模塊(在當(dāng)前顯示頁(yè)面中創(chuàng)建與該當(dāng)前顯示頁(yè)面相關(guān)的其它頁(yè)面的鏈接,為用戶提供一個(gè)更為便捷的導(dǎo)航)、Taxonomy Fields在cck中定義分類字段模塊(Tag功能所必須)等。除此以外還使用了Content Templates、Link、userplus、IMCE、Taxonomy Batch Operations等模塊。在啟用這些模塊之后,需要到Administrator Site configuration以及AdministratorUser management 對(duì)這些模塊配置并設(shè)置權(quán)限。這樣一個(gè)能提供Rss、評(píng)論、Tag等功能的站點(diǎn)基本搭建完成。下載并使用Devel模塊對(duì)初步搭建完畢的站點(diǎn)進(jìn)行測(cè)試。3. 3定制主題Drupal 使用一個(gè)主題(Themes)系統(tǒng)將內(nèi)容和外觀表示分離開(kāi)。也就是說(shuō)數(shù)據(jù)可以脫離外觀而存在。Drupal提供了多種主題引擎(theme engine)如PHPTemplate、XTemplate 和 Smarty 對(duì)內(nèi)容進(jìn)行主題化。在本門(mén)戶網(wǎng)站建立過(guò)程中以PHPTemplate主題引擎。該主題引擎使用若干個(gè)以tpl.php為文件名的文件做為主題模板,如page.tpl.php為頁(yè)面外觀顯示模板,node.tpl.php為節(jié)點(diǎn)內(nèi)容外觀顯示模板,comment.tpl.php為評(píng)論頁(yè)面外觀顯示模板等。定制主題可以采取兩種辦法,一種是新建所有的模板,另一種方法是修改現(xiàn)有主題模板文件。本門(mén)戶網(wǎng)站自定義主題的建立采用的是后一種方法即修改現(xiàn)有主題模塊文件的方式。3.3.1新增區(qū)塊,用于展示某些特定內(nèi)容。從/project/Themes下載并在管理界面啟用zen主題,根據(jù)Drupal主題系統(tǒng)所定義,對(duì)zen目錄下的template.php做了如下修改:function zen_regions() return array(news = t(news), /新建立區(qū)塊 news,用于展示圖書(shū)館的新聞動(dòng)態(tài)left = t(navigation), / 新建區(qū)塊navagation,作為資源頁(yè)面的導(dǎo)航hottopic = t(hottopics), /新建區(qū)塊hottopic,用來(lái)展示用戶交互活動(dòng)最多內(nèi)容,如訪問(wèn)量最高的內(nèi)容,評(píng)論次數(shù)最多的內(nèi)容或者評(píng)分最高的內(nèi)容。header = t(header), /頁(yè)面頭部區(qū)塊, 作為Search區(qū)塊content = t(content), /頁(yè)面內(nèi)容區(qū)塊 content_right_top =t(relate), /相關(guān)參照區(qū)塊footer = t(footer) /頁(yè)面底部區(qū)塊,顯示版權(quán)或其他信息); 3.3.2修改導(dǎo)航和頁(yè)面外觀根據(jù)網(wǎng)站欄目特點(diǎn)以及內(nèi)容,為讓網(wǎng)站體現(xiàn)更好的層次結(jié)構(gòu),除了利用breadcrumb 導(dǎo)航讓用戶了解他們所在信息空間中的位置并能在該層次結(jié)構(gòu)中快速后退之外,還需要在不同的內(nèi)容外觀上也要有區(qū)別,應(yīng)此需要對(duì)現(xiàn)有的breadcrumb導(dǎo)航和內(nèi)容外觀顯示頁(yè)面進(jìn)行修改。(1)對(duì)breadcrumb的修改function zen_breadcrumb($breadcrumb) if (!empty($breadcrumb) $breadcrumb = drupal_get_title(); / 在breadcrumb導(dǎo)航欄增加當(dāng)前頁(yè)面return . implode(, $breadcrumb) .; /將層次結(jié)構(gòu)中的符號(hào)替換為 (2)自定義頁(yè)面外觀Drupal的自定義頁(yè)面外觀方法有多種,如可以根據(jù)用戶角色、權(quán)限來(lái)定義,可以根據(jù)節(jié)點(diǎn)類型來(lái)定義,也可以Url來(lái)定義。我們可以根據(jù)實(shí)際需要,采用以上的一種或幾種種方法來(lái)自定義頁(yè)面。首先是以節(jié)點(diǎn)類型自定義頁(yè)面:根據(jù)欄目特點(diǎn)建立不同的節(jié)點(diǎn)類型。新建 Eresource(電子資源)、News(新聞動(dòng)態(tài))、Help(幫助)、Service(用戶服務(wù))、和Basic(基本情況)節(jié)點(diǎn)類型,在 zen目錄下多次復(fù)制page.tpl.php并分別重新命名為page-ersource.tpl.php、page-news.tpl.php、 page-service.tpl.php、 page-basic.tpl.php,這些模板文件里分別輸入已制作好的html頁(yè)面代碼。根據(jù)需要保留相關(guān)內(nèi)容,并在需要輸出新增區(qū)塊的地方如page-ersource.tpl.php 中加入以輸出新增的導(dǎo)航。最后在page.tpl.php模板中最開(kāi)始的地方增加如下代碼:type = ersource) include page-ersource.tpl.php; /類型為ersource的節(jié)點(diǎn)使用page-ersource.tpl.php模板return; if ($node-type = news) include page-news.tpl.php; /類型為news的節(jié)點(diǎn)使用page-news.tpl.php模板return; if ($node-type = servie) include page-service.tpl.php; /類型為service的節(jié)點(diǎn)使用page-service.tpl.php模板return; if ($node-type = help) include page-help.tpl.php; /類型為help的節(jié)點(diǎn)使用page-help.tpl.php模板return; if ($node-type = basic) include page-basic.tpl.php;/類型為basic的節(jié)點(diǎn)使用page-basic.tpl.php模板return; if ($node-type = book) include page-book.tpl.php; /類型為book的節(jié)點(diǎn)(文件檢索課程欄目)使用page-basic.tpl.php模板return; ?其次還可以根據(jù)用戶或url鏈接來(lái)定制不同的頁(yè)面模板:除了使用節(jié)點(diǎn)類型定義頁(yè)面模板外,還可以根據(jù)用戶或url鏈接來(lái)定制不同的頁(yè)面模板。如需要根據(jù)用戶當(dāng)前登錄與否來(lái)顯示或隱藏內(nèi)容,可以在page.tpl.php中加入如下代碼:uid) /如果是當(dāng)前瀏覽者為系統(tǒng)登錄用戶則顯示下面的內(nèi)容 print / 這里是要顯示的內(nèi)容; else /*如果是當(dāng)前瀏覽者為非系統(tǒng)用戶則顯示下面的內(nèi)容 print / 這里是要顯示的內(nèi)容; ?3)定制節(jié)點(diǎn)內(nèi)容外觀模板若需要定制節(jié)點(diǎn)內(nèi)容外觀模板,可采取如上的辦法,建立node-type(類型).tpl.php。也可使用Content Construction Kit模組及附加模組來(lái)定義節(jié)點(diǎn)字段的顯示。利用Panels、view模塊或php代碼,可以很輕松的實(shí)現(xiàn)一些特定的導(dǎo)航如外文期刊字母導(dǎo)航。如利用php代碼實(shí)現(xiàn):?php$vid = 5; / 本站點(diǎn)所創(chuàng)建的字母導(dǎo)航分類詞組$terms = taxonomy_get_tree($vid); /以下代碼為輸出將屬于該詞組的分類詞條 print ; foreach ( $terms as $term ) /輸出數(shù)組內(nèi)容$count = db_result(db_query (SELECT DISTINCT COUNT(nid) FROM term_node WHERE tid = %d , $term-tid);/統(tǒng)計(jì)含有同一分類詞條的內(nèi)容數(shù)量if ($count0) /所查詢的文章內(nèi)容中無(wú)該分類詞條時(shí),不顯示該詞條print .l($term-name . (. $count .), taxonomy/term/$term-tid) .; print ;?頁(yè)面外觀及內(nèi)容外觀定制完成后,利用Firefox瀏覽器以及其附加軟件Firebug、Ie tab查找并修改相關(guān)的css代碼,細(xì)化頁(yè)面的顯示。首頁(yè)最終效果如下圖:4用戶參與的實(shí)現(xiàn)如何在本門(mén)戶網(wǎng)站更好的體現(xiàn)用戶參與,實(shí)現(xiàn)用戶的交互,采用設(shè)置用戶權(quán)限以及一些附加模塊來(lái)實(shí)現(xiàn)。如在以往的網(wǎng)站內(nèi)容發(fā)布過(guò)程中,所有的內(nèi)容都是由網(wǎng)站管理員創(chuàng)建并發(fā)布,利用Drupal的基于角色的權(quán)限系統(tǒng)(Role based permission system):設(shè)置若干具有不同權(quán)限的角色,將用戶加入到相應(yīng)的角色組中。讓圖書(shū)館行政人員建立并發(fā)布圖書(shū)館的通知、公告,讓參考咨詢部人員具有對(duì)FAQ欄目以及用戶評(píng)論內(nèi)容進(jìn)行管理,讓采編部工作人員具有建立并發(fā)布多選調(diào)查表的權(quán)限,讓用戶具有對(duì)內(nèi)容發(fā)表評(píng)論、進(jìn)行評(píng)分的權(quán)限,給匿名用戶對(duì)內(nèi)容評(píng)分的權(quán)限,此外還可以給特定用戶共同寫(xiě)作的權(quán)限。通過(guò)適當(dāng)角色設(shè)置,可以使以往僅能對(duì)網(wǎng)站內(nèi)容瀏覽的用戶都參與到網(wǎng)站內(nèi)容的創(chuàng)建。以上就是筆者利用Drupal建立圖書(shū)館門(mén)戶網(wǎng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論