我无法找到任何信息,如果Sitecore 7中的分面搜索不仅适用于内部搜索,也适用于前端.
业务用户是否可以使用JUST Sitecore内置搜索而不使用SOLR引擎来指定可由前端站点访问者使用的构面?
我正在寻找一种优雅的方法来从我的Web索引中排除克隆的项目.我的搜索结果中的项目显示为重复项.如果只出现原始项目而根本没有克隆,我更喜欢它.
想到的一些可能的解决方案是:
Global Item Boosting Rule如果项目的_Source字段不为空,则创建一个以大幅降低提升值.这不是优选的,因为它仅降低分数并且不从搜索结果中移除克隆.
使用扩展的Where子句排除我执行的每个查询中的克隆项.这也不是首选,因为这意味着我需要记住在所有查询中包含此子句.此外,克隆的项目仍保留在索引中.
Sitecore v7.1
突然之间,我的Sitecore网站上的Lucene索引被破坏了,经过一些调查后,我注意到Sitecore包含的文件是以非字母顺序"修补"web.config.
约翰韦斯特在一篇博客文章中提到:
Sitecore进程Web.config按字母顺序包含文件(从技术上讲,这是Directory.GetFiles()方法返回的顺序).
但是,MSDN说:
返回的文件名(来自GetFiles())的顺序无法保证; 如果需要特定的排序顺序,请使用Sort()方法.
什么可能导致这种问题?它与服务器配置有关吗?
此问题之前曾与Sitecore 6.x的限定符一起询问.
由于Sitecore 7.0已经推出并广泛使用,我和我的团队需要一个新的答案并对这个问题进行辩论.
在Sitecore 7.0 Content Delivery中重建自定义索引的最佳方法是什么?
编辑:(更多信息)我无法访问正在开发的代码.我在多个Sitecore实例中运行大约320个不同的网站,大多数网站都有自己的Lucene索引.
我正在使用sitecore.对于一个项目,我创建了一个带有简单类型整数字段的模板.此整数字段的默认值为0.
当我基于此模板创建一个值0(默认值)的新项目时,它不会显示.通过将默认值更改为1(例如),将显示该值.有谁知道如何解决这个问题?
非常感谢.
约迪
我们有一个使用Sitecore 7.1的MultiSite解决方案.我想为不同的站点使用自定义配置文件.例如,我有一个不同的网站CustomLink提供商,不同的404页面,不同的语言解析器.
我该如何添加或修补这些配置文件以及以什么顺序????
任何帮助
我理解如何使用ContentSearchManager来搜索项目以及如何在字段上进行构面.但我无法弄清楚如何在我在Sitecore中创建的标签上进行分析.默认情况下,UI会在它们上面,但在使用ContentSearchManager的索引中.有没有人知道它?谢谢
FacetResults facets = new FacetResults();
facets = query.Where(x => x.Language.Equals(computedLanguage)
&& (x.PageTitle.Contains(text)))
.FacetOn(facet => facet.tags).GetFacets();
Run Code Online (Sandbox Code Playgroud) 在我的内容树中,我有包含子项的项目.子项是父项的内容所在的位置.
例如
Article container <---- only this item is navigable to the user
|
|- Text block = "foo foo foo foo"
|- Image = "foo.jpg"
|- Text block = "foo foo foo"
Run Code Online (Sandbox Code Playgroud)
当用户浏览我的网站时,他们永远不会找到任何子项的链接.他们只会访问"文章容器"的网址,其中包含所有子项目都显示在页面上的演示文稿.
在常规索引方案中,所有3个子项都将匹配查询"foo"并在结果中返回.我想创建一个纯粹用于网站搜索的Sitecore 7索引,它将返回术语"foo"的搜索查询的父项("文章容器").我不希望在查询结果中返回任何子项.
这可能与计算字段,入站或出站索引过滤器(或我还没有听说过的其他内容)的某些组合有关吗?
或者我是否必须先解析输出并解析父项,然后再将其显示给用户?
编辑
@martindavies的答案很好,但我想知道是否有办法在索引"上游"进行索引子项目并将其内容存储在索引中的父项目中,而不是"索引父项"的"下游"并将所有子内容存储在父级索引条目中.这样做的原因是,对子项的任何编辑都将自动重新编制索引,而无需手动触发父文章的重新索引.
我想搜索具有特定(基于GUID)布局控制器节点的所有页面.有没有办法在Sitecore中这样做?
我希望避免遍历所有页面节点并通过演示细节识别布局控制器.如果必须这样做,这将是一项繁琐的工作.
我对Sitecore和C#都很陌生,过去几天我一直在努力解决问题,所以我希望你们中的一个人可以帮助我.
我刚从Sitecore 6升级到7,并且有一些变化.以下代码用于在Sitecore 6中工作,但是您获取LinkField的URL的方式已不再适用.
protected string writeBalloon(Item targetItem)
{
string balloonString = "";
Sitecore.Data.Fields.LinkField linkfield = targetItem.Fields["Link"];
balloonString += "<a class='balloon-link' href='" + linkfield.Url + "'>";
balloonString += "<div class='balloon'>";
balloonString += "<h3>";
balloonString += targetItem.Fields["Title"];
balloonString += "</h3>";
balloonString += "<p>";
balloonString += targetItem.Fields["Text"];
balloonString += "</p>";
balloonString += "</div>";
balloonString += "</a>";
return balloonString;
}
Run Code Online (Sandbox Code Playgroud)
我想我已经阅读/尝试了谷歌关于此事的所有文章,但我似乎仍然无法做到正确.
sitecore ×10
sitecore7 ×10
c# ×3
.net ×1
indexing ×1
lucene ×1
lucene.net ×1
sitecore6 ×1
sitecore7.1 ×1
sitecore7.2 ×1