Diese Anleitung erklärt, wie Sie die Discourse-Einstellungen anpassen können, um chinesische, japanische und koreanische (CJK) Sprachen in der Seitensuche besser zu unterstützen.
Erforderliches Benutzerniveau: Administrator
Die Standardeinstellungen von Discourse sind möglicherweise nicht optimal für CJK-Sprachen (Chinesisch, Japanisch, Koreanisch). Discourse passt jedoch inzwischen viele dieser Einstellungen automatisch an, wenn das Gebietsschema Ihrer Seite auf eine CJK-Sprache (Japanisch, vereinfachtes Chinesisch oder traditionelles Chinesisch) eingestellt ist. Diese Anleitung erklärt, was automatisch konfiguriert wird und was Sie möglicherweise noch manuell anpassen müssen.
Automatische Gebietsschema-Standardwerte
Wenn das Standardgebietsschema Ihrer Seite auf ja, zh_CN oder zh_TW eingestellt ist, werden die folgenden Einstellungen automatisch angepasst:
| Einstellung | Standardwert | CJK-Gebietsschema-Standardwert |
|---|---|---|
min_search_term_length |
3 | 1 (gilt auch für ko) |
min_post_length |
20 | 8 |
min_first_post_length |
20 | 8 |
min_personal_message_post_length |
10 | 3 |
body_min_entropy |
7 | 3 |
min_topic_title_length |
15 | 6 |
title_min_entropy |
10 | 3 |
min_title_similar_length |
10 | 4 |
allow_uppercase_posts |
false | true (ja nur) |
title_prettify |
true | false |
Wenn Ihre Seite eines dieser Gebietsschemata verwendet, müssen Sie diese Einstellungen im Allgemeinen nicht ändern – sie sind bereits für CJK optimiert.
Manuelle Anpassungen
Koreanisches Gebietsschema
Das koreanische Gebietsschema (ko) erhält nur einen automatischen Standardwert für die Gebietsschema-Einstellung min_search_term_length. Wenn Ihre Seite das koreanische Gebietsschema verwendet, sollten Sie die anderen oben aufgeführten Einstellungen auf ähnliche Werte anpassen.
Mehrsprachige Websites oder Websites mit Nicht-CJK-Gebietsschema mit CJK-Inhalt
Wenn das Standardgebietsschema Ihrer Seite keine CJK-Sprache ist, Sie aber viele Benutzer haben, die CJK sprechen, müssen Sie diese Einstellungen manuell anpassen:
- Setzen Sie
min_search_term_lengthauf 1 oder 2 – CJK-Schlüsselwörter können nur ein oder zwei Zeichen lang sein - Setzen Sie
min_post_lengthauf ungefähr 8 - Setzen Sie
body_min_entropyauf etwa 3 – Wiederholungen sind in CJK-Sprachen üblich und bedeutsam, daher kann eine zu hohe Einstellung zu Fehlermeldungen wegen „nicht aussagekräftiger Beiträge“ führen - Setzen Sie
min_topic_title_lengthauf ungefähr 6 - Setzen Sie
title_min_entropyauf etwa 3 - Setzen Sie
min_title_similar_lengthauf ungefähr 4 - Aktivieren Sie
allow_uppercase_posts– Discourse erkennt CJK-Zeichen möglicherweise nicht, wenn es Themenüberschriften auf Groß-/Kleinschreibung analysiert, was zu Fehlern führen kann - Deaktivieren Sie
title_prettify– Die Regeln zur Verschönerung von Titeln sind für lateinische Schriften konzipiert und funktionieren möglicherweise nicht gut mit CJK-Text
Suche-Tokenisierung
Für eine verbesserte Suchgenauigkeit bietet Discourse optionale, CJK-spezifische Tokenisierungs-Einstellungen:
search_tokenize_chinese– ermöglicht die Segmentierung von chinesischem Text für bessere Suchergebnissesearch_tokenize_japanese– ermöglicht die Segmentierung von japanischem Text für bessere Suchergebnisse
Diese sind standardmäßig deaktiviert und können in den Admin-Sucheinstellungen aktiviert werden.
Beheben von Suchproblemen
Wenn Sie nach diesen Änderungen Probleme mit der Suchfunktion feststellen, müssen Sie möglicherweise Ihre Datenbank neu indizieren. So gehen Sie vor:
- Wechseln Sie in das Verzeichnis Ihrer Discourse Docker-Installation.
- Führen Sie den folgenden Befehl aus, um auf den App-Container zuzugreifen:
./launcher enter app - Sobald Sie sich im Container befinden, führen Sie den Befehl zum Neuindizieren aus:
rake search:reindex
Nach der Neuindizierung sollten Sie Inhalte effektiv durchsuchen können.