81a8013e8af272dac9f6e7ff6a22f2a9230ec743
Preparation for TYPO3 14, which drops list_type. The plugins are registered as CTypes named like their former list_type values (epproducts_product_detail etc.); the form keeps the fields of the "list" type, with the plugin options in place of the plugin selector. As content element types they show the E&P logo of the extension manager (icon ep-products-plugin) instead of the generic plugin icon. The upgrade wizard epProductsPluginListTypeToCType moves the elements and the tt_content:list_type permissions of backend groups. Until it has run, list_type elements render through the new types (alias block in ext_localconf.php), so the deploy alone changes nothing. Retired plugins stay "list" elements. The content-only page type, the content manifest and the two container columns limited to "list" now treat the epproducts_* types as plugins. Crawl of 1,912 URLs identical for old code and new code before and after the wizard; rehearsed again on the prod dump of 2026-11-01 (1,924 URLs, API snapshot identical). Rollout and rollback SQL: .ddev/plans/PLUGINS-CTYPE-ROLLOUT.md. Co-Authored-By: Claude Opus 5.5 <[email protected]>
E&P Reisen websites (TYPO3 13)
TYPO3 13 LTS for www.ep-reisen.de and its subsites (ski-boarderweek, snowzone, semesterende-skireisen,
ski-wochenenden, …). Products, hotels, regions and dates live in packages/ep_products, templates
and assets in packages/ep_theme. Dates, prices and availability come from MyE&P (EP/myep),
which in turn reads bpn-connect.
Local setup
DDEV project: ddev start, then ddev composer install and ddev npm install && ddev npm run build.
Rebuild the assets after template changes: Tailwind purges classes it does not find in the
templates.
Documentation
- docs/cms-api.md: the API TYPO3 serves to MyE&P and the chatbot
(
/api/hotel,/api/product,/api/calendar-hotels,/api/content/*). - docs/calendars.md: price calendar, Belegungskalender and iCal feed: where the data comes from, caching, and what to check when a calendar does not load.
Deployment
deploy.php (Deployer). A deploy runs extension:setup, resets OPcache and flushes all caches.
License
GPL-2.0 or later
Languages
JavaScript
41.2%
PHP
35.4%
HTML
22.3%
SCSS
0.9%
Shell
0.2%