Torben Hansen

Blog

Artikel zu TYPO3, PHP, Open Source und Softwareentwicklung.

Seit 2012 blogge ich auf www.derhansen.de über Themen aus meinem Arbeitsalltag, welche ich mit der Allgemeinheit teilen möchte, um anderen evtl. dadurch zu helfen. Zuerst habe ich in deutscher Sprache meine Artikel geschrieben, bin dann aber dazu übergegangen, meine Artikel in englischer Sprache zu verfassen, um eine größere Zielgruppe anzusprechen. 

Sunday, June 21, 2026
typo3tt_contentPageDoktypeRegistry

"Attempt to insert record" error caused by PageDoktypeRegistry called in ext_localconf.php in TYPO3 13.4

TL;DR: After updating to TYPO3 13.4, if you see Attempt to insert record on pages:X where table "tt_content" is not allowed, it might be, that an extension is calling PageDoktypeRegistry::add() in ext_localconf.php instead of ext_tables.php. Move the call to ext_tables.php to fix it.The problemAfter updating a TYPO3 installation from 12.4 to…

Read more
Sunday, June 07, 2026
typo3tcaallowLanguageSynchronizationFieldTypeFactory

How a wrong TCA configuration broke localization after updating to TYPO3 13.4

The initial problemI have been doing a lot of TYPO3 major updates lately, and for one of the projects, a colleague of mine reportedmonths later a strange problem with localization, which most likely is related to the update to TYPO3 13.4. Theaffected TYPO3 website contains a site which has two languages. The default language is german and the…

Read more
Sunday, February 01, 2026
t3versionsbotheadless browserapiai

How to not use the t3versions website

TL;DR: Don’t Scrape - Use the APIInstead of building a bot to execute t3versions domain checks via a headless browser, just request an API key and use it. It’s faster, more reliable, and won’t get you banned.What is t3versions?About eight years ago, I created t3versions as a simple tool to identify websites using the TYPO3 CMS. When a site is…

Read more
Tuesday, December 30, 2025
Icinga 2performance data

No performance data from Icinga 2 to InfluxDB and how to possibly fix it

TL;DR: In Icinga Web 2, navigate to Toggle Menu > Health, click on the Icinga DB Instance, and ensure that Performance Data is enabled.Icinga 2 and performance dataI use several own servers to run various services like my own TYPO3 website, my GitLab instance, and otherapplications I use for my daily work. When maintaining own servers and…

Read more
Friday, October 24, 2025
fluxcontainerTYPO3

How to use flux and container extension in one TYPO3 system

TYPO3 is well known for its flexibility, extensibility, and sustainability. It is not uncommon to find TYPO3 installations that were originally built many years ago and which are still actively maintained and updated today. In some of those older setups, site layouts and content elements were implemented using the wellknown flux extension.As…

Read more
Sunday, October 12, 2025
powermailspamchallenge response

My new TYPO3 extension "powermail_crshield" is available

Back in July 2022, I released the TYPO3 extension form_crshield, a lightweight solution that adds a challenge/response layer to TYPO3 forms created with ext:forms to protect them fromautomated spam submissions. Since then, the extension has been downloaded more than 140,000 times, proving that theapproach works well for many TYPO3 integrators…

Read more
Sunday, January 12, 2025
macbookcopyfiles

How to efficiently transfer a huge amount of files from one MacBook to another

As a web developer working on various projects, I often deal with project sources that include tens or even hundreds of thousands of files. This happens because modern development environments, especially those using Node.js or PHP, rely on extensive package ecosystems. These packages, installed from source, often contain a massive number of…

Read more
Tuesday, December 31, 2024
TYPO3doctrineorderingquerybuilderextbaserepository

Sorting by UIDs with MySQL FIELD function in TYPO3 13.4+ using Doctrine DBAL 4

Back in 2017, I wrote this blogpost about how to use the MySQL FIELD function in TYPO3 with Doctrine DBAL. The function is used to applya special ordering of records by a given list of uids (e.g. from FlexForm) to a query using QueryBuilder and then uses the extbase datamapper to transform the raw Doctrine query result to an array of domain…

Read more
Monday, September 23, 2024
TYPO3extend backend moduleextbaseaction

Extending an existing extbase backend module with a custom action in TYPO3 v12+

One part I really like about TYPO3 is its extendability. The TYPO3 core and its APIs contain many PSR-14 events and hooks, which developers can use to customize or extend the functionality of the system. My TYPO3 extension sf_event_mgt has an extbase based backend module, which allows editors to manage events and event registrations. It is for…

Read more
Friday, July 26, 2024
tObserverTYPO3 Monitoring

tObserver TYPO3 monitoring service shutdown

TL;DR: My free TYPO3 monitoring service tObserver will shut down on 1st of August 2024The evolution of tObserverBack in 2015 I was working for a company which provided TYPO3 website development and hosting. We had to manage hundreds of TYPO3 websites and with each TYPO3 core or extension security update, we had to identify, which of our managed…

Read more
Sunday, June 16, 2024
emaildouble opt-indouble opt-outtripple opt-intripple opt-outemail security

From double to tripple: Preventing unintended opt-in / opt-out confirmations

Today, double opt-in is the de facto standard for web services that require user subscriptions. This process is commonly used for newsletter sign-ups, user account creation or event registration/cancellation.A typical double opt-in process works as following: Users sign up for a service (e.g. newsletter) by entering their email address The…

Read more
Tuesday, December 12, 2023
sentrytypo3debugging

TYPO3 Sentry Integration: Testing and Debugging with cURL

Configuring the TYPO3 extension sentry_client is a straightforward process that ensures seamless integration with Sentry, the robust error tracking and monitoring platform. Once the sentry_client extension is configured, it becomes crucial to verify whether Sentry is successfully receiving events from your TYPO3 instance. The documentation…

Read more