Zum Inhalt

Systemeinstellungen

BabelTranslate enthält einige Systemeinstellungen im babeltranslate-Namensraum.

Diese sind in den MODX Systemeinstellungen verfügbar.

Key Name Description Default
babeltranslate.debug Debug Debug-Informationen im MODX Fehlerprotokoll ausgeben. Nein
babeltranslate.deepl_auth_key DeepL-API-Authentifizierungsschlüssel Der DeepL-Authentifizierungsschlüssel für den Zugriff auf das DeepL-API. -
babeltranslate.deepl_text_translation_options DeepL Textübersetzungsoptionen [Seit 1.2.3] JSON-kodiertes Objekt der DeepL Textübersetzungsoptionen. Die Optionen können in den DeepL API Docs gefunden werden. @FILE oder @CHUNK Bindungen können verwendet werden. -
babeltranslate.openai_api_url OpenAI API Url [Seit 1.5.0] Die Url des OpenAI-kompatiblen Dienstes -
babeltranslate.openai_auth_key OpenAI API Authentifizierungsschlüssel [Seit 1.5.0] Der OpenAI Authentifizierungsschlüssel für den Zugriff auf das OpenAI-API. -
babeltranslate.openai_metadata OpenAI Chat Metadata [Seit 1.5.0] Sammlung von 16 Schlüssel-Wert-Paaren, die an ein Objekt angehängt werden können. Dies kann nützlich sein, um zusätzliche Informationen über das Objekt in einem strukturierten Format zu speichern und Objekte über API oder das Dashboard abzufragen. -
babeltranslate.openai_model OpenAI-Modell [Seit 1.5.0] Modell-ID, die zur Generierung der Antwort verwendet wird, wie gpt-4o oder o1. OpenAI bietet eine breite Palette von Modellen mit unterschiedlichen Fähigkeiten, Leistungsmerkmalen und Preispunkten an. -
babeltranslate.openai_store Store Response [Seit 1.7.0] Die generierte Antwort des Modells für den späteren Abruf über API speichern. Muss auch in OpenAI aktiviert werden. No
babeltranslate.openai_temperature Zu verwendende Temperatur [Seit 1.5.0] Welche Sampling-Temperatur verwendet werden soll, zwischen 0 und 2. Höhere Werte wie 0,8 machen das Ergebnis zufälliger, während niedrigere Werte wie 0,2 es fokussierter und deterministischer machen. -
babeltranslate.openai_text_translation_options Textübersetzungsanweisungen [Seit 1.5.0] Die Anweisungen an das Modell, wie es an die Übersetzungsaufgabe herangehen soll. Kann verwendet werden, um Anweisungen zur Formalität, zum Tonfall oder zum bestimmten Vokabular zu geben. @FILE oder @CHUNK Bindungen können verwendet werden. -
babeltranslate.reverso_api_url Reverso API Url [Seit 1.3.0] Die API Url für den Zugriff auf das Reverso-API -
babeltranslate.reverso_password Reverso Passwort [Seit 1.3.0] Das Passwort für den Zugriff auf das Reverso-API. -
babeltranslate.reverso_text_translation_options Reverso Textübersetzungsoptionen [Seit 1.3.0] JSON kodiertes Objekt der Reverso Textübersetzungsoptionen. @FILE oder @CHUNK Bindungen können verwendet werden. -
babeltranslate.reverso_username Reverso Benutzername [Seit 1.3.0] Der Benutzername für den Zugriff auf das Reverso-API. -
babeltranslate.timelimit Time Limit [Seit 1.7.0] Die Anzahl der Sekunden, die eine Übersetzung dauern darf. Auf gemeinsam genutzten Hosts kann der Wert normalerweise nicht mehr als 30 Sekunden betragen. 30
babeltranslate.translate_duplicate Babel-Duplikat übersetzen Die duplizierte Babel-Ressource direkt übersetzen. Nein
babeltranslate.translate_resource_cb_fields ContentBlocks Felder übersetzen JSON-kodiertes Objekt von ContentBlocks-Feldern, die übersetzt werden sollen. Jeder Datensatz enthält die ContentBlocks-Feld-ID als Schlüssel, der Wert enthält mehrere Optionen: type ist optional (er wird ansonsten durch den ContentBlocks-Feldtyp festgelegt) und kann mit text, single, grid oder repeater gefüllt werden. nested ist optional (es wird ansonsten durch den ContentBlocks-Feldtyp festgelegt) und kann den Schlüssel der verschachtelten Werte im ContentBlocks-Wert enthalten. fields ist optional (es enthält standardmäßig ["value"]) und kann mit einem Array von Feldnamen gefüllt werden, die übersetzt werden. @FILE oder @CHUNK Bindungen können verwendet werden. -
babeltranslate.translate_resource_cb_layouts ContentBlocks Layout-Einstellungen übersetzen [Seit 1.6.0] JSON-kodiertes Objekt von ContentBlocks-Layout-Einstellungen, die übersetzt werden sollen. Jeder Datensatz enthält die ContentBlocks-Layout-ID als Schlüssel, der Wert enthält derzeit eine Option: settings kann mit einem Array von Einstellungs-Namen gefüllt werden, die übersetzt werden sollen. Wenn settings einen String mit dem Wert * enthält, werden alle Einstellungen übersetzt. @FILE oder @CHUNK Bindungen können verwendet werden. -
babeltranslate.translate_resource_fields Felder übersetzen Kommagetrennte Liste von Ressourcenfeldern, die übersetzt werden. @FILE oder @CHUNK Bindungen können verwendet werden. pagetitle, longtitle, content, alias
babeltranslate.translate_resource_tvs Template Variablen übersetzen JSON-kodiertes Objekt von Template Variablen, die übersetzt werden sollen. Jeder Datensatz enthält den Namen der Template Variable als Schlüssel, der Wert enthält mehrere Optionen: type ist optional (er wird ansonsten durch den Typ der Vorlagevariable festgelegt) und kann mit text, single, grid oder custom gefüllt werden. fields ist optional (der Standardwert ist ["value"]) und kann mit einem Array von Feldnamen gefüllt werden, die übersetzt werden sollen. @FILE oder @CHUNK Bindungen können verwendet werden. -
babeltranslate.translator Übersetzungsdienst Der Hauptübersetzungsdienst. Standardmäßig wird der erste verfügbare Übersetzungsdienst in der babeltranslate.translators Systemeinstellung verwendet. deepl
babeltranslate.translators Übersetzungsdienste [Seit 1.3.1] Kommagetrennte Liste der Übersetzungsdienste (deepl, reverso und openai sind derzeit möglich). Es wird der erste verfügbare Übersetzungsdienst für jede Sprache verwendet. deepl

