While templates define the static frame of a website, OpenCms inserts content dynamically for the <cms:container> tag. A template may define one or more containers.
The most important attributes of <cms:container> are these:
name. Unique name of the container. Required attribute. The name must be unique for the template. In the example above, the containeris namedmain. There may be containers namedsideorfooterdefining other places on the website where content elements can be inserted.type. A comma separated list of container type identifiers. Optional attribute. If not defined, content elements of any type can be inserted into a container. Although the attribute is optional, the content types allowed should be restricted. In the example above, content elements of typearticle,section, andfaqcan be inserted in themaincontainer.maxElements. The maximum number of elements that can be placed in a container. Optional attribute, defaults to 100. ThemaxElementsattribute in the example above restricts the number of elements to 30.editableby. Specifies who is allowed to add, edit, and remove elements from a container. Optional attribute. If not set, any logged in user has permissions. Typically, roles are specified, e.g.,ROLE.ELEMENT_AUTHOR,ROLE.EDITOR,ROLE.DEVELOPER, etc. In the example above.
Above the three attributes, there should be an HTML <div> tag (or another HTML block element) inside a container representing a drop area to insert contents. Since the <div> tag is shown when a container is empty, make sure that the <div> has a defined width and height.