使用 UnifiedSearchFor 使用页面引用类型的父页面的 Episerver 搜索过滤器
Episerver Search filter using parent page of Page reference type using UnifiedSearchFor
我必须在 episerver 中实施搜索条件。现有的搜索条件包括页面类型过滤器,它为我提供页面类型的搜索结果,而不管它们在哪里。我需要包括父页面的另一个标准,它是 pagereference 类型,它基本上将过滤页面和 return 记录,这些记录只是父页面的一部分。
请指点。
首先,如果您有父页面,他们为什么不使用 ContentLoader 而不是搜索?像这样:
var loader = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IContentLoader>();
var children = loader.GetChildren<%pageTypeHere%>(%parent pagereference%);
但是如果您想使用搜索选项:
query = query.Filter(x => x.Ancestors().Match(%parent pagereference id (so a int)%));
我必须在 episerver 中实施搜索条件。现有的搜索条件包括页面类型过滤器,它为我提供页面类型的搜索结果,而不管它们在哪里。我需要包括父页面的另一个标准,它是 pagereference 类型,它基本上将过滤页面和 return 记录,这些记录只是父页面的一部分。 请指点。
首先,如果您有父页面,他们为什么不使用 ContentLoader 而不是搜索?像这样:
var loader = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IContentLoader>();
var children = loader.GetChildren<%pageTypeHere%>(%parent pagereference%);
但是如果您想使用搜索选项:
query = query.Filter(x => x.Ancestors().Match(%parent pagereference id (so a int)%));