Expand my Community achievements bar.

SOLVED

Component used in multiple places.

Avatar

Level 2

HI Team ,

 

I  have question on AEM custom component , How can we check  how many places  AEM component is used in the content node .   If I modify that  component needs to know how many places it will reflect .   SQL2 we have the option to fetch, Please let me know if we have any solution for this. 

 

 

Thanks 

Hari Chandana. 

1 Accepted Solution

Avatar

Correct answer by
Employee

Hi Hari,

A xpath query can be used to get the results where this component is used.

Goto CRXDELight using http://AEM-AUTHOR-HOST/crx/de/index.jsp, open Tools -> Query. Place the query into the Query box:

/jcr:root/content//*[jcr:contains(@sling:resourceType, 'COMPONENT_NAME/PATH')] order by @jcr:score

if you know exact path of the component then use below query.

/jcr:root/content//*[@sling:resourceType =  'COMPONENT_PATH'] order by @jcr:score 

It will return list of paths of content nodes where your component being used. You may split the each path before /jcr:content to get exact page paths.

 

Thanks,

Vaishali

View solution in original post

3 Replies

Avatar

Community Advisor

You can use groovy script 

https://hashimkhan.in/aem-adobecq5-code-templates/groovy-script/

 You can try this Url it will give you the components list and their usage

http://localhost:4512/libs/wcm/core/content/sites/components.html

 and you have QueryBuilder to get the list of pages with particular component.

Avatar

Correct answer by
Employee

Hi Hari,

A xpath query can be used to get the results where this component is used.

Goto CRXDELight using http://AEM-AUTHOR-HOST/crx/de/index.jsp, open Tools -> Query. Place the query into the Query box:

/jcr:root/content//*[jcr:contains(@sling:resourceType, 'COMPONENT_NAME/PATH')] order by @jcr:score

if you know exact path of the component then use below query.

/jcr:root/content//*[@sling:resourceType =  'COMPONENT_PATH'] order by @jcr:score 

It will return list of paths of content nodes where your component being used. You may split the each path before /jcr:content to get exact page paths.

 

Thanks,

Vaishali

Avatar

Community Advisor

Hi @hari_krishnac22,

Use the below query builder predicate as a reference to list all the paths where the component is used.

path=/content/we-retail  
type=nt:unstructured //we can't use cq:Page type directly. Component under content path resides in this type (hierarchy of component differs from page to page based on where we have authored)
1_property=sling:resourceType
1_property.value=weretail/components/content/text
p.limit=-1