Kann man verhindern, dass bei externen URLS in Kathegorien die force_sid mit angehängt wird? Wir verlinken Kateogorien aus einem Shop in einen anderen und wenn man im ersten Shop angemeldet ist, dann wird die force_sid mit an die URL angehängt, was im zweiten Shop zu Fehlermeldungen führt.
Hat sich erledigt. Hab die entsprechende Funktion in oxCategory überschrieben.
Poste die Lösung doch hier, kann sicher mal jemand brauchen.
<?php
class oxCategoryExtended extends oxCategoryExtended_parent{
public function getStdLink( $iLang = null, $aParams = array() ){
if ( isset( $this->oxcategories__oxextlink ) && $this->oxcategories__oxextlink->value ) {
return $this->oxcategories__oxextlink->value;
}else return parent::getStdLink( $iLang, $aParams);
}
}
?>
Das als Modul speichern und im Backend oxCategory damit überladen.
Verhindert wird damit, dass bei zwei Shop deren Categorien aufeinander verlinken die fore_id mit übergeben wird und der zweite Shop dann versucht diese Daten zu verwenden. Benutzt unter Oxid 4.4.3. Funktioniert zumindest bei uns tadellos, wie es es mit mehrsprachigen Systemen aussieht haben wir nicht beachtet.
Danke, gute Lösung! Interne Links gehen dann zwar nicht, da muss man sich halt entscheiden ob man interne oder externe Links in den Kategorien verwenden will.
Möglich wäre es sicher auch das Ergebnis von dem Aufruf des Originals
oxUtilsUrl::getInstance()->processUrl( $this->oxcategories__oxextlink->value, false );
zu bearbeiten, ob der gleiche Host benutzt wird und diesen dann als internen Link unbearbeitet zu lassen undbei den anderen nur die force_id abzuschneiden.