|

TYPO3, RealURL & Parameter

Immer wieder kommt es vor, dass von externen Diensten/Anbietern zusätzliche Parameter an URLs angehängt werden, u.a. von Google, Matomo (Piwik), Hubspot, Facebook usw.

Eigentlich sollten diese Parameter keine wirklich große Rolle spielen und eigentlich sollte es auch egal sein, wenn hier ein neuer Parameter auftaucht.
Eigentlich.

Gibt es Auswirkungen auf meine TYPO3 Installation?

Das kommt darauf an, wie ihr sprechende URLs in eurem Projekt realisiert und auf welcher Seite die Parameter angehängt werden.
Derzeit kann ich hier nur für die Auswirkungen bei TYPO3 mit RealURL sprechen. Ob dieses Verhalten auch bei anderen Extensions/Lösungen vorkommt bzw. wie das Ganze in der neuen TYPO3 9 gehandhabt wird, kann ich nicht sagen.

Wenn der Parameter z.B. an statische Seiten angehängt wird, ist das oftmals auch nicht weiter tragisch. Der Parameter wird in der Datenbank erfasst, das war’s soweit.
Ganz anders verhält es sich mit dynamischen URLs, also News, Events, eigene Extensions mit Parametern etc.
Hier kann es vorkommen, dass entweder eine 404-Seite ausgespielt wird oder ein anderer Eintrag als erwartet angezeigt wird.

Ob- bzw. wie das eigene System auf die Parameter reagiert, kann einfach getestet werden. Hängt an die entsprechenden URLs die Parameter hinten mit an. Sollte sich das System anders verhalten als erwartet, solltet ihr einen Eintrag in der RealURL config in Betracht ziehen.

Bekannte Parameter und ein möglicher Fix für RealURL

Folgende Parameter sind mir in den letzten Wochen aufgefallen:

Facebook:

?fbclid=12345667890

Hubspot:

 ?__hstc=12345667890  
 ?__hssc=12345667890
 ?__hsfp=12345667890
 ?_hsenc=12345667890
 ?_hsmi=12345667890

In RealURL kann bestimmt werden, welche GET-Parameter ignoriert werden sollen. Dies wird in der Regel einfach über die RealURL config erledigt und erfolgt über eine Angabe unter 'cache/ignoredGetParametersRegExp'. RealURL hat hier bereits für einige Parameter eine entsprechende RegEx, die erweitert werden kann:

$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['cache']['ignoredGetParametersRegExp'] => '/^(?:gclid|fbclid|_{1,2}hs(?:tc|sc|fp|enc|mi)|utm_(?:source|medium|campaign|term|content)|pk_campaign|pk_kwd|TSFE_ADMIN_PANEL.*)$/';

Eintrag in cHashExcludedParameters

Zusätzlich müssen die Parameter in $TYPO3_CONF_VARS['FE']['cHashExcludedParameters'] mit eingetragen werden.

Wenn also weitere Parameter bei euch aufschlagen sollten, müssen diese entsprechend in eurer RegEx und in der 'cHashExcludedParameters' ergänzt werden.

Solltet ihr eine andere Lösung oder einen ganz anderen Ansatz haben, lasst es mich wissen.