Typolink + realurl in Scheduler-Tasks

Anforderung war, dass aus einem Scheduler-Task heraus korrekte sprechende URLs erzeugt werden. Der einfachste Weg hierfür ist eine der typolink-Methode des cObjects. Leider steht ein solches aber in Tasks von Haus aus nicht zur Verfügung. Anleitung, wie man sich ein solches erzeugen kann, finden sich im Internet viele – leider aber auch zahlreiche, die nicht (mehr) funktionieren oder riesen woodoo treiben. Nach einigen Recherchen und Tests kann ich nun einen Weg zur Problemlösung festhalten.

Weiterlesen»

Store Locator ( locator ) – Finger weg! Warum?

Die Extension Store Locator ( locator ) taucht immer wieder (zumindest im deutschsprachigen Raum) als Empfehlung für Umkreissuchen auf. D.h. wenn es drum geht, Filialen, Händler odgl. in einem gewissen Umkreis zu suchen, ausgehend von einer vom bestimmten User bestimmten Position.

Warum man aber tunlichst die Finger von der Extension lassen sollte, hat mir das vergangene Wochenende gezeigt….

Leichtes Warmwerden

Begonnen hatte das Eintauchen in den Code des Store Locator mit dem Hinweis einer Kundin, dass auf ihrer Website keine Orte mit scharfem S gefunden werden bzw. nur, wenn man dieses als „ss“ eingibt. Der Weg führte mich dann durch den PHP-Code bis zu den Abfragen der Geopositioning-Dienste, die in der Datei pi1/class.tx_locator_model.php zu finden sind. Hier kam dann der Schock:

  1. Coding Guidelines existieren nicht bzw. werden ignoriert
  2. Umgang mit Zeichensätzen ist willkürlich
  3. Konfigurationsvariablen von Extension und TYPO3 werden teils ignoriert bzw. hart überschrieben
  4. Geopositioning-Dienste werden abgefragt, die ihren Dienst (in der API-Version) eingestellt haben
  5. 40 hidden-Fields statt einem DB-Requests
  6. SQL-Queries werden zusammengebaut, die UIDs vermischen und Werte überschreiben
  7. Missachtung der enablecolumns/enableFields
  8. TYPO3-API ist in weiten Teilen anscheinend unbekannt
  9. Vermischung der MVC-Einheiten
  10. Logische Fehler

Weiterlesen»

Variablen im Bodytext

Eben beim TYPO3 Blogger gefunden und meiner Meinung nach hilfreich:

Folgende Zeile ins TS-Setup:

lib.parseFunc_RTE.nonTypoTagStdWrap.encapsLines.innerStdWrap_all.insertData = 1

Nun funktionieren Variablen im RTE…
Beispiel:

Hallo {TSFE:fe_user|user|name}, du bist gerade als {TSFE:fe_user|user|username} angemeldet.
Du befindest Dich auf der Seite mit der PageID: {PAGE:uid}

Ein Dank an den TYPO3 Blogger: http://typo3blogger.de/variablen-im-bodytext/