【发布时间】:2017-03-23 15:32:16
【问题描述】:
我的网站在单个浏览器布局页面占位符上包含许多子布局。
我已将我的子布局数据源之一设置到我的内容结构中的一个文件夹,该文件夹包含新闻项目并获取其值和子项目,如下所示以呈现这些新闻项目:
Sitecore.Collections.ChildList childItems;
if (Sitecore.Context.Database.GetItem(this.DataSource) != null)
{
childItems = Sitecore.Context.Database.GetItem(this.DataSource).GetChildren();
}
else
{
litOutput.Text += "You need to set a datasource";
return;
}
// Then iterating
foreach (Item item in childItems){}
但是,我还需要获取位于我网站主根目录的 Sitecore 项目,这些项目代表子布局将使用的其他属性和子项目。
因此,真正定义了我的数据源后,我不仅要遍历其子项以获取新闻数据(这是有效的),然后我还需要遍历主根目录,然后向下访问一个名为 SETTINGS 的文件夹保存此项目的字段。
主根模板称为“微型站点”,所以我真的需要帮助了解如何向上遍历,直到找到该模板名称,然后进入设置以获取这些项目。
希望这是有道理的,任何人都可以帮助解决这个问题。
【问题讨论】:
-
我认为最好有一个 droplink 或 droptree,您已经在其中指定了设置项的路径。这可以防止您再次执行不同的迭代