我們目前使用博客,新聞和事件的oob頁面類型。我們爲每種類型都有一個頁面,其中包括一箇中繼器以顯示該類型的頁面列表。我們還希望有一個包含一個轉發器的頁面,該轉發器可在一個地點顯示所有博客,新聞和活動頁面,並按其創建日期排序。
我在devnet上看到了一些舊的評論(here,here),表示儘管重複器可以呈現多個頁面類型,但在每個頁面類型中呈現的字段必須相同。建議的解決方法是在每個頁面類型中創建相同的字段,或者創建自定義SQL查詢並使用查詢中繼器來呈現數據。我已經完成了這項工作,它工作得很好,但創建起來很麻煩,而且很難維護。 (例如,如果我們想添加其他頁面類型。)任何人都可以在Kentico 10中提供更多開箱即用的方法嗎?Kentico 10 - 使用中繼器顯示多種頁面類型
更新:
我想爲布蘭登·述做到這一點,但我遇到了麻煩。 我的頁面結構如下:
Root
.RollupPage (CMS.MenuItem)
..BlogPosts (CMS.Blog)
...January 2017 (CMS.BlogMonth)
....blog post 1 (CMS.BlogPost)
...February 2017 (CMS.BlogMonth)
....blog post 2 (CMS.BlogPost)
..Events (CMS.MenuItem)
...Event1 (CMS.BookingEvent)
...Event2 (CMS.BookingEvent)
我已經嘗試使用通用瀏覽器,但未能得到它返回任何數據。
Path: /RollupPage/%
Page types: CMS.BlogPost;CMS.BookingEvent
Hierarchical Transformation: CMS.MenuItem.HierTrans1
HierTrans1具有以下變換::
我與被配置它
CMS.BlogPost.Default (Item transformation for type CMS.BlogPost)
CMS.BookingEvent.EventCalendarItem (Item transformation for type CMS.BookingEvent)
這些不是在所有定製;他們是標準的OOB轉換,所以我可以看到它的工作。
當我查看RollupPage時,通用查看器不顯示任何內容。
我試圖使用具有與通用查看器相同的設置的分層瀏覽器。它很有用。它顯示我的預訂活動,但沒有顯示任何博客文章。然而,使用具有分級查看器的同一博客文章轉換(CMS.BlogPost.default),其Path
設置爲/RollupPage/BlogPosts/%
可以正確顯示我的博客文章,但顯然未顯示我的預訂活動。
到目前爲止,我得到的結果讓我覺得a)關於我創建頁面的方式是阻止通用查看器遍歷整個樹和/或b)分層查看器要麼只是一對夫婦或者它也可能被阻止穿越樹...當我編輯或查看這些Web部件時,沒有記錄任何事件。
任何想法我可能做錯了什麼?
在顯示對象列表時,您無法檢查中繼器屬性中的類名,它將始終獲取顯示列表的頁面的類名,而不是單個對象。 此外,做一個條件轉換將會起作用,而且我已經完成了它,但是如果一個開箱即用的webpart(通用查看器)可以在沒有任何編碼的情況下執行此操作,則無需編寫該代碼。 –