header(LOCATION) und AMR

Gesperrt
qualtext
Beiträge: 17
Registriert: Di 19. Jun 2012, 10:04
Kontaktdaten:

header(LOCATION) und AMR

Beitrag von qualtext »

Hallo Contenido-Gemeinde,

ich benutze in einem Modul beispielsweise eine Weiterleitung per

Code: Alles auswählen

header('LOCATION:' . 'front_content.php?idart=1');
Leider greift das AMR an dieser Stelle nicht ein. Anstatt in der Adresszeile nun bspw. 'www.irgendwas.de/kategorie/artikeltitel.html' steht, generiert er die Adresse (je nach Kategorie in der das Modul aufgerufen wird):

Code: Alles auswählen

'www.irgendwas.de/zurzeitigeKategoerieInderDasModulAufgerufenWird/front_content.php?idart=1'.
Wie kann ich mit Header-Location arbeiten und dennoch die Umschreibung durch das AMR nutzen?
Hat da jemand einen Tipp für mich?

Vielen Dank
Qualtext
xmurrix
Beiträge: 3214
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 16 Mal
Kontaktdaten:

Re: header(LOCATION) und AMR

Beitrag von xmurrix »

Das AMR-Plugin sucht im Code nach bestimmten vorkommen von Frontend-URLs, wie

Code: Alles auswählen

href="front_content.php"
href='front_content.php'
action='front_content.php'
also nach Attribut/Wert Paaren, und ersetzt diese.

Wenn du im Modul eine Weiterleitung machen möchtest, verwende einfach folgendes:

Code: Alles auswählen

$aParams = array (
    'idart' => 1, 'lang' => $lang
);
$url = Contenido_Url::getInstance()->buildRedirect($aParams);
header('LOCATION:' .$url);
Du kannst auch nur die build() Methode verwenden

Code: Alles auswählen

...
$url = Contenido_Url::getInstance()->build($aParams);
...
build() generiert die URL ohne Protokoll + Host (foo/bar.html) und buildRedirect() inkl. Protokoll + Host (http://mydomain.com/foo/bar.html).

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
qualtext
Beiträge: 17
Registriert: Di 19. Jun 2012, 10:04
Kontaktdaten:

Re: header(LOCATION) und AMR

Beitrag von qualtext »

Vielen Lieben Dank,

genau das habe ich gesucht!
Funktioniert super.

edit: Kann man einen Beitrag als gelöst markieren?
Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: header(LOCATION) und AMR

Beitrag von Spider IT »

xmurrix hat geschrieben:build() generiert die URL ohne Protokoll + Host (foo/bar.html) und buildRedirect() inkl. Protokoll + Host (http://mydomain.com/foo/bar.html).
build() mit 2. Parameter true macht das Gleiche wie buildRedirect().

Gruß
René
Gesperrt