如何在CQ5中将组件拖放到其他组件(除了parsys之外)?

时间:2014-04-09 05:21:01

标签: cq5 aem

我在CQ5中创建了一个按钮组件,但没有继承现有的按钮组件。现在我想

通过sidekick中的拖放方法将此按钮组件放在另一个自定义Banner组件上。我把横幅comp作为我的按钮的父母,在横幅中,我在允许的孩子中给了这个按钮,并将其作为容器。我也为横幅组件创建了设计对话框,我在允许的组件选项中添加了这个按钮组件。仍然我无法将此按钮拖放到横幅上,因为它在此横幅的上方或下方,横幅本身位于parsys内部。如果我通过jsp包含组件,它的工作正常。但我必须通过拖放来做到这一点。

我是CQ5的新手,感谢我能得到的任何帮助。提前谢谢。

2 个答案:

答案 0 :(得分:2)

parsys是组合的基本容器组件。手动将此功能应用到另一个组件中需要相当多的自定义配置。

如果查看/ libs / foundation / components / parsys中的parsys,您将看到它被属性cq:isContainer - true定义为容器,它指示CQ允许拖放。有多个子节点需要定义等。

如果您尝试仅限制要放入的特定组件,这可能有意义,并且您应该查看图像组件,但是,最好的方法是创建包含parsys的组件。

请记住,作者应该能够添加他们想要的内容,并且单个对象不允许这种灵活性。您应该在内容发布之前通过审核流程处理不良作者活动,而不是在软件级别强制执行。

希望有所帮助。

答案 1 :(得分:0)

拖放功能仅适用于Parsys或IParsys。因此,要实现您的要求,您需要在banner组件中包含parsys。 如果要限制横幅分析允许按钮组件,请使用设计配置并在按钮的分析中选择按钮组件