Moving from Drupal to TYPO3: A Complete Migration Guide
Migrate from Drupal to TYPO3 with a practical guide that ensures control over your content and URLs. It covers migration from Drupal 11 to TYPO3 13 with clean data exports, accurate mappings, Twig to Fluid conversion, and reliable 301 redirects.

Quick Overview
Before beginning the migration, consider the following:
- Decide how Drupal content will map to TYPO3 pages or records.
- Export data from Drupal using JSON:API or CSV.
- Clean up the content and assets.
- Convert templates from Twig to TYPO3’s Fluid format.
- Import content into TYPO3.
- Set up redirects to maintain old URLs.
Step 1: Choose Your Platforms
Ensure your platforms are set up:
- Source: Drupal 11 (also applicable for Drupal 9 or 10).
- Target: TYPO3 13 LTS.
- Plan for:
- Multiple sites and languages.
- The organization of pages within TYPO3.
- Mapping content to appropriate TYPO3 pages or records.
Step 2: Map Drupal to TYPO3
Create a mapping between Drupal elements and their TYPO3 equivalents:
Common Mappings
- Drupal Pages → TYPO3 Pages with content elements.
- Blog/Article Nodes → TYPO3 records (like ext:news) or pages.
- Taxonomy Terms → TYPO3 categories (sys_category).
- Users → TYPO3 Backend or Frontend users.
- Media → TYPO3 File Abstraction Layer (FAL).
Consider special TYPO3 extensions if you require additional features like eCommerce, multilingual support, or forms.
Step 3: Export from Drupal
You have two main export methods:
1. JSON:API (For Developers)
- Export content types along with their fields.
- Include files and path aliases.
- Support for multiple languages.
2. CSV via Views (For Non-Developers)
- Export pages, images, categories, etc., using Views.
- Make sure column names align with TYPO3 imports.
Step 4: Clean Content and Templates
Before importing content into TYPO3:
- HTML and Embeds: Remove Drupal-specific filters and clean up to standard HTML.
- Media: Move files to TYPO3’s fileadmin and adjust paths.
- Taxonomies: Prepare categories ahead of time to ensure proper mapping during import.
- Template Conversion (Twig to Fluid):
- Convert Drupal’s Twig layouts to TYPO3 Fluid templates.
- Adjust loops, conditions, and helpers for TYPO3’s Fluid syntax.
- Update URLs and asset references to match TYPO3 conventions.
Step 5: Import into TYPO3
There are two common ways to import content into TYPO3:
JSON Imports
- Create scripts to read the JSON data and insert it into TYPO3.
- Import pages, records, and media efficiently.
CSV Imports
- Use a TYPO3 extension that understands CSV files for mapping content into the system.
- This method is useful for repeat imports and reviewing data.
Step 6: Maintain URLs and SEO
To maintain SEO rankings and prevent broken links:
- Recreate exact page slugs in TYPO3.
- Import Drupal path aliases and create 301 redirects for old URLs.
- Check links post-import to ensure they correctly point to new TYPO3 pages.
Conclusion
Migrating from Drupal to TYPO3 requires careful planning and execution. By mapping content, cleaning up assets, converting templates, and managing URLs, you can ensure a smooth transition. Testing imports and setting up redirects will help maintain SEO and user experience. With the right approach, the migration process will be efficient and effective.
