[Gelöst] Anpassung der Sprachverzeichnis-URL ohne Änderung hreflang-Tag
Dieses Thema ist gelöst. Hier finden Sie eine Beschreibung des Problems und der Lösung.
Problem: Sie möchten von unterschiedlichen Domains je Sprache auf Sprachverzeichnisse wechseln und die Sprachverzeichnisse so anpassen, dass sie nicht den hreflang-Tags entsprechen, z.B. möchten Sie 'elaboratum.de/ch/' für die Schweiz statt 'elaboratum.de/de-ch/'. Solution: Bitte versuchen Sie folgende Schritte: 1) Öffnen Sie das Translation Management über den Sprachumschalter in der oberen Leiste und wechseln Sie dort die Sprache. 2) Duplizieren Sie den Inhalt von dort aus.
Wichtig: Vergessen Sie nicht, vorher ein Backup zu erstellen! Es kann zu Problemen mit der Synchronisierung kommen, daher sollten die Inhalte anschließend mindestens einmal im Editor gespeichert werden.
Falls diese Lösung veraltet oder nicht auf Ihr Problem zutreffend ist, empfehlen wir Ihnen, ein neues Support-Ticket zu öffnen. Wir empfehlen auch, die Seite mit bekannten Problemen zu überprüfen, die Version der dauerhaften Lösung zu verifizieren und zu bestätigen, dass Sie die neuesten Versionen von Themes und Plugins installiert haben. Für weitere Unterstützung besuchen Sie bitte unser Support-Forum.
Dies ist das technische Support-Forum für WPML – das mehrsprachige WordPress-Plugin.
Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.
Background of the issue:
Ich überlege, von unterschiedlichen Domains je Sprache auf Sprachverzeichnisse zu wechseln. Ich verwende die Sprachen Deutsch (de), Deutsch (Schweiz, de-ch) und Englisch (en) und plane eine Version in Französisch für die französischsprachige Schweiz (ch-fr). Ich möchte die Sprachverzeichnisse anpassen, sodass sie nicht den hreflang-Tags entsprechen, z.B. elaboratum.de/ch/ für die Schweiz statt elaboratum.de/de-ch/.
Nein, das ist genau das, was ich nicht möchte. Der hreflang-Tag soll bleiben wie er ist, nur das Verzeichnis soll anders heißen. Wie oben im Beispiel beschrieben.
Lassen Sie uns unsere Seite als Beispiel nehmen (ohne Anpassungen):
Für die deutsche Sprache verwenden wir den Sprachcode "/de" -> https://wpml.org/de/
Dies entspricht dem Standard-Hreflang des Setups:
Wenn ich nun eine neue WPML-Installation aufsetze, kann ich die Schweiz nur als benutzerdefinierte Sprache hinzufügen. In diesem Fall kann ich im Eingabefeld die Anpassungen vornehmen, wie ich es möchte. Der Standard-Sprachcode (Feld "Code" ist "de-ch" und der Hreflang ebenfalls "de-ch".
Wenn Sie es auf diese Weise eingerichtet haben, ist eine nachträgliche Änderung nicht mehr möglich. Die einzige Lösung besteht darin, eine neue benutzerdefinierte Sprache mit dem Feld Code "ch" anzulegen und die Inhalte über das Translation Management auf die neue Sprache zu duplizieren.
Der Hreflang wäre wie im Screenshot ersichtlich dann einfach unverändert auf de-ch, es muss nur fas Feld "Code" verändert werden. Eine direkte Anpassung in der Datenbank (insbesondere in der Sprachtabelle, die gesperrt ist) kann zu Problemen mit Drittanbieter-Plugins führen.
Da war ich wohl doch zu voreilig: wenn ich die Sprache erneut hinzufüge, um die "falsche" zu duplizieren, bekomme ich die Meldung "Das Gebietsschema existiert bereits." und "Das hreflang existiert bereits.". Wie behebe ich das?
alles außer das Feld "Code" kann bearbeitet werden. Benennen Sie somit alles in WPML -> Sprachen -> Sprachen bearbeiten zu "2", dann gibt es keine Konflikte, z.B.:
Was ist denn der schnellste Weg, um alle Übersetzungen der "falschen" Sprache in die neue Sprache zu kopieren? Wenn ich alle Inhalte in der "falschen" Sprache im Übersetzungsmanagement anklicke, kann ich diese nicht kopieren, weil der Button ausgegraut ist mit der Meldung "Der ausgewählte Inhalt enthält Elemente in einer anderen Sprache".
Ja, ich hatte z.B. alle Vorlagen angehakt und "Inhalte kopieren" ausgewählt, siehe Screenshot. Der Button ist jedoch ausgegraut. Wenn ich es von der Standardsprache kopieren wollen würde, würde es klappen. Ich muss aber ja die Inhalte von der "falschen" Sprache auf die neue kopieren, sonst müsste ich ja alles wieder neu übersetzen.
dies ist korrekt. Es muss immer von der Standard-Sprache aus übersetzt/dupliziert werden. Eine Neuübersetzung wäre nicht notwendig, DE soll ja zu CH werden, also ein Duplikat via "Inhalte kopieren".
Nein, CH gibt es wie beschrieben schon mit Code "de-ch". Ich möchte aber den Code "ch" - weshalb du mir geraten hast, das als neue Sprache anzulegen und die Inhalte zu kopieren. Wenn ich nur von der Standardsprache kopieren kann, müsste ich ja alles nochmal neu übersetzen. Das wäre absurd hoher Aufwand. Da muss es doch eine andere Möglichkeit geben?
1) Öffnen Sie das Translation Management über den Sprachumschalter in der oberen Leiste und wechseln Sie dort die Sprache.
2) Duplizieren Sie den Inhalt von dort aus.
Wichtig: Vergessen Sie nicht, vorher ein Backup zu erstellen! Es kann zu Problemen mit der Synchronisierung kommen, daher sollten die Inhalte anschließend mindestens einmal im Editor gespeichert werden.
eine alternative Möglichkeit gibt es dafür leider nicht. Das Duplikat ist so konzipiert, dass es immer aus der Originalsprache ausgegeben wird. Sie können die Standard-Sprache der Installation unter WPML -> Languages vorübergehend ändern. Ich empfehle Ihnen, dies zunächst in einer separaten Staging-Umgebung zu testen.