Super, dankeschoen. Die offizielle Doku hat mich in die Irre gefuehrt, der Hinweis mit dem typolink im TypoScript hat mich jetz gerettet :)
Linkhandler-Extension auch unter TYPO3 6.2 weiterverwenden
Viele Extensions laufen nach einem Update von TYPO3 auf die neue LTS Version 6.2 nicht mehr oder machen Probleme -- so auch der linkhandler. Wir haben eine Lösung gefunden, wie man die Extension auch nach dem Update weiterverwenden kann. Glücklicherweise haben Alexander Stehlik und Francois Suter einen Linkhandler-Fork auf Github veröffentlicht hat, der auch unter 6.2 läuft. Dank an die beiden! https://github.com/Intera/typo3-extension-linkhandler Prima finden ich auch, dass diese Version auch noch zusätzliche Konfigurationsmöglichkeiten mitbringt. Wollte man früher mit dem Linkhandler auf Datensätze einer bestimmten Tabelle einer Extension verlinken, konnte man nur eine Konfiguration für den Typolink im TypoScript definieren. Mit der neuen Version ist es jetzt möglich, mehrere verschiedene Konfigurationen für den Typolink auf die gleiche Tabelle zu definieren. In unserem speziellen Fall mussten wir für Datensätze der gleichen DB-Tabelle unterschiedliche actions (je nach Typ) im Link haben. Dies ist nun über die Angabe eines "config-keys" möglich. Vorher konnte man diesen wohl schon in der Konfiguration (PageTS-Config) für den TYPO3-Linkbrowser angeben, allerdings in der TypoScript-Konfiguration noch nicht anwenden. Laut den Angaben auf Github sollen alte Links weiter funktionieren, da auf die erste gefundene Konfiguration für diese Tabelle zugegriffen wird. Hier das Beispiel-TyposcriptSetup für tx_news:
TypoScript
plugin.tx_linkhandler {
# NEU - hier jetzt der config-Key statt vorher einfach der Tabellenname
# Muss natürlich mit der Angabe im PageTS-Config übereinstimmen
news {
# NEU - Angabe der Tabelle jetzt hier
listTables = tx_news_domain_model_news
# NEU - typolink settings wirklich innerhalb eines typolink
typolink {
parameter = {$pids.news.single}
additionalParams = &tx_news_pi1[news]={field:uid}
additionalParams.insertData = 1
useCacheHash = 1
}
}
}
Die Konstante {$pids.news.single}
müsst Ihr natürlich durch eure eigene ersetzen, bzw. müsst sie auch in den TypoScript-Constants definieren.