我在Sitecore中有自定义规则:
where person's status is [condition,Tree,root=/sitecore/content/Home/PersonStates, specified state]
我想将硬编码路径替换为指向任何文件夹的路径,该文件夹的模板ID与我指定的模板ID匹配。这是因为作者将创建这些值(根文件夹中的特定模板)。
我试过这个并且它不起作用:
where person's status is [condition,Tree,root=query:/sitecore/content/Common/Categories/*[@@templateid='{3B0461BF-9ABC-4AF1-B937-C8D225FC2313}'], specified state]
此外,我需要根据这些项目所具有的属性来限制其中一些值。 例如:作者增加了5个州。我只需要那些将活动标志设置为true的状态。
我该怎么做?
答案 0 :(得分:0)
Tree Macro不支持此功能,解决方案是创建一个允许执行查询的自定义宏。为此,您必须实现IRuleMacro并实现您的逻辑。确保对您的查询进行URL编码。另请注意,宏在调用时没有任何上下文,因此您必须自己实现。可以找到here
的示例