我有一个使用Sitecore 7.5和Solr 4.7构建的网站。我注意到一个非常奇怪的现象,某些内容项目没有被索引。这是正在发生的事情。
我有一个名为“内容页面”的数据模板。使用此数据模板的大多数内容项目都位于/ sitecore / content / Home / Corporate中。这样的事情:
/sitecore/content/Home/Corporate/About-Us
/sitecore/content/Home/Corporate/Careers
/sitecore/content/Home/Corporate/Terms-Of-Use
我创建的一些测试项目存在于/ sitecore / content中,如下所示:
/sitecore/content/Test-1
/sitecore/content/Test-2
所有这些页面都是使用“内容页面”数据模板构建的。重建索引然后转到Solr UI并执行查询后,我找不到Home节点下面的任何项目。当我查询_templatename:“内容页面”时 - 我只在结果中获得Test-1和Test-2。有谁知道为什么会发生这种情况?这真的很奇怪。我从未见过Solr根本没有索引某些物品的东西。它似乎基于它们在内容树中的位置。
答案 0 :(得分:3)
According to Pavel Veller on the Sitecore forums,回答类似于你的问题:
首先,有不同的后备策略。场级最多 可能通过StandardValuesProvider完成,是的,你需要有一个 用于后备的语言版本。我们建立了一个 SCORE中的语言工具向导,可以创建空语言版本 准确地帮助这个场景。您还可以执行项目级回退 使用ItemProvider,它将使它看起来好像一个项目有一个 语言中的版本,即使它没有。关于两者的好处 是您在Sitecore API级别上的回退。搜索等服务 爬虫和通过这些API发布所有工作(直到你写了你的 当然是拥有的,因此他们所有人都会看到"后备。 出版实际上将实现"实现"后备值和 CD上的爬虫将使用项目和字段值,就像那些 是真实的。