获取木兰花cms的页面属性、系统属性和所有具有[mgnl:area]类型属性的子节点



我想为Magnolia网站工作区中的一个页面写一个脚本,该页面将列出:

  • 页面的系统属性
  • 页面属性
  • 具有页面所有[mgnl:area]属性的所有子节点

我曾尝试使用info.magnolia.jcr.util中的NoteUtil,但我得到了给定节点的所有子节点,包括[mgnl:area]和[mgnl:page]类型的子节点,但没有属性。

VersionManager vm = VersionManager.getInstance();
Session session =  MgnlContext.getJCRSession("website");
root =session.getNode(path);
Iterable<Node> iterator=NodeUtil.collectAllChildren(root);

您可以使用这个:

info.magnolia.jcr.util.NodeUtil#collectAllChildren(javax.jcr.Node, org.apache.jackrabbit.commons.predicate.Predicate)

如果你不想过滤除传递true或类似内容之外的任何内容,基本上在那里传递你自己的谓词。

干杯,

希望能有所帮助,

最新更新