WPML
Status
Gelöst
Gelöst in
4.0.0

Übersicht über das Problem

Vor 4.0.0 versuchte WPML bei der Konvertierung, den abschließenden Schrägstrich an die eingehende URL anzupassen. Leider ist diese Logik nicht für alle Fälle geeignet.

Ab 4.0.0 entspricht die konvertierte URL dem Standardverhalten von WordPress, das wie folgt aussieht:

  • Wenn es keinen Pfad und keinen Query-String gibt, versucht WPML, sich an die eingehende URL anzupassen (z. B. http://wpml.com => http://wpml.fr, oder http://wpml.com/ => http://wpml.fr/). WordPress gibt die Startseiten-URL jedoch normalerweise ohne abschließenden Schrägstrich aus.
  • Wenn es keinen Pfad, aber einen Query-String gibt, haben wir immer einen abschließenden Schrägstrich (z. B. http://wpml.com?foo=bar => http://wpml.fr/?foo=bar).
  • Wenn wir einen Pfad haben (keine Datei), hängt der abschließende Schrägstrich vom Permalink-Format ab.
  • Wenn wir einen Pfad haben, der auf eine Datei verweist, sollte kein abschließender Schrägstrich hinzugefügt werden (unabhängig vom Permalink-Format). Beispiel: http://wpml.com/wp-content/uploads/hello.csv.

Problemumgehung

Diese Änderung kann einige unerwartete Nebenwirkungen in Themes oder Drittanbieter-Plugins haben.

Wir raten dringend dazu, String-Verkettung zum Erstellen von URLs zu vermeiden und stattdessen Funktionen wie die folgenden zu nutzen:


Zum Beispiel der folgende Code:

$url = get_home_url() . '/' . $path;

Sollte ersetzt werden durch:

$url = trailingslashit( get_home_url() ) . $path;

Alle bekannten Probleme →