Избегайте индексации системной папки Sitecore Lucene / Solr

#solr #lucene #sitecore

#solr #lucene #sitecore

Вопрос:

Я просто настроил свою функцию поиска Solr в Sitecore, и она проиндексировала сайт. Я могу выполнить поиск и получить результаты. К сожалению, он проиндексировал СЛИШКОМ много и возвращает системные вещи, такие как шаблоны и узлы аналитики, в дереве содержимого. Я набираю такие вещи, как «system», он возвращает мне вещи в папке / system / и в других местах.

Я смог значительно сократить это, добавив шаблоны для исключения, но я бы предпочел просто сказать, чтобы он избегал 1 или двух определенных папок вместе (папка макета, системная папка и т. Д.).

Есть ли способ сделать это в конфигурации ContentSearch? Если нет, как я могу это сделать?

Спасибо!

Ответ №1:

Вы можете создать пользовательский индекс и ограничить его только тем содержимым, которое вы хотите в этом индексе, установив root узел:

 <contentSearch>
  <configuration type="Sitecore.ContentSearch.ContentSearchConfiguration, Sitecore.ContentSearch">
    <indexes hint="list:AddIndex">
      <index id="my_custom_index" type="Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider">
        ...
        <locations hint="list:AddCrawler">
          <crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
            <Database>web</Database>
            <Root>/sitecore/content</Root>
          </crawler>
        </locations>
        ....
      </index>
    </indexes>
  </configuration>
</contentSearch>
 

Обратите внимание, что id для атрибута index установлено пользовательское имя индекса, а корневой узел изменен на root узел. Приведенное выше было копией Sitecore.ContentSearch.Solr.Index.Web.config , возможно, вам потребуется создать аналогичную для master на основе ваших требований.

Вы можете найти дополнительную информацию об определении собственных пользовательских индексов в этом сообщении в блоге: Определение пользовательского индекса в Sitecore 7, абсолютный минимум

В качестве альтернативы, оставьте индексы по умолчанию в покое и добавьте фильтр к своему собственному поисковому запросу, чтобы ограничить /sitecore/content только возвращаемые результаты.