2016-12-20 分類: 網(wǎng)站建設(shè)
在代碼級(jí)別,sinacms是用C++編碼的,模板獲取數(shù)據(jù)時(shí)使用Perl腳本。在sinacms中,通道、項(xiàng)目和模板是集成的。他們的關(guān)系如下:
不難看出,sinacms是非常靈活的。因?yàn)樗臄?shù)據(jù)庫結(jié)構(gòu)是在項(xiàng)目建立后模板建立時(shí)確定的。信息渠道、金融渠道、汽車渠道等各個(gè)渠道可以有完全不同的數(shù)據(jù)庫結(jié)構(gòu),不同渠道的特殊需求也可以完全定制。此外,可以看出,sinacms中的模板是最重要的模型,它承擔(dān)著確定數(shù)據(jù)表結(jié)構(gòu)、文章發(fā)布和管理、配置通道參數(shù)等功能。
讓我們看看CMS系統(tǒng)中常見的新聞頁面、頻道主頁和列表頁面是如何在sinacms中實(shí)現(xiàn)的。
編輯最后一篇文章時(shí),首先找到頻道的新聞頁面,然后進(jìn)入下面的文章,輸入后點(diǎn)擊發(fā)布,系統(tǒng)會(huì)根據(jù)模板的內(nèi)容獲取相關(guān)字段內(nèi)容,最后根據(jù)模板的屬性發(fā)布到相應(yīng)的靜態(tài)文件中。如果與其他模板(在新聞頁面的模板字段中定義application::postinpage)存在相關(guān)關(guān)系,則會(huì)觸發(fā)相應(yīng)模板(如主頁和列表頁面)的更新。
在第一個(gè)頁面模板塊中,它可以分為動(dòng)態(tài)和靜態(tài)。對(duì)于需要頻繁更新的靜態(tài)塊,可以將它們獨(dú)立地生成模板。靜態(tài)塊相當(dāng)于模板下的一個(gè)項(xiàng)目(只有一個(gè)項(xiàng)目)。當(dāng)然,您也可以在主頁中創(chuàng)建form::textfield的模板字段。對(duì)于動(dòng)態(tài)塊,如動(dòng)態(tài)新聞列表,可以在主頁中新建application::sqlresult模板域,通過執(zhí)行Perl腳本獲取內(nèi)容填充,然后在主頁模板內(nèi)容中引用模板域,當(dāng)然也可以新建只包含application::sqlresult域的模板。
對(duì)于列表頁,首先,列表頁的分頁值可以存儲(chǔ)在列表頁的模板字段或模板中。在處理分頁時(shí),分頁算法將通過Perl腳本執(zhí)行。最后,所有列表頁都是列表頁模板下的文檔集。
在一個(gè)項(xiàng)目中,為了提高發(fā)布效率,會(huì)有多個(gè)臨時(shí)存儲(chǔ)表和歸檔表(實(shí)際上是一些模板)。例如,在主頁的動(dòng)態(tài)新聞列表中,可以構(gòu)建一個(gè)臨時(shí)模板來存儲(chǔ)數(shù)據(jù)。此時(shí),如果主頁或包含動(dòng)態(tài)新聞列表的模板頻繁更新,無疑會(huì)降低數(shù)據(jù)庫的壓力。新聞紙頁面模板可以保存上個(gè)月處理的文章,特別是在文章數(shù)據(jù)快速增長的渠道中,這是非常必要的。以前的文章需要轉(zhuǎn)儲(chǔ)到存檔表中,以便查詢和偶爾更新文章。
sinacms中的通道路徑(如信息大陸文本)由模板處理,Perl用于處理模板域中的相關(guān)邏輯。子頻道和主題也通過模板實(shí)現(xiàn),模板通過添加新模板來建立子頻道和主題之間的關(guān)系。
至此,我們可以了解到sinacms使用了大量的冗余字段來存儲(chǔ)原來需要多個(gè)表聯(lián)合查詢的數(shù)據(jù),這無疑提高了文章的發(fā)布效率。
在其他CMS中,模板只是一個(gè)獨(dú)立的概念,而在sinacms中,一切都是模板。
當(dāng)前題目:新浪內(nèi)容管理系統(tǒng)的CMS模型
網(wǎng)站網(wǎng)址:http://muchs.cn/news49/72749.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)站設(shè)計(jì)公司、電子商務(wù)、虛擬主機(jī)、網(wǎng)站維護(hù)、網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容