Beispiele für die Einstellungen babeltranslate.translate_resource_cb_fields und babeltranslate.translate_resource_tvs finden Sie auf der Seite Beispiele.

Die Einstellungen babeltranslate.translate_resource_fields, babeltranslate.translate_resource_tvs und babeltranslate.translate_resource_cb_fields können @FILE oder @CHUNK Bindungen verwenden. Pfad-Platzhalter wie {core_path}, {base_path} und {assets_path} können verwendet werden. Alle Pfade müssen sich aus Sicherheitsgründen innerhalb des MODX-Basispfades befinden.

Einrichtung von OpenAI

Die folgenden Schritte müssen durchgeführt werden, um OpenAI als Übersetzungsdienst zu verwenden:

  1. Erstellen Sie ein Konto bei https://platform.openai.com/.
  2. Richten Sie die Rechnungsstellung ein unter https://platform.openai.com/settings/organization/billing/overview.
  3. Erstellen Sie einen API-Schlüssel mit allen Berechtigungen unter https://platform.openai.com/settings/organization/api-keys.
  4. Kopieren Sie den API-Schlüssel und bewahren Sie ihn irgendwo auf. Sie können ihn nur einmal kopieren.
  5. Gehen Sie in MODX zu den Systemeinstellungen und filtern Sie den Namensraum auf: babeltranslate.
  6. Setzen Sie die babeltranslate.openai_auth_key Systemeinstellung auf den API-Schlüssel, den Sie gerade kopiert haben.
  7. Optional können Sie die Systemeinstellung babeltranslate.openai_api_url ändern. Der Standardwert ist https://api.openai.com/v1/.
  8. Optional können Sie die Systemeinstellung babeltranslate.openai_model ändern. Der Standardwert ist gpt-4.1-mini.
  9. Optional können Sie die Systemeinstellung babeltranslate.temperature ändern. Der Standardwert ist 0.2.
  10. Optional können Sie die Systemeinstellung babeltranslate.metadata ändern. Der Standardwert ist {}.
  11. Optional können Sie die Systemeinstellung babeltranslate.store ändern. Der Standardwert ist false.
  12. Optional können Sie die Systemeinstellung babeltranslate.text_translation_options ändern. Standardmäßig wird ein leerer Wert verwendet.

Custom template variable Übersetzungs Typ

Der custom Typ von babeltranslate.translate_resource_tvs wird durch ein Plugin in OnBabelTranslateCustomTV bearbeitet. Es existiert ein deaktiviertes Skeleton-Plugin in der Kategorie BabelTranslate. Duplizieren und bearbeiten Sie dieses Plugin und fügen Sie Ihre eigenen Übersetzungs-Routinen hinzuzu.

Das Plugin kann die folgenden Event-Eigenschaften verwenden:

Eigenschaft Inhalt
translator Die Übersetzerklasse. Das Übersetzen eines Strings erfolgt durch $translator->translate($string, $fromCulture, $toCulture).
resource Die aktuelle übersetzte Ressource.
tvname Der Name der übersetzten Template-Variable.
value Der Wert der übersetzten Template-Variable.
fromCulture Die Kultur, aus der der Wert übersetzt wird.
toCulture Die Kultur, in die der Wert übersetzt wird.