2017-10-11 53 views
0

我刚刚开始使用Umbraco,并发现它与术语有点混淆 - 我已经设法创建页面并创建模板以引入页脚和导航。但是我期望实现的是添加一个自定义部分,最终用户可以在包含背景颜色,标题,段落,图像,图像对齐和文本对齐等参数的页面上添加多次。如何创建可重复的内容部分

我一直在阅读诸如宏之类的东西,并试图看看YouTube视频,但似乎找不到任何能够给我实现这个目标的正确方向。我假设一个宏是正确的。我只是非常希望非开发人员能够进入并能够添加/删除/编辑某个部分。我也希望这种方法也可以在多个页面上使用。

回答

1

在Umbraco中有许多可重复部分的选项。建成一个主要的主要是网格。网格允许您创建和配置可在页面上使用的可关联块,例如说标题块,图像块等。开箱即用引导标记,但如果需要,您可以更改它。更多细节请看这里:https://our.umbraco.org/documentation/getting-started/backoffice/property-editors/built-in-property-editors/grid-layout

接下来是插件选项。你所追求的两个主要内容是嵌套内容(现在是Umbraco后期版本的核心的一部分):https://our.umbraco.org/projects/backoffice-extensions/nested-content/这有点像网格,除非你创建DocType来表示你的内容块,你必须从头开始编写自己的视图模板。

与嵌套内容类似,但也略有不同,是堆叠内容:https://github.com/umco/umbraco-stacked-content这与嵌套内容类似,因为您必须编写自己的视图等。

+0

我发现了类似于我需要达成的原型 - 但是这种原型更加理想,因为原型停止了开发。 – Sparkz

1

如果您只是想在每个页面可以使用的“模板”之上更改几件事情,我会建议您使用Master Template。这允许您从基本文件继承属性,并在子模板中添加您自己的属性以覆盖基础。请注意,您可以在一个站点上拥有多个主模板。例如,我有一些我不想显示横幅的页面,所以我使用第二个主模板来显示这些页面。

但是,使用主模板的缺点是管理员需要访问Templates(在Settings部分下)才能进行更改。

如果您希望允许管理员选择页面中包含哪些“部分”,则需要寻找Multinode Treepicker。这使您可以从Content部分(这对管理员修改更安全)中选择页面上显示哪些节点。请注意,它表示它已过时,但仍可在Umbraco 7中使用(以及我个人正在使用的功能)。

多节点树形选择器可以选择在某些情况下显示的单个节点,也可以由管理员在Content部分中遍历所有选定的节点。

这既可以做类型

@{ 
    var typedMultiNodeTreePicker = Model.Content.GetPropertyValue<IEnumerable<IPublishedContent>>("banner"); 
    foreach (var item in typedMultiNodeTreePicker) 
    { 
     <p>@item.Name</p> 
    } 
} 

或者动态

@{ 
    var bannerList = CurrentPage.banner.ToString().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); 
    var bannerCollection = Umbraco.Content(bannerList); 
    foreach (var item in bannerCollection) 
    { 
     <p>@item.Name</p> 
    } 
} 

希望这有助于! :)