[英]Make a optional search in umbraco
我在umbraco中创建了新的文档类型。然后在内容中通过此文档类型创建了一个节点。 我将设置一个新的搜索索引,因此找到了该代码,即设置了一个新的搜索索引。
@* Get the search term from query string *@
@{var searchTerm = Request.QueryString["search"];}
@{var results = ExamineManager.Instance.Search(searchTerm, true); }
但我不知道如何限制只能在我的文档类型中搜索的代码。
为此有几个步骤。
你不得不:
ISearchCriteria
对象; 可以将其编码为:
var criteria = ExamineManager.Instance.CreateSearchCriteria();
var expression = criteria.Field("nodeTypeAlias", "yourDocTypeAlias")
.And()
.Field("nodeName", searchTerm);
var results = ExamineManager.Instance.Search(expression.Compile());
之所以可能这样做,是因为当Umbraco发布节点时,它将节点的docType别名保存到搜索索引中。
这里有更多的检查文档 。 我还建议您下载Luke ,这是一个独立工具,可让您查看索引内部,以便查看Umbraco实际存储的内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.