我正在使用如下查询构建器来获取在属性中使用组件(组件名称将作为参数传递)的不同页面的列表。我需要传递两个参数cq:lastReplicationAction=Activate
和sling:resourceType=component
路径。我尝试了上面的 JSON 查询,但没有结果,它失败了,因为该组件可以在任何级别的页面节点上使用。例如,/jcr:content/par/component
或/jcr:content/par/mainpar/component
问问题
9925 次
2 回答
4
组件放置在页面的 par 节点下,Replication 属性是页面 JCR 节点的一部分。这就是您的查询返回 0 结果的原因。试试这个查询:
http://localhost:4502/bin/querybuilder.json?1_property=jcr:content/par/*/sling:resourceType&1_property.value=<Component-Path>&2_property=jcr:content/cq:lastReplicationAction&2_property.value=Activate&path=<BASE-Content-Path>&type=cq:Page&p.limit=-1
我使用以下属性来查找组件:jcr:content/par/*/sling:resourceType如果您的 par 节点具有不同的名称,则使用正确的 par 节点名称。
于 2016-01-28T01:50:40.653 回答
0
xpath 查询可用于获取使用组件的页面。
使用http://AEM-AUTHOR-HOST/crx/de/index.jsp转到 CRXDELight ,打开工具 -> 查询。将查询放入查询框中:
/jcr:root/content//*[jcr:contains(@sling:resourceType, 'COMPONENT_NAME/PATH')] order by @jcr:score
如果您知道组件的确切路径,请使用以下查询。
/jcr:root/content//*[@sling:resourceType = 'COMPONENT_PATH'] order by @jcr:score
它将返回正在使用您的组件的内容节点的路径列表。您可以先拆分每个路径/jcr:content
以获得准确的页面路径。
于 2018-01-03T21:10:07.923 回答