The TwoColumnPage
template has three sections:
HeaderContent
: TheHeaderContent
section resides near the top of the page and extends across the entire page width. This section accepts cartridges of typeHeaderContent
.SecondaryContent
: TheSecondaryContent
section provides a panel down the left hand side of the page and it accepts cartridges of typeSecondaryContent
.MainContent
: TheMainContent
section appears to the right of theSecondaryContent
section and takes up the bulk of the window. This section accepts cartridges of typeMainContent
.
The following illustration shows the layout of the TwoColumnPage
template sections:
The XML for the TwoColumnPage
is located in <ATG10dir>/CommerceReferenceStore/Store/Storefront/deploy/cartridge_templates/Page-TwoColumnPage.xml
. This XML defines the content type of the TwoColumnPage
as Page
and its ID as TwoColumnPage
.
The renderer that accompanies the TwoColumnPage
template is located in store.war/cartridges/TwoColumnPage/TwoColumnPage.jsp
. The renderer uses the crs:pageContainer
tag to render the standard Commerce Reference Store page components such as header and footer. Then, the renderer takes each section defined in the TwoColumnPage
template and renders the cartridges held in these areas using the dsp:renderContentItem
tag. See the Endeca Integration Guide for more details on the dsp:renderContentItem
tag.
<crs:pageContainer divId="atg_store_facetGlossaryIntro" contentClass="category" index="false" follow="false" bodyClass="category atg_store_leftCol"> <jsp:body> <%-- Render the header --%> <c:if test="${not empty contentItem.header}"> <c:forEach var="element" items="${contentItem.header}"> <dsp:renderContentItem contentItem="${element}"/> </c:forEach> </c:if> <%-- Render the main content --%> <div> <c:forEach var="element" items="${contentItem.main}"> <dsp:renderContentItem contentItem="${element}"/> </c:forEach> </div> <%-- Render the secondary content --%> <div> <c:forEach var="element" items="${contentItem.secondaryContent}"> <dsp:renderContentItem contentItem="${element}"/> </c:forEach> </div> </jsp:body> </crs:pageContainer>