从页面树中捕获AEM包中的单个页面

JE *_*ley 3 aem

想象一下,你有一个名为的页面结构:

/content/site/en_us/foo/bar
Run Code Online (Sandbox Code Playgroud)

您需要将foo页面从另一个环境移动到此页面,但我们不希望包含条形页面或任何其他子项.

如果我定义一个包

/content/site/en_us/foo 
Run Code Online (Sandbox Code Playgroud)

如果我添加一个排除,它将捕获孩子

/content/site/en_us/*.*
Run Code Online (Sandbox Code Playgroud)

我将排除我正在尝试恢复的页面的实际内容.

我可以为每个子页明确定义一个排除,但在我们的例子中,foo有相当多的子页面使得这种类型的手动排除变得困难.

有没有办法捕获一个页面及其内容而不是子页面?

Tom*_*wek 6

页面内容存储在jcr:content节点下.我们可以使用这个事实来排除除了这个节点的内容之外的所有内容:

<filter root="/content/site/en_us/foo">
    <exclude pattern=".*"/>
    <include pattern=".*/jcr:content.*"/>
</filter>
Run Code Online (Sandbox Code Playgroud)

此过滤器定义将包括foo节点,排除其所有后代,jcr:content节点及其子树除外.