[英]Umbraco 7: Map property to page and check if is associated with current page
在“內容”部分中,我有一個屬性編輯器(Archetype),該編輯器允許獨立於內容樹來設置網站的內容。 我只需要根據我當前所在的頁面顯示一個類別中的子類別。 我現在所擁有的是:
//get the content with id of 1123 from Content Section, type DynamicPublishedContent
var catItems = Umbraco.Content(1123).categoryItem;
foreach (var item in catItems)
{
foreach (var sub in item.GetValue<ArchetypeModel>("subCatItem"))
{
<div class="tbl_dt">
<p class="offerName">@sub.GetValue("offerName")</p>
<p class="departurePort">@sub.GetValue("departurePort")</p>
</div>
}
}
有關其他詳細信息,請參見此參考: Umbraco 7:基於當前頁面從同一屬性獲取字段
問:如何將屬性映射到內容頁面,並檢查是否與當前頁面關聯並僅顯示映射了當前頁面的字段? 可以通過向其添加content picker
來完成此操作嗎? 如果是這樣,我如何檢查它是否與當前頁面相關聯?
首先,按ID引用代碼中的內容並不是一種好習慣。 而是使用保證不會被用戶刪除的文檔類型別名。
現在,要檢查當前頁面上是否存在屬性,您需要做的就是
@if (CurrentPage.HasValue("subCatItem"))
{
string propertyStoredValue = CurrentPage.subCatItem.ToString();
}
其中“ subCatItem”是您要檢查的屬性的別名。 在這種情況下,屬性的類型無關緊要,請記住,如果該屬性不是強制性的,並且未賦予其值,則即使該屬性存在於文檔類型上,上述語句也將評估為false(有意義嗎?)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.