Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Component used in multiple places.

hari_krishnac22
Level 2
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
vanegi
Correct answer by
Employee
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
Varun_Shakya
Community Advisor
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.

vanegi
Correct answer by
Employee
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

Vijayalakshmi_S
Community Advisor
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