Hi, I'm new to AEM and trying to figure out best practices around creating content separate from pages. I have some content that I need created that needs to be reused across multiple pages and multiple sites. I want to create a central repository for this content where authors can enter the content via forms or an easy to navigate interface. Then I'd like to be able to reuse this content in as many ways as possible: create components where you can drag and drop the content onto a page, reference elements or attributes of the content in various pages.
Is there a recommended way to do this in AEM? The out-of the box way seems limited to creating content as it exists on pages but not creating a set of content and content types that will exist across multiple pages.
Solved! Go to Solution.
Views
Replies
Total Likes
Question 1
In AEM - to share content across sites - you use Multi-site manager. This lets you get the same content into different AEM sites.
For information- see:
https://docs.adobe.com/docs/en/cq/5-6-1/administering/multi_site_manager.html
Question 2
The JCR stores all sort of content. Everything in the JCR is nodes and contain properties. You can store data not related to pages - for example, images. You can store application data in the JCR instead of a relational database. You can use the JCR API to get data into and out of the JCR. See this community article for more information:
https://helpx.adobe.com/experience-manager/using/querying-experience-manager-data-using1.html
Question 3
As shown in this article - you can write custom services to perform create, replace, update and delete operations on JCR data.
TO learn how to model data in the JCR - read: http://wiki.apache.org/jackrabbit/DavidsModel
You can even write AEM services to store and read data in relational DBs as well -- for example:
https://helpx.adobe.com/experience-manager/using/querying-persisting-cq-data-mysql.html
So when writing AEM apps - you are not bound to storing application data in the JCR. You can hook into relational databases if that is a requirement.
As you can see - AEM is very flexible and powerful in that it lets you write custom OSGi services.
Views
Replies
Total Likes
Here is a good community article that talks about this subject:
Reusing Content in Adobe Experience Manager
Hope this points you in the right direction.
Also - as a new user - its recommended that you perform this walk through:
http://docs.adobe.com/docs/en/aem/6-0/develop/the-basics/website.html
Views
Replies
Total Likes
Thanks that answered some of my question....A page can inherit content from parent pages through iparsys component. A couple follow-up questions:
Views
Replies
Total Likes
Question 1
In AEM - to share content across sites - you use Multi-site manager. This lets you get the same content into different AEM sites.
For information- see:
https://docs.adobe.com/docs/en/cq/5-6-1/administering/multi_site_manager.html
Question 2
The JCR stores all sort of content. Everything in the JCR is nodes and contain properties. You can store data not related to pages - for example, images. You can store application data in the JCR instead of a relational database. You can use the JCR API to get data into and out of the JCR. See this community article for more information:
https://helpx.adobe.com/experience-manager/using/querying-experience-manager-data-using1.html
Question 3
As shown in this article - you can write custom services to perform create, replace, update and delete operations on JCR data.
TO learn how to model data in the JCR - read: http://wiki.apache.org/jackrabbit/DavidsModel
You can even write AEM services to store and read data in relational DBs as well -- for example:
https://helpx.adobe.com/experience-manager/using/querying-persisting-cq-data-mysql.html
So when writing AEM apps - you are not bound to storing application data in the JCR. You can hook into relational databases if that is a requirement.
As you can see - AEM is very flexible and powerful in that it lets you write custom OSGi services.
Views
Replies
Total Likes
Views
Likes
Replies