JPKCom Simple Lang — Anleitung & Tipps

Einzelne WordPress-Seiten mit JPKCom Simple Lang pro Beitrag in anderer Sprache anzeigen — Installation, Sprachauswahl, Hreflang und Oxygen-Bedingungen.

JPKCom Simple Lang ist eine leichtgewichtige Lösung, um einzelne Seiten oder Beiträge in einer anderen Sprache als deiner Site-Standardsprache auszugeben. Statt eines vollwertigen Mehrsprachigkeits-Plugins erledigt es genau eine Aufgabe: die WordPress-Locale pro Beitrag im Frontend zu überschreiben — inklusive <html lang="">-Attribut, Hreflang-Tags und Oxygen-Builder-Bedingungen.

Anleitung

Voraussetzungen

  • WordPress 6.9 oder neuer
  • PHP 8.3 oder neuer (mit Strict Typing)
  • Mindestens ein zusätzliches Sprachpaket installiert (optional, aber empfohlen)
  • Multisite wird unterstützt (das Plugin ist netzwerkfähig)

Installation

  1. Lade die aktuelle Release-ZIP von der GitHub-Releases-Seite herunter.
  2. Im Admin-Bereich: Plugins → Installieren → Plugin hochladen, ZIP wählen, Jetzt installieren, dann Aktivieren.

Alternativ per FTP den Ordner jpkcom-simple-lang nach /wp-content/plugins/ hochladen oder für die Entwicklung direkt klonen:

cd /pfad/zu/wordpress/wp-content/plugins/
git clone https://github.com/JPKCom/jpkcom-simple-lang.git

Sprachpakete installieren

Das Auswahl-Dropdown zeigt nur installierte Sprachen. Neue Sprachen fügst du so hinzu:

  1. Gehe zu Einstellungen → Allgemein und öffne das Sprache der Website-Dropdown.
  2. Wähle die gewünschte Sprache (z. B. „Deutsch", „Français") und klicke auf Änderungen speichern — WordPress lädt das Sprachpaket automatisch herunter (5–10 Sekunden).
  3. Optional kannst du die Standardsprache anschließend wieder zurückstellen; das installierte Paket bleibt verfügbar.

Eine Übersicht aller über 200 Sprachen findest du auf translate.wordpress.org.

Verwendung

  1. Post-Typen freischalten (optional): Unter Einstellungen → Simple Lang legst du fest, welche Post-Typen eine Sprachauswahl bekommen. Standardmäßig sind Beiträge und Seiten aktiv.
  2. Sprache wählen: Beim Bearbeiten eines Beitrags erscheint in der Seitenleiste das Dropdown Frontend Language Select. Wähle eine installierte Sprache oder belasse es beim Standard.
  3. Übersetzungen verknüpfen (optional): Über die Meta-Box Translation Links verbindest du zusammengehörige Beiträge unterschiedlicher Sprachen. Verknüpfungen sind bidirektional — verbindest du Beitrag A mit B, verlinken sich beide gegenseitig; eine ganze Übersetzungsgruppe wird automatisch komplett vernetzt.
  4. Im Frontend: Beim Aufruf wechselt WordPress automatisch in die gewählte Sprache. Übersetzt werden Oberflächen-Strings (Core, Theme, Plugins), das lang-Attribut sowie SEO-Meta-Tags (og:locale); für verknüpfte Beiträge werden <link rel="alternate" hreflang="XX">-Tags im <head> ausgegeben.

Wichtig: Simple Lang übersetzt nicht deine Inhalte. Titel, Beitragstext, Custom Fields und Medien-Beschriftungen bleiben so, wie du sie schreibst — die Sprache des Inhalts liegt in deiner Verantwortung.

Tipps & Tricks

  • Richtiger Einsatzzweck: Simple Lang ist für gelegentliche Seiten in einer Zweitsprache gedacht (Landingpages, Doku, rechtliche Seiten, Client-Präsentationen). Brauchst du vollständige Site-Übersetzungen, Sprachumschalter oder Übersetzungs-Workflows, sind WPML oder Polylang die bessere Wahl.
  • Hreflang ohne Konfiguration: Verknüpfte, veröffentlichte Beiträge erhalten selbstreferenzierende Hreflang-Tags, deterministisch nach Sprachcode sortiert und früh im <head> (vor den meisten SEO-Plugins). x-default ist derzeit nicht enthalten.
  • Locale-Format: Sowohl kurze (ar) als auch vollständige Locales (de_DE) werden akzeptiert — relevant für Sprachen ohne Ländercode.
  • Oxygen-Builder-Bedingungen: Bei installiertem Oxygen stehen drei Conditions zur Verfügung: „Post Language Is" (bestimmte Sprache), „Post Has Custom Language" (überhaupt eine Sprache gesetzt) und „Post Uses Default Language" (Standardsprache). Damit blendest du Elemente sprachabhängig ein oder aus.
  • Helfer-Funktionen für Entwickler: jpkcom_simplelang_get_post_language( $post_id ) liefert die gesetzte Locale (oder null), jpkcom_simplelang_get_current_language() die aktive Frontend-Sprache und jpkcom_simplelang_get_language_code( 'de_DE' ) den reinen Sprachcode (de) fürs lang-Attribut.
  • Template-Overrides: Plugin-Dateien lassen sich im Child-Theme ({child-theme}/jpkcom-simple-lang/{datei}), Parent-Theme oder in MU-Plugins ({WPMU_PLUGIN_DIR}/jpkcom-simple-lang-overrides/{datei}) überschreiben. Die Suchpfade erweiterst du per Filter jpkcom_simplelang_file_paths.
  • REST-API & Daten: Die Sprache liegt als Post-Meta unter dem Schlüssel _jpkcom_simplelang_language und ist bei entsprechender Konfiguration über die REST-API erreichbar. Eine Bulk-Zuweisung gibt es nicht — dafür update_post_meta() mit demselben Schlüssel verwenden.
  • Deaktivieren ist gefahrlos: Nach dem Abschalten zeigen Beiträge wieder die Standardsprache; die Meta-Daten bleiben erhalten und greifen bei erneuter Aktivierung sofort wieder.
  • Performance: Eine Meta-Abfrage pro Beitrag, ein einmaliger Locale-Wechsel pro Request, keine zusätzlichen Tabellen, kein Frontend-JS/CSS.
  • Updates & Sicherheit: Das Plugin aktualisiert sich sicher über GitHub mit SHA256-Prüfsummen-Verifikation; ein bevorzugter Abgleich gegen die download_url des Manifests verhindert, dass ein manipuliertes Manifest die Prüfsumme umgeht.

Weiterführende Informationen