WBCE CMS – Way Better Content Editing.
Du bist nicht angemeldet.
Auf Seiten mit mehreren Sprachen, bei denen shortURL zum Einsatz kommt, fügt shortURL (SEO-)ungünstigerweise beim Wechsel der Sprache oder auch Aufruf der Seite in der Nicht-Standardsprache des Benutzers bzw. Besuchers einen Parameter _wb an die URL an, in dem noch einmal die gekürzte Adresse der gerade aufgerufenen Seite steht.
Beispiel:
https://www.camex.info/de/home/?_wb=de/home
Lässt sich das irgendwie abstellen?
WBCE 1.4.5, Multiligual 1.9.2, shortURL 4.0, PHP 7.2.26
Beitrag geändert von florian (01.07.2026 22:06:53)
Wir Benötigen: Cents, Euros... jetzt spenden!
Online
So scheint's zu funktionieren:
framework/class.frontend.php, nach Zeile 154
// check if there is an query-stringeinfügen
$wbStr = substr($_SERVER['QUERY_STRING'],strpos($_SERVER['QUERY_STRING'],"_wb"),strrpos($_SERVER['QUERY_STRING'],"/")+1);
// check if theres a _wb string from shortURL
//debug_dump($wbStr);
//die();
$qStr = str_replace($wbStr,'',$_SERVER['QUERY_STRING']);
if ($qStr!='') {
header('Location: ' . $sUri . '?' . $qStr);
} else {
header('Location: ' . $sUri );
}Effektiv ist allerdings anders... hm...
Wir Benötigen: Cents, Euros... jetzt spenden!
Online
auch sicher nicht besonders effektiv, aber vielleicht zuverlässiger wenn Module auch noch Get-Parameter mitschicken:
$qstr=$_SERVER['QUERY_STRING'];
parse_str($qstr, $param);
unset($param['_wb']);
$qstr=http_build_query($param);
if ($qStr!='') {
header('Location: ' . $sUri . '?' . $qStr);
} else {
header('Location: ' . $sUri );
}Beitrag geändert von mrbaseman (09.03.2021 11:23:59)
Offline
florian
Funktioniert super, vielen Dank.
Sollten wir mit in den Core aufnehmen.
Beitrag geändert von florian (10.03.2021 07:43:50)
Wir Benötigen: Cents, Euros... jetzt spenden!
Online
Doch noch was übersehen. Jetzt aber:
$qstr='';
if (isset($_SERVER['QUERY_STRING'])) { $qstr=$_SERVER['QUERY_STRING']; }
parse_str($qstr, $param);
unset($param['_wb']);
$qstr=http_build_query($param);
if ($qstr!='') {
header('Location: ' . $sUri . '?' . $qstr);
} else {
header('Location: ' . $sUri );
}Wir Benötigen: Cents, Euros... jetzt spenden!
Online
Ist diese Lösung nur gut wenn Shorturl vorhanden ist oder kann es allgemein in den Core, ohne dass es Nebenwirkungen gibt?
Offline
Vielleicht noch ein if-Konstrukt drum herum, damit das nicht in vielen Fällen unnötigerweise ausgeführt wird
Offline