2016-06-01 10 views
0

Unsere Umbraco 7 Website verfügt über die folgenden 4 Knoten der obersten Ebene.Umbraco - Suchen Sie alle Felder aller Dokumente, die Kinder einer Liste der Eltern sind

1 - Home 1 (Language 1) 
2 - Home 2 (Language 2) 
3 - Discuss (Bilingual, i.e. Language 1 and Language 2) 
4 - Buy (Bilingual, i.e. Language 1 and Language 2) 

Je nachdem, ob der Benutzer auf einer Sprache 1 oder Sprache 2 Seite, würde Ich mag alle Felder der alle Dokumente aller Kinder von 1, 3, suchen 4 (wenn die aktuelle Seite ist Sprache 1) oder 2, 3, 4 (wenn die aktuelle Seite Sprache 2 ist).

Bisher habe ich eine sehr einfache Suche mit, wo der Benutzer einfach einen Wert „Abfrage“ in ein Textfeld eingibt:

IEnumerable<IPublishedContent> c = Umbraco.TypedSearch(query); 

Dies wäre ideal, abgesehen davon, dass sie alle Scans die Dokumente (dh die Wurzel und Kinder von 1, 2, 3 und 4), und schließt Dokumente, die Kinder von 1 oder 2 sind, abhängig von der Sprache nicht aus.

Ich glaube, ich muss einen Examine Search Provider und einen Examine Index für Sprache 1 und Sprache 2 einrichten, aber ich bin mir nicht sicher, wie man mehrere IndexParentId Werte einrichtet, noch, wie man alle Felder scannt in allen Dokumenten.

Kann mir jemand in die richtige Richtung zeigen?

Ich weiß, dass das Scannen aller Felder nicht immer eine gute Idee ist, aber wir haben derzeit viele verschiedene Feldnamen für die Abschnitte, die "Inhalt" in unseren Dokumententypen enthalten, also ist dies momentan der beste Ansatz für mich.

(ich dies ursprünglich gepostet vor einer Woche auf dem Umbraco Forum, haben aber keine Antwort hatte, damit mein Beitrag hier)

Antwort