Im JavaScript-Modus erledigt ein Skript-Tag im <head> Ihrer Website die gesamte Arbeit: Es rendert die Sprachumschaltung, wählt für jeden Besucher eine Sprache aus und tauscht den Text Ihrer Seite im Browser gegen seine Übersetzung aus. Ihre URLs ändern sich nie, sodass example.com/about in jeder Sprache dieselbe Adresse ist und kein DNS eingerichtet werden muss. Der Nachteil ist, dass Suchmaschinen nur Ihre Quellsprache sehen.
Der JavaScript-Modus ist der einzige Modus für Webflow-, Framer-, Squarespace-, Duda-, Tilda-, Weebly- und Lovable-Projekte und eine von zwei Optionen für Projekte vom Typ Beliebige Website.
Was übersetzt wird
Universally extrahiert Strings von Ihrer Seite mit denselben Parsern, die es für die serverseitige Übersetzung verwendet:
- Text auf der Seite.
- Der
<title>- und Meta-Inhalt. - Die Attribute
placeholder,aria-label,alt,titleundvalue.
Gespeicherte Übersetzungen, Wortzählung und Glossarregeln funktionieren wie in jedem anderen Modus. Das Skript setzt auch <html lang> und dir für die gewählte Sprache.
Was nicht übersetzt wird
- Suchmaschinen sehen keine Übersetzungen. Übersetzungen existieren nur im Browser, und Crawler erhalten Ihren Quell-HTML. Es werden keine hreflang-Links hinzugefügt.
- Nur öffentliche Seiten werden übersetzt. Universally ruft jede Seite selbst ab, ohne die Besuchersitzung, sodass eine Seite hinter einem Login oder Passwort ihren Quelltext anzeigt.
- Text, den JavaScript nach dem Laden der Seite hinzufügt, wird nicht übersetzt, wenn er nicht im HTML enthalten ist, das Ihr Server sendet. Das Skript wendet Übersetzungen für neue Inhalte für einige Sekunden nach dem Laden und bei Single-Page-App-Navigationen erneut an, aber nur für Strings, die es bereits hat.
- JSON-LD wird nicht übersetzt.
- Query-Strings werden ignoriert.
?a=1und?a=2teilen sich einen Satz von Übersetzungen. - Etwa 2.000 Strings pro Seite ist die Obergrenze. Strings darüber hinaus bleiben in der Quellsprache.
- Nur CSS-Selektorregeln gelten. Unter Übersetzungsregeln funktioniert CSS-Selektoren ausschließen. Seiten ausschließen und Link-Lokalisierung ausschließen haben im JavaScript-Modus keine Auswirkung, ebenso wenig wie CSS-Selektoren einschließen. Siehe CSS-Selektoren einschließen und ausschließen.
- Der Umschalter hat keine Designeinstellungen. Er befindet sich in der unteren rechten Ecke mit Flaggen und Sprachnamen (oben rechts auf Framer und Lovable).
Wenn die Prepaid-Wörter des Projekts aufgebraucht sind, bleiben neue Strings in der Quellsprache und bereits übersetzte Strings werden weiterhin angezeigt. Siehe Nutzungsbeschränkungen.
So funktioniert's
- Das Skript wird geladen. Die Datei
s.jswird mit einem 15-minütigen Cache ausgeliefert. Solange das Projekt inaktiv ist oder keine Live-Zielsprache hat, liefert es nichts aus, weshalb sich Ihre Website erst ändert, wenn Sie eine Sprache hinzufügen. - Eine Sprache wird gewählt. Ein Erstbesucher wird automatisch seiner Browsersprache zugeordnet. Die Wahl wird 30 Tage lang in einem Cookie namens
universally_langgespeichert. Die Wahl einer Sprache im Umschalter setzt den Cookie und lädt die Seite neu. Der Schalter Umleitung nach Browsersprache in den Allgemeinen Einstellungen hat in diesem Modus keine Auswirkung: Die automatische Zuordnung erfolgt unabhängig davon. - Der Browser sendet die Seiten-URL. Nur die URL und die Sprache gehen an Universally, niemals der Seiteninhalt.
- Universally ruft die Seite selbst ab. Es fordert die URL von Ihrer veröffentlichten Website anonym an, ohne Besucher-Cookies und ohne Login, extrahiert die Zeichenketten, übersetzt sie und gibt sie zurück.
- Der Browser tauscht jede Zeichenkette an Ort und Stelle aus. Nichts wird neu geladen und die Adresse bleibt gleich.
Übersetzungen für eine Seite werden auf der Serverseite von Universally 24 Stunden lang zwischengespeichert und im Browser-Speicher des Besuchers aufbewahrt, sodass eine wiederholte Ansicht ohne Flimmern erfolgt. Bearbeitungen auf dem Bildschirm Übersetzungen werden angezeigt, sobald dieser 24-Stunden-Cache abgelaufen ist, oder sofort, nachdem Sie in den Allgemeinen Einstellungen auf Übersetzer-Cache löschen klicken, was beides löscht. Siehe Übersetzungen manuell bearbeiten.
Um zu sehen, wie viel einer Seite übersetzt wurde, fügen Sie ?uni_debug=1 zur URL hinzu und öffnen Sie die Browserkonsole.
Wann man stattdessen Subdomains wählen sollte
Wenn Sie jede Sprache auf einer eigenen Adresse haben möchten, kann ein Beliebige Website-Projekt von seiner Einrichtung-Seite zu Sprach-Subdomains wechseln. Ein Zurückwechseln ist noch nicht möglich. Siehe Sprach-Subdomains.