如何在 Hippo CMS 中动态地将容器包含到另一个容器中,通过从目录工具栏中拖放它们?

How to include container into another container dynamically in Hippo CMS, by drag'n'dropping them from catalog toolbar?

我正在使用 Hippo CMS 10。通过控制台,我在 hst:catalog 中创建了 hst:containeritemcomponenthst:xtype,hst:referencecomponent,hst:iconpath,hst:label
hst:referencecomponent 在 hst:workspace/hst:containers/ 对 hst:containercomponentfolder 的引用,其中包含 hst :containercomponent hst:xtype 设置为 HST.Span

我需要容器,它可以包含(动态地)可变数量的另一个不同的容器。例如,我希望能够通过从目录工具栏中拖放组件来创建此结构:

<!-- this must be main container, already positioned in page -->
<div class="content">

    <!-- this should appear when I drag'n'drop component from toolbar -->
    <!-- at the same time, it must be container for other components itself -->
    <div class="row">...</div>

    <!-- this also comes from drag'n'dropped component from toolbar -->
    <!-- and also container for other components -->
    <div class="home banner">...</div>

    <!-- any amount of containers -->
    ...
    ...
</div>

通过这种方式,我应该能够动态地创建一些页面结构。可能吗?如果是,我该如何实现?如果没有,如何绕过它,是什么思路?
HippoCMS 的站点对于此类示例非常差,除此站点外没有关于 hippocms 的信息。

我想我知道问题所在:请查看解释配置的文档:

http://www.onehippo.org/library/concepts/hst-configuration-model/containers-configuration.html

此文档页面解释了如何自定义容器呈现的 HTML: http://www.onehippo.org/library/concepts/template-composer/how-to-prevent-additional-html-elements-for-containers.html

我看到的问题:

  • 您的模板中缺少 hst:include。例如:

    <hst:include ref="mycontainer" />

  • 您已经在 hst:catalog 中创建了 hst:containeritemcomponent 但要编辑 table 容器也必须在 hst:workspace.

    中创建
  • 在您的 HST 配置中,您还必须配置对工作区中容器的引用。比如这个例子:

目录是组件的调色板。您在工具栏中看到的组件只能拖放到具有 容器 的模板上来处理这些组件。 xtype 定义将处理您拖放的组件的容器类型(table,等等)。所以你可以做一些事情,比如堆叠。

您不能将一个容器动态包含到另一个容器中。