2015-06-30 15 views
37

Mam witrynę zbudowaną przy użyciu Sitecore 7.5 i Solr 4.7. Zauważam bardzo dziwne zjawisko, w którym pewne elementy treści nie są indeksowane. Oto co się dzieje.Dlaczego niektóre treści Sitecore nie powinny być indeksowane przez Solr?

Mam szablon danych o nazwie "Strona zawartości". Większość elementów treści, które używają tego szablonu danych, znajduje się w/sitecore/content/Home/Corporate. Takie rzeczy:

/sitecore/content/Home/Corporate/About-Us 
/sitecore/content/Home/Corporate/Careers 
/sitecore/content/Home/Corporate/Terms-Of-Use 

Istnieje kilka pozycji testowych że stworzone, które żyją w/Sitecore/treść takiego:

/sitecore/content/Test-1 
/sitecore/content/Test-2 

Wszystkie te strony są budowane przy użyciu danych „Strona content” szablon. Po odbudowaniu indeksu, a następnie przejściu do interfejsu użytkownika Solr i wykonaniu zapytania, nie mogę znaleźć żadnego elementu, który znajduje się pod węzłem głównym. Kiedy wykonuję zapytanie dla _templatename: "Content Page" - otrzymuję tylko wyniki testu 1 i testu 2. Czy ktoś wie, dlaczego tak się dzieje? To naprawdę dziwne. Nigdy nie widziałem czegoś, co Solr po prostu nie indeksuje niektórych przedmiotów. Wygląda na to, że opiera się na tym, gdzie są w drzewie treści.

+0

Czy jesteś w stanie udostępnić swoją konfigurację indeksu? –

+0

Czy Twoja witryna jest wielojęzyczna? –

+2

Co to jest ustawienie 'locations \ root' konfiguracji indeksu? Czy dzieje się to zarówno w programie głównym, jak i w Internecie? A także jako @MartinDavies i @PatrickPerrone powyżej. – jammykam

Odpowiedz

3

According to Pavel Veller on the Sitecore forums, odpowiadając na pytanie podobne do Ciebie:

Po pierwsze, istnieją różne strategie awaryjne. Na poziomie pola jest najczęściej najprawdopodobniej wykonane przez StandardValuesProvider i tak, musisz mieć wersję w języku, w którym ma się awarię. Opracowaliśmy kreator Narzędzia Językowego w SCORE, który może tworzyć puste wersje językowe , aby pomóc w dokładnie ten scenariusz. Możesz również wykonać zastępczy poziom elementu o numerze pozycji za pomocą ItemProvider, dzięki czemu będzie wyglądać tak, jakby element miał wersję w języku, nawet jeśli nie. Dobrą rzeczą zarówno dla użytkownika jest to, że zastępujesz na poziomie API Sitecore. Usługi takie jak przeszukiwacze i publikowanie wszystkich prac za pośrednictwem tych interfejsów API (do czasu, gdy oczywiście napisałeś swój własny kod ), w wyniku czego wszystkie "widzą" awarię. Publikowanie faktycznie "zmaterializuje" wartość rezerwową, a przeszukiwacz na dysku CD będzie działać z wartościami pozycji i pól, tak jakby te były prawdziwe.

Powiązane problemy