2013-04-03 29 views
0

我目前正在为Adobe CQ5中的网站创建CMS。要求的组件之一是为菜单提供自定义导航组件。用户将能够输入特定于该页面的一系列链接和URL。在Adobe CQ5页面之间共享内容

起脚的是,他们需要能够与其他几个页面共享此菜单(但不是全部,通常这将是在同一个文件夹中的其他网页)。在他们自己的一组页面之间还会有几个不同的菜单。

所以我想的问题是,什么是有被编辑一次,变化多个页面反映一个菜单最简单的方法?

回答

0

另一种选择是使该组件从其父项“继承”。为此,您可以在对话框中添加一个复选框,以指示组件是否应该从其父项继承。如果是这样的话,你的组件代码可以爬到树上寻找父页上的导航组件,并在找到时加载它。如果不是,组件只能从其当前资源加载数据。

这将让你做任何数量的独立导航组,并允许内容作者编辑的导航,而不必去到另一个配置区域,这可以打破的编辑体验。

+0

这实际上是我发现要做到这一点的路线。 谢谢! – wibblemonkey

0

一种选择是创建一个“数据”部分 - 也就是用来作者数据实例的组件。每个数据实例都包含菜单数据,并允许作者更改菜单数据。然后创建第二个组件,它是数据的使用者 - 即引用现有数据组件实例并呈现数据的组件。然后,您可以根据需要使用尽可能多的页面呈现相同的菜单数据,并且如果底层菜单数据实例更改,则会影响所有页面。

您可能会考虑构建“数据”实例,以便它们将在单独的内容区域中创建,您可能希望以与正常内容页面不同的方式查看它们,并且如果您需要控制可以制作的内容页面改变菜单。这也会使连线变得更容易,因此作者可以选择现有的数据实例用于其消费者组件。

+0

会给这个去,谢谢! – wibblemonkey

0

创建一个页面组件,您可以通过iparsys包括你的菜单组件,并继承你的子页面是页面(特定模板)component.when你会在菜单组件的任何更改将反映到所有页面。