...
Template defines headerNav container
Code Block | ||
---|---|---|
| ||
<nav class="top-menu"> <div class="container no-padding"> <div class="col-xs-12 col-sm-12 col-md-8 col-lg-8 no-margin"> <wicket:container wicket:id="headerNav"> [header nav] </wicket:container> </div> |
StandardHeader component populates this value with content body of header_nav_include.
Code Block | ||
---|---|---|
| ||
String content = contentServiceFacade.getContentBody( "header_nav_include", getCurrentShopId(), getLocale().getLanguage()); return new Label("headerNav", content).setEscapeModelStrings(false); |
...
Define container element in Wicket HTML template, e.g. myCmsContainer
Code Block | ||
---|---|---|
| ||
<wicket:container wicket:id="myCmsContainer">[my cms container]</wicket:container> |
Add container element as Label containing body of the CMS content object, retrieved by content service using URI, e.g. "my_cms_include"
Code Block | ||
---|---|---|
| ||
String content = contentServiceFacade.getContentBody( "my_cms_include", getCurrentShopId(), getLocale().getLanguage()); addOrReplace(new Label("myCmsContainer", content).setEscapeModelStrings(false)); |
If we want dynamic content to be included the java code should be updated to use dynamic body and supply all parameters to be used in this dynamic content.
Code Block | ||
---|---|---|
| ||
final Map<String, Object> contentParams = new HashMap<>(); ... // populate contentParams map ... String content = contentServiceFacade.getDynamicContentBody( "my_cms_include", getCurrentShopId(), getLocale().getLanguage(), contentParams); addOrReplace(new Label("myCmsContainer", content).setEscapeModelStrings(false)); |
...
Configuring include on SFG
Info | ||||||
---|---|---|---|---|---|---|
this feature is available in
|
YCE
Say we want to create CMS include with "my_cms_include" that will be included in our custom component.
...