1

编辑:改写的问题

我认为要么有错误,要么我做错了什么。

  1. 我向 Blogpost 类型添加了一个字段。此字段属于 Contentpicker 类型。我称之为相关页面。
  2. 然后我创建到常规页面(ContentType Page)。
  3. 我创建了 4 篇博文。两篇博文将 PageOne 作为 RelatedPage 字段中的选定值。其他两个帖子在相关页面中将 PageTwo 作为选定值。
  4. 现在我创建一个过滤器 ContentType 为 BlogPost 的查询。并且带有 Blog Post.Related Page 的过滤器等于 {21}(即 PageOne 的 Id)。

我希望得到结果 BlogPostOne 和 BlogPostTwo。相反,我没有得到结果。实际上,我希望从放置小部件的页面中检索 pageid 但无法使其工作,因此我将过滤器还原为预定义值而不是动态值。但就像我说的没有结果。

查询也是错误的,那我应该怎么做。或者 ContentPicker 字段的过滤器是否存在错误。

PS 我还将在 Codeplex 中提交问题。

更新 在 Tokenizer 中,所有包含 { } 的值都被视为标记,因此被替换。问题是 contentpicker 字段中的内容项的 Id 与荣誉一起存储。因此,当将 {21} 作为过滤器的值时,21 会被标记化,并且由于该标记没有值,因此该值变为空。跳过标记器时它可以工作(在调试时)。但是不能跳过标记器,因为存在标记是非常合法的。因此,我认为标记器或 id 存储在 contentpicker 的 contentitem 字段中的方式存在错误。我认为可以通过将内容选择器更改为存储用逗号分隔但没有荣誉的数字来解决。

4

1 回答 1

0

您是否尝试过使用页面的别名而不是内容 ID 作为标识符?例如“/about-us”,就像您在图层规则中所做的那样。

于 2012-12-03T14:01:14.983 回答