Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.

Updating live pages when changing a Content Fragment, also inheriting content fragment reference from higher up the tree

Avatar

Level 1

Hello, we are thinking about using Content Fragments for a particular use case - applying sponsorship properties to a page.  We are using AEM6.4.

 

We are thinking about creating a sponsorship type of content fragment that will hold many fields related to the sponsorship (CampaignId, Company Name, Start date, End date, Image URL, Link URL, Alt Text, Label Text etc). 

 

In our page properties for specific pages we would then reference the Content Fragment containing the relevant sponsorship.  So the Content Fragment itself is not actually placed on the page in a Content Fragment component - it is just referenced from a property.  

 

Now I understand that when Content Fragments are changed AEM handles the flushing of dispatcher caches so that all pages referencing the Fragment are rebuilt without needing to reactivate them.  My first question is; Will this work with our above approach or does it require the Content Fragment component to be used?

 

We are also hoping to have a property on each page that will indicate that we should look up to the parent page (and grandparent, great grandparent etc, all the way to the root) in order to find a place where the sponsorship is defined.  In this case the reference to the Content Fragment wouldn't be present on pages that are inheriting the value from higher up the tree.  So my second question is whether it would be possible to flush the dispatcher for pages that are inheriting the content fragment reference.

 

If you need more information please let me know.

 

Thanks

Richard

 

 

 

 

 

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

6 Replies

Avatar

Community Advisor

Hi @RichSpence77,

Could you please share details on

  • where and how exactly the referenced(via property) content fragment is used(If it is not used in the pages via Content Fragment component)
  • your use case in brief.

Avatar

Community Advisor
Thanks for sharing the details. But the details didn't mention how exactly the referenced content fragment is going to be utilized or whole use case/functionality we are trying to achieve by having content fragment reference as part of page property.

Avatar

Level 1
Hi @Vijayalakshmi_S, Sorry if this is not enough detail. The fields from the content fragment that is referenced in the page property will be used to render a sponsorship logo on the page and render various metatags in the page source for analytics and advertising purposes. We don't want to have to require an editor to drag on a content fragment component for every article beneath a certain area of the site - we want the articles to inherit the parents configuration. Does this make sense? I'm not sure how else to explain it.

Avatar

Community Advisor

Thanks for the details. 

Since the content fragment is not directly referenced in the page and it is processed to extract specific details to display on the page, I don't think updating CF and activating will help flush the page referencing it.

However, we have feature from ACS commons named "Dispatcher Flush rules" which has config to specify associated paths to flush when particular path is activated. More details about this is available in  - https://adobe-consulting-services.github.io/acs-aem-commons/features/dispatcher-flush-rules/index.ht...

Also, suggest to do a quick check with local dispatcher set up once to understand the behavior. 

 

 

Avatar

Level 1

Some more detail as requested...

I think this diagram shows what we are trying to do:

Screen Shot 2021-02-17 at 11.58.53.png

 

The fields inside the Sponsorship area are page properties of that page.  A page can either define their own properties - and link to a content fragment - or when the page is built by the publisher it will look up the tree to find an ancestor page that has a value for the content fragment.