Hallo liebe Community,
ich habe eine kurze Frage zum Thema „auto_item“ bzw. Ordner URLs benutzer- und suchmaschinenfreundlich zu gestalten.
Situation: Ich habe eine Seite (FE) auf der Benutzerprofile angezeigt werden sollen: www.domain.de/profile/member/membername_xyz
„profile“ ist hierbei eine in der Seitenstruktur angelegte Seite, die ein Modul beinhaltet, das später die übergebenen Parameter (hier „member => mambername_xyz“) verwendet um die Informationen zu dem jeweiligen Member darzustellen.
Ich habe in den Einstellungen die Optionen „URLs umschreiben“, „Auto_item aktivieren“ und „Ordner-URLs verwenden“ aktiviert, die URL-Suffixe entfernt und durch die htaccess dafür gesorgt, dass alle Seiten bereits „sauber“ nach dem Schema www.domain.de/seite aufgerufen werden können.
Ich verwende die Funktion generateFrontendUrl() um die Links zu den verschiedenen Profilseiten zu erstellen:
PHP-Code:
$this->generateFrontendUrl($objPage->row(),'/member/membername_xyz);
Über
PHP-Code:
\Input::setGet('member', \Input::get('member'));
$member = \Input::get('member');
Kann ich den übergebenen Membernamen auch korrekt auslesen und die Seite wird ohne eine 404 Fehlermeldung generiert.
Problem: Ich möchte die Seite nicht wie im Moment über www.domain.de/profile/member/membername_xyz aufrufen, sondern über die verkürzte Schreibweise www.domain.de/profile/membername_xyz
Den Key zu dem jeweiligen (Get-) Value möchte ich also nicht in der URL stehen haben.
Ich habe schon mit einigen Erweiterungen (contao-urlcleaner und ia_cleanurl) herumgespielt, kam jedoch nicht zum gewünschten Ergebnis. Zum einen melden die Erweiterungen, dass sie nicht kompatibel mit meiner Contao Version (3.5.9) sind und zum anderen erhalte ich immer die Meldung, dass die Seite nicht gefunden wurde, wenn ich anschließend einen der Links aufrufe.
Anmerkung: Der Key „member“ wird durch die genannten Erweiterungen in der URL korrekt entfernt, das Wiederherstellen der URL scheint jedoch nicht zu funktionieren.
Frage: Hat jemand eine Idee oder einen Lösungsansatz, wie ich besagtes Problem bereinigen kann? Grundsätzlich würde ich auf externe Erweiterungen gerne verzichten wollen. Es geht mir lediglich darum, die URL im Format www.domain.de/profile/membername_xyz zu erhalten und den übergebenen Parameter „membername_xyz“ auslesen zu können.
Vielen Dank schon mal und schöne Grüße
Lesezeichen