溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

jspXCMS模版文件是什么

發(fā)布時間:2022-01-20 10:07:00 來源:億速云 閱讀:170 作者:iii 欄目:開發(fā)技術(shù)

本文小編為大家詳細(xì)介紹“jspXCMS模版文件是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“jspXCMS模版文件是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

模版目錄

模版的保存路徑的規(guī)則:/template/{站點ID}/{模版主題}。如果當(dāng)前站點ID為1,模版主題為default,則模版路徑是/template/1/default。首頁模板通常是/template/1/default/index.html。

這里需要注意的是,模板雖然也是HTML后綴,但和純靜態(tài)HTML并不完全一樣。比如在瀏覽器里面訪問首頁http://localhost:8080/,顯示/template/1/default/index.html模板里的內(nèi)容。但大家都知道,這個地址應(yīng)該訪問/index.html頁面。這是因為jspxcms系統(tǒng)對首頁請求做了處理,將請求轉(zhuǎn)發(fā)到/template/1/default/index.html模板里去了。也就是說,如果自己新建一個文件/template/1/default/test.html,通過http://localhost:8080/test.html是無法訪問的。很顯然,http://localhost:8080/test.html訪問的是/test.html而不是/template/1/default/test.html。

同樣的,如果直接訪問http://localhost:8080/template/1/default/index.html,將會直接顯示純html內(nèi)容,并不會解析里面獲取動態(tài)數(shù)據(jù)的標(biāo)簽。

哪些請求會被jspxcms系統(tǒng)處理,并顯示模板里面的內(nèi)容呢?一般有首頁(如http://localhost:8080/)、欄目頁(如http://localhost:8080/node/12)、詳細(xì)頁(如http://localhost:8080/info/8)等。

模版資源

制作模版用到的css、js和圖片等資源文件必須放到{模版路徑}/_files目錄下,如/template/1/default/_files。這是強(qiáng)制性的,否則資源文件不能正確顯示。在模版中引用這些資源文件,可以使用相對路徑,如:_files/my.jpg、_files/img/my.png、_files/css/my.css、_files/scripts/my.js。

為什么一定要放在_files目錄下,為什么有這個限制?其實這不是限制,而是系統(tǒng)提供的一種便利。比如/template/1/default/index.html里面要引用/template/1/default/img/my.jpg圖片,直接寫<img src="img/my.jpg"/>在靜態(tài)頁面里面看起來沒有問題;但實際運(yùn)行的時候,首頁的訪問地址是http://localhost:8080/,那么對應(yīng)的圖片應(yīng)該是/img/my.jpg,這顯然無法訪問到圖片。應(yīng)該要寫<img src="/template/1/default/img/my.jpg"/>才能訪問到圖片。寫這么長的地址非常麻煩,而且不靈活。所以系統(tǒng)提供了一個便利,會在運(yùn)行時將_files替換成/template/1/default/_files,比如<img src="_files/my.jpg"/>,實際運(yùn)行時會替換成<img src="/template/1/default/_files/my.jpg"/>。

所以有兩種方式引用相應(yīng)的資源,一種是寫全地址如<img src="/template/1/default/img/my.jpg"/>,這樣資源文件想放在哪里就放在哪里,只要地址正確;第二種是將資源路徑放在_files目錄下,通過類似_files/css/my.css的路徑引用資源,系統(tǒng)在運(yùn)行時自動替換成/template/1/default/_files/css/my.css。

模版文件

模版文件分為系統(tǒng)模版和自定義模版。系統(tǒng)模版的文件名是固定的,不能修改;自定義模版的文件名可以自己定義,甚至可以為中文(在Linux系統(tǒng)下要注意設(shè)置正確的編碼)。

系統(tǒng)模版以sys_開頭,主要包括會員中心模版、留言板模版、評論模版、投票模版、調(diào)查問卷模版、RSS模版、專題封面列表模版、搜索頁模版等。這些模板都與url地址相對應(yīng),比如:

  • 搜索頁。url:/search(如:http://www.mysite.com/search),模板:sys_search.html(如:/template/1/default/sys_search.html)

  • 留言板。url:/guestbook(如:http://www.mysite.com/guestbook),模板:sys_guestbook.html(如:/template/1/default/sys_guestbook.html)

自定義模版主要包括首頁模版、欄目頁模版、詳細(xì)頁模版、專題詳細(xì)頁模版等。另外有一些特殊的廣告模版(sys_ad目錄下的模版)、app模版(app_開頭的模版)。

模版與URL地址

用戶的URL請求先由程序處理,然后程序解析模版,將結(jié)果返回。如果直接訪問模版,會當(dāng)作一個靜態(tài)的HTML顯示,里面的FreeMarker代碼和Jspxcms標(biāo)簽不會被解析。

URL地址是由程序預(yù)設(shè)的,比如欄目頁地址/node/{欄目ID}.jspx、詳細(xì)頁地址/info/{文檔ID}.jspx、搜索頁地址/search.jspx、RSS地址/rss.jspx。欄目頁和詳細(xì)頁支持靜態(tài)化,如果使用了頁面靜態(tài)化,那么URL地址就取決于頁面靜態(tài)化的設(shè)置,比如/news/、/news/index.html、/news/23.html。

欄目頁URL地址和詳細(xì)頁URL地址可以通過對象的屬性獲得,比如${node.url}、${info.url};不要寫固定的URL,比如/node/12.jspx、/info/89.jspx,這樣會導(dǎo)致在使用頁面靜態(tài)化時,不會自動的切換成靜態(tài)頁地址。

模版的通用默認(rèn)對象

  • global:全局對象。類型:com.jspxcms.core.domain.Global。

  • site:當(dāng)前站點。類型:com.jspxcms.core.domain.Site。

  • orgs:當(dāng)前用戶所屬組織集合(一個用戶可以屬于多個組織)。未登錄則為null。類型:java.util.Collection<com.jspxcms.core.domain.Org>。

  • org:當(dāng)前用戶所屬主組織。未登錄則為null。類型:com.jspxcms.core.domain.Org。

  • groups:當(dāng)前用戶所屬用戶組集合(一個用戶可以屬于多個用戶組)。未登錄則為游客用戶組。類型:java.util.Collection<com.jspxcms.core.domain.MemberGroup>。

  • group:當(dāng)前用戶所屬主用戶組。未登錄則為游客用戶組。類型:com.jspxcms.core.domain.MemberGroup。

  • user:當(dāng)前登錄用戶。未登錄則為null。類型:com.jspxcms.core.domain.User。

  • dy:動態(tài)路徑。比如搜索頁地址${dy}/search.jspx。

  • ctx:上下文路徑。比如:${ctx}/static/vendor/My97DatePicker/WdatePicker.js。等同于HttpServletRequest.getContextPath()。類型:java.lang.String。

  • url:當(dāng)前頁面URL地址。類型:java.lang.String。

讀到這里,這篇“jspXCMS模版文件是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI