TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

RealURL trailing slash entfernen (banale Lösung)


Autor Nachricht
Verfasst am: 14. 08. 2009 [12:52]
suit
Themenersteller
Dabei seit: 09.01.2007
Beiträge: 47
Ich hab' mir grade einige Zeit lang den Kopf zerbrochen, wie man den trailing slash, den RealURL automatisch hinzufügt, wenn "defaultToHTMLsuffixOnPrev" nicht gesetzt ist, entfernen kann.

Ich möchte statt example.com/foo/bar/baz/ lieber example.com/foo/bar/baz stehen haben.

Leider hat "appendMissingSlash" keine Umkehrfunktion.

Lösungen findet man im Netz genug - Lösungen per XCLASS oder ganz wilde Geschichten wo im Sourcecode der Extension herumgegraben wird.

Folgende Lösung ist extrem einfach und banal, benötigt keine Manipulation an den Core-Files - lediglich ein "Wert" wird in "defaultToHTMLsuffixOnPrev" eingetragen.

PHP
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array (
	'fileName' => array (
		'defaultToHTMLsuffixOnPrev' => chr(0),
	),
);


Der Trick: es wird das Unicode-NULL-Zeichen (U+0000) eingefügt (eigentlich ASCII 0). Das Zeichen tut in einer Zeichenkette nichts und wird ignoriert. Ein Leerzeichen würde z.B. den Querystring vom Pfad trennen, NULL tut das nicht.

Getestet mit RealURL 1.5.3 - funktioniert einwandfrei.

Im Netz hab ich diese Lösung bisher noch nicht entdeckt, korrigiert mich, wenn ich mich irre icon_smile.gif

Edit - hatte zuvor eine Lösung mit html_entites_decode() und & # 0000; (Edit #2 Leerzeichen rein, Forum hat wirklich Probleme) als Zeichenreferenz - allerdings hat damit das Forum Darstellungsprobleme. Die Funktioniert aber ebenso.

[Dieser Beitrag wurde 2mal bearbeitet, zuletzt am 14.08.2009 um 12:55.]
Profil
Verfasst am: 14. 08. 2009 [13:49]
suit
Themenersteller
Dabei seit: 09.01.2007
Beiträge: 47
Gerade einen Bug entdeckt - manche Extensions (indexed_search z.B.) stellen das Zeichen fehlerhaft dar.

U+0000 wird durch U+00000000 ersetzt.

Die einfachste Lösung ist aktuell eine kleine Extension die den Quellcode nochmal durchparst und und alle vorkommen von U+00000000 mit U+0000 ersetzt.

Allerdings machts die Sache wieder kompliziert.
Profil