Expand my Community achievements bar.

SOLVED

AEM - Static and Dynamic Content

Avatar

Level 7

Hi all,

Let us say there is an AEM web site that has 10 pages and all of the pages share the same header with a Logo and other links like “contact us” and footer.

I have two questions in this regard:

  1. How do we implement it, so that the Header and Footer (once created) come by default to all pages of this site?

Design dialog? Design Dialog is for a specific template right?

If the templates are going to be different for different pages, do we create one Design Dialog for each template?

  1. Also, how do we configure dispatcher so that, the static header, footer, etc are cached and the dynamic body (content) is not cached?

Appreciate your responses.

Thanks,

Rama.

1 Accepted Solution

Avatar

Correct answer by
Level 9

@nsvsrk ,

In order to accomplish a combination of static & dynamic content, You must use Sling Dynamic module. Here is the doc.

https://www.cognifide.com/our-blogs/cq/sling-dynamic-include/

Using the sling dynamic module, You can make sections of the page non-cachable in your case it is body of the page.

--

Jitendra

View solution in original post

2 Replies

Avatar

Administrator

Hi 

Answer to you question 1 is:-

Q1.) How would you design a global implementation of Header and Footer ?

Headers and Footers are like the first and foremost thing we design for a website based on a requirement and need of the client. I would like to share few of the handy approaches which might help you design it better:

1.Site Content Hierarchy Component: For this approach , you have to build up a Header/Footer component which will pick up the Site hierarchy as defined and showcase it in the Header / Footer Menu. The authors can define a content path below which all the pages are picked and displayed based on the page depth. You may also allow authors to define the max page depth for the navigation .

2.Global Configuration Page: The idea behind this approach is to develop a global configuration page wherein CQ-authors can define the Navigation based on primary , secondary and tertiary (etc.) levels and then that configuration may be picked for all the pages in the site. This approach  gives a very good restriction for the site navigation as the specific Global Configuration Page can be made accessible to limited Admin users only . Second advantage of this design is that site hierarchy is not acting any role and authors can define any of the page links to be displayed in Navigation.

3.Template Specific Design: This approach uses design dialog wherein either the component defined in Approach 1 above OR a different component where users can add links and pages as per requirement could be dropped . This will made the Navigation fixed for a particular template only and not for the complete site.

4.Global Design with iParsys : This approach uses iParsys in addition to the component defined in Approach 1 above OR a different component where users can add links and pages as per requirement could be dropped. This will made the Navigation applicable for the complete site and if the user needs a different Navigation to be displayed he can just Disable inheritance and author a different Navigation component for its child pages. This is by far the most easiest and widely used approach.

Reference links :- 

Link:- http://labs.6dglobal.com/blog/2015-04-08/creating-site-footer-sightly/

//Creating a site footer in AEM 6 using Sightly and Sling Models

Link:- http://stackoverflow.com/questions/21053131/how-do-we-define-global-properties-in-cq5

Link:- https://docs.adobe.com/docs/v5_1/html-resources/cq5_guide_power_user/ch04s03.html#sect_foundation_co... (old documentation)

I hope this would help you.

Thanks and regards

Kautuk Sahni



Kautuk Sahni

Avatar

Correct answer by
Level 9

@nsvsrk ,

In order to accomplish a combination of static & dynamic content, You must use Sling Dynamic module. Here is the doc.

https://www.cognifide.com/our-blogs/cq/sling-dynamic-include/

Using the sling dynamic module, You can make sections of the page non-cachable in your case it is body of the page.

--

Jitendra