WPML

In der ElasticPress-Integration gibt es nichts zu übersetzen. Das Kompatibilitäts-Plugin sorgt automatisch dafür, dass ElasticPress sprachlich korrekte Ergebnisse zurückgibt; Ihre Aufgabe besteht darin, die Komponenten zu installieren, die anfängliche Synchronisierung auszuführen und zu bestätigen, dass die Ergebnisse richtig aussehen.

Bevor Sie beginnen

Installieren und aktivieren Sie diese Plugins auf derselben Website:

Sie benötigen außerdem einen Elasticsearch-Endpunkt: selbst gehostet oder einen verwalteten Dienst wie ElasticPress.io, Elastic Cloud oder AWS OpenSearch. Konfigurieren Sie ElasticPress für Ihren Elasticsearch-Host und bestätigen Sie, dass die Indizierung auf einer einsprachigen Website erfolgreich ist, bevor Sie die WPML-Ebene hinzufügen.

Konfigurieren Sie Ihre WPML-Sprachen, bevor Sie die erste Synchronisierung ausführen.

Wie die Indizierung pro Sprache funktioniert

WPML ElasticPress erstellt für jede Sprache auf Ihrer Website einen separaten Elasticsearch-Index. Der Index jeder Sprache enthält:

  • Übersetzungen in diese Sprache für jeden übersetzbaren Beitragstyp.
  • Beiträge in der Standardsprache für jeden Beitragstyp, der so eingestellt ist, dass er auf die Standardsprache zurückgreift, wenn keine Übersetzung vorhanden ist.
  • Kopien von nicht übersetzbaren Beiträgen. Der Index jeder Sprache enthält diese, damit sie unabhängig von der Sprache des Besuchers in den Suchergebnissen erscheinen können.

Jedes Dokument in einem Sprachindex wird in dieser Sprache analysiert. Stoppwörter, Wortstammbildung (Stemming), Abkürzungen, Plural- und Tempusbehandlung sind alle sprachspezifisch. Dadurch stimmen französische Suchanfragen mit französischen Wortstämmen und japanische Suchanfragen mit der japanischen Morphologie überein; ohne eine Analyse pro Sprache würde die Suchmaschine die Regeln einer Sprache auf den Text jeder anderen Sprache anwenden.

Für jede Suche eines Besuchers leitet WPML ElasticPress die Anfrage an den passenden Sprachindex weiter. Der Ergebnispool ist bereits auf die richtige Sprache gefiltert, bevor das Relevanz-Ranking beginnt.

Die anfängliche Synchronisierung ausführen

Wenn die vier Plugins aktiv sind und ein Elasticsearch-Endpunkt in ElasticPress konfiguriert ist, führen Sie die anfängliche Synchronisierung aus:

  1. Öffnen Sie ElasticPress → Sync im WordPress-Admin-Bereich.
  2. Klicken Sie auf Start Sync.

WPML ElasticPress löst eine Synchronisierung pro Sprache aus und baut die sprachspezifischen Indizes nacheinander auf. Auf einer großen Website kann dies einige Stunden dauern; die Seite meldet den Fortschritt während der Synchronisierung.

Wenn Sie ein Update von WPML ElasticPress 1.0 auf 2.0 oder höher durchführen, müssen Sie neu indizieren. Das Indexformat hat sich geändert, als Version 2.0 sprachspezifische Indizes einführte.

Nach der anfänglichen Synchronisierung fließen Inhaltsaktualisierungen automatisch in den richtigen Index. Wann immer Sie einen Beitrag erstellen, ändern oder löschen, aktualisiert WPML ElasticPress im Hintergrund den entsprechenden Sprachindex basierend auf der Sprache dieses Beitrags oder der Übersetzungseinstellung für seinen Beitragstyp.

Spezifische Sprachen mit WP-CLI indizieren

Für große Websites, geplante Aufgaben, Deployment-Skripte oder jeden Workflow, bei dem die Admin-Benutzeroberfläche keine Option ist, bietet WPML ElasticPress einen WP-CLI-Befehl (wp wpml_elasticpress sync), der die eigene CLI-Synchronisierung von ElasticPress umschließt und ein --post-lang-Flag für die Sprachauswahl hinzufügt.

Die anfängliche Synchronisierung nur für englische Beiträge ausführen:

wp wpml_elasticpress sync --setup --post-type=post --post-lang=en

Das --setup-Flag löscht vorhandene Indizes vor dem Neuaufbau. Nach diesem Befehl liefert die englische Suche englische Ergebnisse; Suchen aus anderen Sprachen liefern nichts, da ihre Indizes noch nicht aufgebaut wurden.

