Universally Dokumentation

Schritt-für-Schritt-Anleitungen, mehrsprachige SEO-Tipps und Best Practices, die Ihnen helfen, Ihre WordPress-Website zu übersetzen und zu skalieren.

Übersetzungsaktualisierungen in Astro

Eine neue Zeichenkette wird im Hintergrund übersetzt, nachdem die erste Seite, die sie verwendet, aufgerufen wurde. Eine Dashboard-Bearbeitung erreicht Ihren laufenden Server über einen signierten Push oder durch eine Überprüfung alle 60 Sekunden pro Sprache. Eine statische Website übernimmt beides erst, wenn Sie neu erstellen.

Neue Zeichenketten

  1. Eine Seite ruft t() mit Text auf, für den keine Übersetzung vorhanden ist. Der Besucher erhält den Quelltext.
  2. Nach der Antwort meldet die Integration die verpassten Zeichenketten in Blöcken von 500 an Universally. Auf Laufzeiten, die waitUntil anbieten, wird der Bericht nach dem Senden der Antwort abgeschlossen.
  3. Universally gibt die Übersetzungen zurück, die es bereits hat, und übersetzt den Rest im Hintergrund.
  4. Die neuen Übersetzungen erreichen Ihren Server mit einem späteren Bericht (eine verpasste Zeichenkette wird beim nächsten Rendern erneut gemeldet) oder wenn diese Sprache neu geladen wird.

In der Praxis wird eine neue Zeichenkette ein bis zwei Sekunden nach ihrem ersten Rendern übersetzt. Berichte werden nicht während Builds gesendet.

Dashboard-Bearbeitungen

Maschinelle Übersetzungen ändern nicht die Cache-Epoche einer Sprache. Dashboard-Bearbeitungen schon, und zwei Mechanismen transportieren sie zu Ihrem Server.

Push. Universally sendet einen signierten POST an https://{Ihre Projekt-Domain}/_universally/revalidate, wenn Sie:

  • eine Zeichenkette bearbeiten, verifizieren oder nicht verifizieren oder löschen
  • eine Revision wiederherstellen oder neu übersetzen
  • in großen Mengen verifizieren oder löschen
  • eine Quellzeichenkette löschen
  • den Cache leeren

Die Integration beantwortet die Anfrage vor dem Astro-Routing, sodass Sie keine Seite oder Route hinzufügen. Der Push läuft nach 3 Sekunden ab und Fehler werden nur protokolliert. Für sofortige Bearbeitungen muss der Endpunkt aus dem Internet erreichbar sein. Pushes werden nur im SDK-Modus gesendet.

Polling. Nach einer lokalisierten Antwort prüft die Integration, ob sich die Cache-Epoche einer Sprache geändert hat, höchstens einmal pro revalidateSeconds (standardmäßig 60) pro Sprache. Die Prüfung fragt eine einzelne Zeile ab. Bei einer Änderung wird diese Sprache neu geladen und universally: N Übersetzungen für X bei Cache-Epoche E neu geladen protokolliert. Wenn Sie revalidateSeconds auf 0 setzen, wird das Polling deaktiviert, und der Server behält seine Übersetzungen, bis ein Push eintrifft oder er neu gestartet wird. Siehe Astro-Integrationsoptionen.

Bearbeitungen, die Sie auf dem Bildschirm Übersetzungen vornehmen, werden auf diese Weise übertragen. Siehe Übersetzungen manuell bearbeiten.

Wann Übersetzungen geladen werden

Ereignis Was geladen wird
Entwickler-Serverstart Jeder Katalog der Sprache
Build-Start Jeder Katalog der Sprache
Erste lokalisierte Anfrage auf einem Server, der weder ausgeführt wurde (z. B. der erstellte Node-Server) Jeder Katalog der Sprache. Diese Anfrage wartet darauf.
Push oder geänderte Cache-Epoche Die Sprachen, die sich geändert haben

Wenn eine Sprache nicht geladen werden kann, zeigt das Protokoll universally: could not preload ... an. Diese Sprache wird erst wieder versucht oder abgefragt, wenn der Prozess neu gestartet wird. Beheben Sie daher die Ursache und starten Sie neu.

Sprachen

Die Liste der Sprachen wird einmal gelesen, wenn Ihre Astro-Konfiguration ausgeführt wird. Das Hinzufügen einer Sprache oder das Aktivieren ihres Live-Schalters sendet keinen Push. Starten Sie daher den Entwicklungsserver neu oder bauen Sie neu, bevor das neue Präfix funktioniert.

Statische Websites

Ein statischer Build hat nach dem Build keinen Servercode: kein Polling und kein Push-Endpunkt. Dashboard-Bearbeitungen erscheinen erst, nachdem Sie neu gebaut und neu bereitgestellt haben. Der Build selbst sendet alles, was er verpasst hat, in einem blockierenden Aufruf und gibt dann N new strings translated. Rebuild to include them. aus. Ein zweiter Build fügt diese Strings dann in das HTML ein.

Mehrere Serverinstanzen

Jede Instanz hält ihren eigenen Katalog im Speicher. Ein Push erreicht die Instanz, die ihn beantwortet, und die anderen holen durch Abfragen auf. Halten Sie revalidateSeconds auf einer Verzögerung, mit der Sie zufrieden sind.

Wenn das Wortlimit erreicht ist

Sobald die vorausbezahlten Wörter des Projekts aufgebraucht sind, gibt Universally nur Strings zurück, die es bereits enthält. Die Integration protokolliert universally: word limit reached, {variant} keeps serving source text einmal pro Sprache. Übersetzte Strings werden weiterhin bereitgestellt. Nachdem Sie Wörter hinzugefügt haben, werden fehlende Strings bei ihrer nächsten Wiedergabe erneut gemeldet. Siehe Nutzungsbeschränkungen.

War das hilfreich?