Umbraco(v7)-所有页面上的共享内容(包含在内容中)

时间:2018-10-30 11:42:42

标签: umbraco

我是umbraco CMS的新手,正在尝试在所有页面的内容中添加一些共享内容,例如,使用内容中所有页面的产品价格。我想将产品价格保持在一个通用的位置(例如全局变量或它的任何名称),并将其添加到任何页面的内容中的任何位置。当我们在公共位置更改价格时,需要在所有页面中自动更新产品价格。我曾尝试使用宏,但在RTE(内联问题,无法编辑)中表现不佳,甚至尝试使用字典,但失败了。我不知道umbraco中是否有任何选项/功能。请任何人帮我解决这个问题。

2 个答案:

答案 0 :(得分:1)

实现您所要求的最简单的方法是采用此处已提到的方法,并在内容结构中的某处进行某种“全局设置”或“共享项”。在这里您可以存储产品或任何其他想要重复使用的东西。

要在RTE中引用它,您将想出一些约定在{price:productId}{productName:price}或类似内容中插入这样的标记。

然后要做的是确保在输出RTE属性时将其传递给渲染方法,该方法将简单地从产品ID或名称中找到产品,然后获取价格,并简单地将标记替换为返回HTML输出以呈现之前的价格。这是一个肮脏的hack,对您的编辑者不是很友好。但是,它不仅可以用来做其他事情。

如果您想使编辑器更加流畅,则应改用宏-假设您创建了“产品数据”宏。它包含一个选择器(已预先配置为从产品文件夹中选择产品)和一个下拉菜单,可让您选择要显示的产品数据的哪一部分。然后,您只需使该宏根据所选节点和下拉菜单中的选择来呈现产品数据。

如果可能的话,我会选择第二种方法,因为这是您的编辑人员最容易理解的方法。但是有一个缺点,那就是它几乎需要您通过RTE使用它(因为您需要能够插入宏),而标记替换方法可以在任何类型的属性中工作编辑器配置。

答案 1 :(得分:0)

您最好的选择是在与您的主要网站树分开的另一个内容树结构(通常称为此设置或全局设置)下创建所需的定价内容。然后在要使用它的页面上添加一个内容选择器,然后可以将其设置为转到设置以选择需要使用的定价内容。

,因此您可以在设置中设置价格,并在需要使用此页面的所有页面上添加一个选择器,然后可以重复使用该选择器多次,并在1个位置进行更改。我始终在所有网站上都进行了此设置,并将其用于诸如轮播滑块等功能,请参见所附图片。enter image description here