Eine zweite Sprache hinzufügen, ohne die vorhandenen Indizes zu löschen:

wp wpml_elasticpress sync --post-type=post --post-lang=fr

Wiederholen Sie dies für jede weitere Sprache. Lassen Sie --setup weg, damit zuvor indizierte Sprachen erhalten bleiben.

Mehrere Sprachen in einem Durchlauf synchronisieren:

wp wpml_elasticpress sync --post-lang=en,es

Die Batch-Größe anpassen, wenn der Arbeitsspeicher knapp ist:

wp wpml_elasticpress sync --per-page=200

Die Standard-Batch-Größe ist 350; eine Reduzierung hilft auf Servern mit begrenztem Arbeitsspeicher.

Jeden Index von Grund auf neu aufbauen:

wp wpml_elasticpress sync --setup

Dies löscht jeden Sprachindex und baut sie alle neu auf. Verwenden Sie dies, wenn über alle Sprachen hinweg etwas falsch aussieht oder nach einem größeren Upgrade.

So überprüfen Sie, ob ElasticPress-Suchen Inhalte in der richtigen Sprache zurückgeben

Die technische Synchronisierung ist unkompliziert; der Wert dieser Seite liegt in der Überprüfung. Gehen Sie diese Prüfungen durch, nachdem die anfängliche Synchronisierung abgeschlossen ist, und erneut jedes Mal, wenn Sie Inhalte oder Einstellungen ändern, die das Suchverhalten beeinflussen.

1. Die Suche liefert aus jeder Sprache Ergebnisse in derselben Sprache

Wechseln Sie im Frontend den Sprachumschalter nacheinander in jede Sprache und suchen Sie nach einem Begriff, von dem Sie wissen, dass er in übersetzter Form existiert.

  • Bestanden. Die Ergebnisseite listet nur Beiträge in dieser Sprache auf.
  • Fehlgeschlagen. Ergebnisse aus anderen Sprachen erscheinen neben Treffern in derselben Sprache. Die Synchronisierung für diese Sprache wurde möglicherweise nicht abgeschlossen – überprüfen Sie ElasticPress → Sync auf Fehler und führen Sie den sprachspezifischen WP-CLI-Befehl erneut aus.

2. Inhalte nur in der Ausgangssprache liefern null Ergebnisse in anderen Sprachen

Wählen Sie einen Beitrag, der nur in Ihrer Standardsprache existiert – ohne Übersetzung in den anderen Sprachen der Website. Suchen Sie von einer Version der Website, die nicht die Standardsprache ist, nach einer Phrase aus diesem Beitrag.

  • Bestanden. Null Ergebnisse. Der Beitrag ist nicht in die Sprache des Besuchers übersetzt, sollte also nicht erscheinen.
  • Fehlgeschlagen. Der Beitrag erscheint in den Ergebnissen. Dies bedeutet normalerweise, dass der Beitragstyp unter WPML → Einstellungen → Beitragstypen-Übersetzung so eingestellt ist, dass er auf die Standardsprache zurückgreift. Das ist eine Einstellung auf WPML-Ebene, kein Fehler. Wenn Sie diesen Fallback nicht beabsichtigt haben, ändern Sie die Einstellung.

Öffnen Sie einen übersetzten Beitrag im Frontend. Das Widget Related Posts sollte nur andere Beiträge in derselben Sprache auflisten.

  • Bestanden. Jeder ähnliche Beitrag verlinkt auf Inhalte in derselben Sprache wie die aktuelle Seite.
  • Fehlgeschlagen. Ähnliche Beiträge aus anderen Sprachen erscheinen. Bestätigen Sie, dass die Funktion Related Posts unter ElasticPress → Features aktiviert ist und dass die Synchronisierung des Sprachindex für die aktuelle Sprache abgeschlossen ist.

Wenn die Funktion Documents in ElasticPress aktiviert ist: Laden Sie ein übersetztes PDF in die ausgangssprachliche Version eines Beitrags hoch und laden Sie dann ein anderssprachiges PDF in dessen Übersetzung hoch. Suchen Sie nach einer Phrase, die nur im übersetzten PDF vorkommt.

  • Bestanden. Die Suche aus dem Frontend der passenden Sprache liefert das richtige PDF; die Suche in der Ausgangssprache liefert nicht das übersetzte PDF und umgekehrt.
  • Fehlgeschlagen. PDFs aus anderen Sprachen erscheinen in den Ergebnissen. Synchronisieren Sie nach der Aktivierung von Documents erneut. Der Befehl wp wpml_elasticpress sync --setup baut jeden Index mit Dokumentenindizierung neu auf.

