Deutsch
Über dieses Handbuch

Dieses Handbuch gehört zum Quartz-Plugin quartz-multilanguage. Und es ist mit ihm gebaut: Der Umschalter oben rechts kommt von dort.

Auch diese Box steht zweimal in der Konfiguration — einmal je Sprache.

9.2 – Explorer und Quartz

Den Explorer filtern

Ohne Zutun zeigt der Explorer beide Sprachbäume. Wer je Sprache nur einen will, braucht eine Filterfunktion — und die nimmt das Explorer-Plugin nur über quartz.ts entgegen, nicht über die quartz.config.yaml.

// quartz.ts
import { languageExplorerFilter } from "./.quartz/plugins/quartz-multilanguage";
 
Explorer({ filterFn: languageExplorerFilter("de", { languages: ["de", "en"] }) });

Warum das nicht in der Konfiguration geht

YAML kann keine Funktion enthalten. Alles, was Quartz als Funktion entgegennimmt, muss durch quartz.ts — das ist eine Eigenschaft von Quartz, keine Entscheidung dieses Plugins.

Wo die Grenze verläuft

Das PluginQuartz
erkennt die Sprache je Seiterendert <html lang> daraus
verknüpft Übersetzungenweiß nichts davon
rendert den Umschalterstellt die Stelle im Layout bereit
schreibt hreflang und og:localeschreibt den übrigen Kopf
filtert Sprachen aus dem Baubaut, was übrig bleibt
—übersetzt seine eigenen Oberflächentexte nach locale

Die letzte Zeile ist die, an der die meisten Fragen hängen: Was Quartz selbst an Wörtern beisteuert, folgt dem site-weiten locale und nicht der Seitensprache. Das ist keine Lücke im Plugin, sondern die Stelle, an der seine Zuständigkeit endet — der Ausweg ist ein Bau je Sprache (8.2).

Was jede Seite mitbringt

fileData.multilanguage = { lang, baseSlug, source, translationKey, translations }

Wer eigene Komponenten schreibt, findet dort alles, was das Plugin über eine Seite weiß.