direct_mail_subscription / real_url: Kurze URLs in Opt-In Bestätigungsmails von Newsletter-Anmeldung

Mit folgendem Trick bekommt man in die Bestätigungsmails von direct_mail_subscription eine kürzere URL. Hintergrund des Ganzen: Die URLs sind in den E-Mails teilweise so lang, dass sie umbrechen, was bei manchem Benutzern zu unvollständigen URLs bei Klick auf den Link führt.

Per Default sieht der Link in dem Subpart „EMAIL_TEMPLATE_CREATE_SAVED“ der Opt-In-Mail so aus:

http://www.beispiel.de/pfad/zu/seite.html?1=1&cmd=setfixed&sFK=approve&rU=3919&fD%5B_FIELDLIST%5D=uid&fD%5Bhidden%5D=0&aC=12732843

Schöner wäre es z.B. so:

http://www.beispiel.de/opt/nl/a/3919/12732843/0/0/

Folgende Schritte zu einer kurzen URL:

1. In den Seiteneigenschaften der Opt-In-Seite unter „Pfadsegment für untergeordnete Seiten“ einen kurzen Begriff eingeben, im Beispiel hier „opt“ und das Häkchen vor „Den gesamten Pfad überschreiben“ setzen.

2. In der typo3conf/realurl_conf.php folgende neue Regel für die postVarSets definieren:

'nl'     =>   array(
array(   'GETvar'     => 'sFK', 
'valueMap'    => array(
'a'  => 'approve',
'd' => 'DELETE'
),
),
array( 'GETvar'   => 'rU', ),
array( 'GETvar'   => 'aC', ),
array(   'GETvar'   => 'cmd', 
'valueMap'    => array(
'setfixed'  => 'setfixed'
),
'valueDefault'  => 'setfixed',
),
array(   'GETvar'   => 'fD[_FIELDLIST]',
'valueMap'  => array(
'uid'    => 'uid'
),
'valueDefault'  => 'uid',
),
array( 'GETvar'   => 'fD[hidden]',
'valueMap'  => array(
'0'      => '0'
),
'valueDefault'  => '0',
),
),

3. In dem Mail-Templates folgende Links für Bestätigung/Abmeldung verwenden:

Bitte klicken Sie auf diesen Link um die Anmeldung fertig zu stellen:
###THIS_URL###opt/nl/a/###FIELD_uid###/###SYS_AUTHCODE###/0/0/
 
Falls Sie keinen Newsletter möchten, klicken Sie hier:
###THIS_URL###opt/nl/d/###FIELD_uid###/###SYS_AUTHCODE###/0/0/