5. Backend-Suchen (Begriffe, Kommentare, Benutzer) filtern nach Sprache

Wenn Sie die Funktionen Terms, Comments oder Users unter ElasticPress → Features aktiviert haben, durchsuchen Sie diese im WordPress-Admin-Bereich und bestätigen Sie, dass die Ergebnisse nach der aktuellen Admin-Sprache gefiltert werden. Dies betrifft Benutzer, die das Backend einer mehrsprachigen Website durchsuchen.

6. Multisite-Synchronisierung löscht keine Indizes von Geschwister-Websites

Wenn Sie WPML und ElasticPress in einem Multisite-Netzwerk ausführen, führen Sie eine Index-Synchronisierung auf einer Website aus und überprüfen Sie dann die anderen Websites im Netzwerk. Deren Indizes sollten weiterhin intakt sein.

  • Bestanden. Das Indizieren einer Website lässt die Indizes der Geschwister-Websites unberührt.
  • Fehlgeschlagen. Geschwister-Indizes sind leer. Stoppen Sie, führen Sie die Synchronisierungen auf den betroffenen Websites erneut aus und melden Sie das Problem dem WPML-Support, damit dieser bestätigen kann, ob Sie auf ein historisches Multisite-Problem oder ein neues stoßen.

Wenn jede der obigen Prüfungen bestanden wird, funktioniert Ihre mehrsprachige Suche wie vorgesehen.

Unterstützte ElasticPress-Funktionen

WPML ElasticPress macht derzeit die folgenden ElasticPress-Funktionen sprachbewusst:

  • Post Search. Frontend-Suche über Beiträge, Seiten und benutzerdefinierte Beitragstypen hinweg.
  • Related Posts. Das Widget für ähnliche Beiträge filtert nach Treffern in derselben Sprache.
  • Documents. Suche innerhalb von angehängten PDFs, .docx, .pptx und anderen Dateitypen.
  • Terms, Comments und Users. Backend-Suchen.

Die WooCommerce-spezifischen Suchfunktionen von ElasticPress (Produkterkennung, facettierte Produktfilterung, sofortige Produktsuche über Kataloge hinweg) sind derzeit nicht mehrsprachig. Die mehrsprachige Abdeckung für die WooCommerce-Suche steht auf der WPML-Roadmap; bis sie verfügbar ist, läuft die WooCommerce-Suche auf mehrsprachigen Websites über die Standardbehandlung von WooCommerce Multilingual von WPML und nicht über ElasticPress.

Häufige Fallstricke

  • Synchronisierung wurde nach Aktivierung einer neuen ElasticPress-Funktion nicht ausgeführt. Die Aktivierung von Documents oder Related Posts unter ElasticPress → Features fügt diese Dokumente dem Index nicht rückwirkend hinzu. Synchronisieren Sie nach dem Umschalten von Funktionen erneut.
  • WP-CLI-Synchronisierung ohne --setup nach einer größeren Änderung. Wenn Sie geändert haben, welche Beitragstypen übersetzbar sind, welche Funktionen aktiviert sind, oder WPML ElasticPress über eine Hauptversionsgrenze hinweg aktualisiert haben, führen Sie wp wpml_elasticpress sync --setup aus, um jeden Index von Grund auf neu aufzubauen.
  • Suchergebnis-Template des Themes umgeht die Filter von ElasticPress. Einige benutzerdefinierte Themes implementieren ihre eigene Suchergebnisabfrage, die nicht über ElasticPress läuft. Wenn die Ergebnisse nur im Frontend falsch aussehen (und die Admin-Prüfungen bestehen), muss das Theme-Template möglicherweise aktualisiert werden.
  • WooCommerce-Produktsuche liefert gemischtsprachige Ergebnisse. Dies ist kein Synchronisierungsproblem. Es handelt sich um die oben erwähnte Abdeckungslücke bei WooCommerce. Leiten Sie die Produktsuche vorerst über die Standardbehandlung von WooCommerce Multilingual.
  • Text aus Dokumenten erscheint nicht in der Suche. Bestätigen Sie, dass die Funktion Documents unter ElasticPress → Features aktiviert ist und dass seit der Aktivierung eine Synchronisierung ausgeführt wurde.

Verfasst von Amir · Zuletzt aktualisiert am 2. Juli 2026

Geschrieben von Amir · Zuletzt aktualisiert am 2. Juli 2026