Wie das Widget seine Sprache und seinen Skin auflöst
Das Widget, das du einbettest, hat zwei Schichten: die Hülle (die Caputchin-Chrome, ihre Checkbox oder ihr Markenstreifen, ihr Wortlaut und ihre Farben) und, wenn du ein Spiel nutzt, das Spiel darin. Jede hat eine Sprache und einen Skin, und das Widget löst beide auf dem Server auf, wenn es lädt. Diese Seite erklärt, wie sich die Hülle auflöst und wie sie sich mit dem Spiel deckt, sodass die zwei nie kollidieren.
Zum Anpassen der eigenen Sprache, des Skins und der Konfiguration eines Spiels sieh dir Spiel-Anpassung an. Diese Seite handelt von der Hülle.
Was die Hülle ausliefert
Die Hülle ist vollständig in sich geschlossen. Sie bündelt ihre Interface-Strings in jeder offiziellen Sprache und sowohl eine helle als auch eine dunkle Palette, sodass sie immer etwas Korrektes zu rendern hat, auch ohne Anpassung und ohne Netzwerk. Diese mitgelieferten Strings, Farben oder Links zu ersetzen ist White-Labeling, eine Funktion der Apex-Stufe; die Auflösung unten ist dieselbe, ob du Overrides hast oder nicht.
Wie die Hülle eine Sprache wählt
Wenn das Widget lädt, entscheidet es, welche Sprache es vom Server anfragt, in dieser Reihenfolge:
- Das
locale-Attribut des Widgets, wenn die Seite eines gesetzt hat (eine explizite Wahl). - Sonst die Browser-Sprache des Besuchers.
Der Server löst das dann gegen die Sprachen der Hülle auf (deine Overrides zuerst, dann der mitgelieferte Satz): ein exakter Match, dann die Basissprache, dann der Standard der Hülle, dann ihre erste Sprache. So rendert die Hülle immer echten Wortlaut.
Wie die Hülle einen Skin wählt
Dieselbe Form für den Skin:
- Das
skin-Attribut des Widgets, wenn die Seite eines gesetzt hat:light,darkoder ein Preset-Name. - Sonst die Systempräferenz des Besuchers (
prefers-color-scheme).
Der Server löst das zu einer konkreten hellen oder dunklen Palette auf (deine Overrides zuerst, dann mitgeliefert). Jedes Preset deklariert den Modus, in dem es funktioniert; ein Preset, dessen Modus any ist, liest sich auf beiden Hintergründen und ist so für beide berechtigt. Die Hülle liefert von Haus aus eine helle und eine dunkle Palette, und der aufgelöste Skin meldet immer einen konkreten hellen oder dunklen Modus, was die Chrome rendert.
Wie die Hülle dem Spiel folgt
Hier ist der Teil, der es zusammenbindet. Wenn ein Spiel gemountet ist, löst die Hülle ihre Sprache und ihren Skin nicht direkt aus dem Besucher-Signal auf. Stattdessen folgt sie dem Spiel: das Widget löst zuerst das Spiel auf, dann nutzt es die aufgelöste Sprache und den hellen oder dunklen Modus des Spiels als Eingabe der Hülle.
Wenn also der Browser eines Besuchers Französisch ist und das Spiel sich zu Französisch auflöst, rendert die umgebende Chrome ebenfalls auf Französisch. Löst sich das Spiel zu seinem dunklen Skin auf, wird die Chrome dunkel, um zu passen. Die Hülle fällt nur dann auf die eigene Sprache und Systempräferenz des Besuchers zurück, wenn kein Spiel gemountet ist (das schlichte Checkbox-Widget) oder wenn das Spiel keine eigene Sprache oder keinen eigenen Skin aufgelöst hat.
Das Ergebnis ist, dass das Spiel und die Chrome darum herum immer übereinstimmen, ohne dass du die Hülle und das Spiel separat aufeinander abstimmst.
Konfiguration
Die Hülle hat auch eine kleine Konfiguration: die Link-Ziele in ihrem Markenstreifen (der Home-Link und der Rechtslink). Anders als Sprache und Skin hat das keine Besucher-Eingabe; der Server löst es aus deinen Overrides oder den mitgelieferten Standards auf. Diese Links zu ändern ist Teil des White-Labelings.
Siehe auch
- Das Widget per White-Label anpassen: Wortlaut, Farben und Links der Hülle ersetzen.
- Das Widget mit CSS stylen: die Parts der Hülle aus deinem eigenen Stylesheet anvisieren.
- Spiel-Anpassung: die eigene Sprache, der Skin und die Konfiguration des Spiels.