節點中“模板選項”與“分頁標簽”的關系
最近回復論壇網友提問時注意到這么一個問題:在動態頁中分頁可以正常顯示,而在生成靜態頁后分頁就不能正常顯示了?為什么動態頁和靜態頁的分頁效果會顯示不正常?很多人認為是系統bugs的問題,這其實是沒有理解節點設置中“模板選項”和“分頁標簽”之間的關系。因此,在回答這個問題前,我們有必要詳細介紹下節點模板與分頁標簽的關系,以進一步加深對這個問題的理解和處理。
一、基本概念介紹
我們以某一個網站欄目(節點)結構為例,如下圖:
從圖中可以看到,“大自然”這個節點有以下幾個特點:
a、“大自然”節點下面含有多個子節點;
b、“大自然”節點本身含有內容信息;
c、“大自然”節點的模板選項設置了“欄目列表頁模板”、“欄目首頁模板”及“內容頁模板”。
介紹一:節點的模板選項
a、“欄目列表頁模板”是必填項,這里的作用是:分頁或不分頁的方式顯示“大自然”節點內的信息列表。
b、“欄目首頁模板”是可選填項,當某個節點既有子節點又有內容時,可以指定該模板用于生成一個封面頁(即通常我們熟悉的頻道首頁,如上圖中點擊“大自然”或“湖泊”節點進入到的頁面),但是該頁面生成HTML的時候是不支持分頁的。而像“森林”、“草原”、“海洋”、“冰川”這些節點下沒有子節點,所以就不需要指定欄目首頁模板。
c、“內容頁模板”是必填項,選擇對應的內容模型和內容頁模板。
介紹二:分頁
SiteFactory? 中分頁的效果是通過在模板中加入分頁標簽來實現的。分頁又分頁欄目分頁和信息分頁,文中所提到的分頁是欄目分頁和信息分頁的總稱,即所有分頁效果。
介紹三:欄目模板與分頁的關系
雖然SiteFactory? 的標簽是全站解析(通用)的,但是“欄目首頁模板”不支持分頁效果;“欄目列表頁模板”支持分頁效果。(下文將會舉例說明)
上面幾點概念性的介紹有助于你加深對下面案例的理解,SiteFactory? 之所以設計為“欄目首頁模板”不支持分頁是為了與“欄目列表頁模板”不混淆。如果對此不能理解的話,可以借助網易頻道進行理解:
網易“新聞頻道——國內新聞”欄目下包含:國內頭條、兩岸三地、希望農村、新聞貼圖四個欄目。
網易“新聞頻道——國內新聞”的欄目首頁:
(不分頁)
網易“新聞頻道——國內新聞——國內頭條”的欄目列表頁:
(分頁)
二、舉例說明
(例一)——
由于SiteFactory? 的標簽是全站解析的,所以即使欄目首頁不支持分頁,但如果你設計的“欄目首頁模板”里含有分頁標簽,系統依然會進行解析并在前臺顯示出來。那這樣不是前后矛盾了?非也,我們就來看看下面這個“欄目首頁模板”加入了分頁標簽的例子,到底會出現什么問題呢?
首先,設置“大自然”節點的模板選項,如下圖所示:
注:這里選擇的“默認文章首頁模板.html”是加入了分頁標簽的,按每頁4個欄目顯示“大自然”節點下的子欄目。
其次,“生成選項”設置如下圖所示,生成欄目列表頁。
然后,瀏覽前臺“大自然”欄目可以看到分頁標簽在“欄目首頁”生效了,如下圖所示:
最后,我們分析上圖所示的“大自然”欄目首頁的分頁鏈接地址:
1)當我們選擇生成HTML時:
(第一頁)
(第二頁)
通過分頁地址鏈接的對比發現問題了嗎?對,雖然分頁標簽在“欄目首頁”解析了,但無論是第一頁還是第二頁都是指向同一個地址。
2)當我們不生成HTML(動態頁面)時:
(第一頁)
(第二頁)
通過分頁地址鏈接的對比發現,動態方式分頁鏈接地址是正常的,但是這只是表面上看起來正常。這里必須清楚的是第一頁調用的是“欄目首頁模板”,而第二頁調用的則是“欄目列表頁模板”。當欄目首頁模板和欄目列表頁模板不一樣的時候(通常都是不一樣的),就會出現第一頁與第二頁顯示效果不同的問題,也就是點“下一頁”頁面會亂跑到別的頁面。
小結一:SiteFactory? 的“欄目首頁模板”強烈不要加入分頁標簽,“欄目首頁模板”是不支持分頁效果的。
(例二)
看了上面的(例一)或許你會提出這樣的疑問:如果我需要欄目首頁實現分頁效果呢?那么請繼續看下面的例子
首先,設置“大自然”節點的模板選項,如下圖所示:
注:不選擇“欄目首頁模板”。
然后,“生成選項”設置如下圖所示,生成欄目列表頁。
最后,瀏覽前臺可以看到,雖然沒有設置“欄目首頁模板”,但“大自然”欄目依然分頁顯示出了其子欄目,如下圖所示:
我們分析上圖所示的“大自然”欄目首頁的分頁鏈接地址:
1)當我們選擇生成HTML時:
(第一頁)
(第二頁)
2)當我們不生成HTML(動態頁)時:
(第一頁)
(第二頁)
通過分析發現:以上所有的分頁鏈接地址均是正常的,第一、第二頁都是正確調用了欄目列表頁模板。
小結:
1)當某一欄目下含有子欄目且本身含有信息內容時,如果需要在此欄目首頁實現分頁效果,那么后臺該欄目的“模板選項”中不能指定“欄目首頁模板”,只需設置“欄目列表頁模板”;
2)“欄目列表頁模板”才能實現分頁效果,“欄目首頁模板”不能實現分頁效果,因此在節點設置的“模板選項”中一定要根據實際需求選擇模板。
通過舉例和對比,到此很多人應該清楚文章開頭部分那個問題的原因了吧?現在就來回答這個問題。
問:在動態頁中分頁可以正常顯示,而在生成靜態頁后分頁就不能正常顯示了,為什么呢?
答:這是因為在節點設置的“模板選項”中指定了含有分頁標簽的“欄目首頁模板”的原因;為了不與欄目列表頁混淆,“欄目首頁模板”是不支持分頁效果的。但欄目首頁需要分頁效果,只需要指定含有分頁標簽的“欄目列表頁模板”。
延伸閱讀(一)——
既然“欄目首頁模板”不支持分頁效果,那直接使用“欄目列表頁模板”就可以了,為什么還保留“欄目首頁模板”呢?
因為僅僅是使用“欄目列表頁模板”的話所有欄目列表頁都只能是調用同樣的模板,實現相同的樣式。當你想讓某個含有多級子欄目和內容的欄目顯示相關信息聚合時,當你想為多級子欄目或者信息制作欄目首頁或者封面頁面時,就應該考慮使用“欄目首頁模板”了(上文中提到的網易新聞頻道的例子,展示的就是“欄目首頁模板”和“欄目列表頁模板”的不同作用了)。通常來說指定的“欄目首頁模板”和“欄目列表頁模板”應該是不一樣,否則只需指定“欄目列表頁模板”就可以了。
延伸閱讀(二)——
附默認雅藍模板方案中各模板的使用說明:
用戶登錄
還沒有賬號?
立即注冊