[TYPO3-english] Migration form Drupal to TYPO3

Jigal van Hemert jigal.van.hemert at typo3.org
Wed Apr 23 20:05:25 CEST 2014


Hi,

On 23-4-2014 12:05, zatara zataropoulos wrote:
> I am working as web developer for few years now and recently one of my
> clients decided to change CMS from Drupal to TYPO3.
> My question is if I can find somewhere any guide (preferably with
> specific steps) to start the migration to TYPO3. With a little research
> that I did I didn't found anything relative with extensive information
> how to proceed to migration.

It's probably because such a migration requires quite a bit of knowledge 
about the inner working of both systems to create a migration tool that 
you don't read a lot about it. Companies which have made a very flexible 
tool for it will probably want to sell it instead of just giving it away.

If you're lucky enough to form a team of developers who have advanced 
knowledge of one of the systems that team can work out a migration path 
for the combination.

I've done a migration from another CMS to TYPO3 and I basically followed 
this path:
- find someone to make some export of the content and page structures
- analyse the exports regarding formatting, images, links, content structure
- import pages, after import re-link short cut pages
- process content: re-build links, extract images, re-build formatting
- import content

Before you attempt to insert data directly into the database, there is 
class t3lib_TCEmain (in 6.x \TYPO3\CMS\Core\DataHandling\DataHandler ) 
which can help you insert pages, content element, etcetera and it will 
take care of internal fields [1].

In content elements (fields with Rich Text Editors (RTE)) there are some 
oddities in TYPO3. In the database links are not stored as a-tags, but 
as link-tags; and some more things to help RTEs deal with browser 
differences, rendering, etcetera.
The RTE is configured with TSconfig. You can easily find the details all 
over the web, examples and documentation in the system extension HTMLarea.
To transfer HTML (normally used from the editor in the browser on the 
way to the database) for content elements you can use:

//initialize HTML parser
$htmlParser = t3lib_div::makeInstance('t3lib_parsehtml_proc');
// load TS config for transformations
$pageTsConfigText = t3lib_div::getUrl('path/to/RTEconfig.ts');
$parseObj = t3lib_div::makeInstance('t3lib_TSparser');
$parseObj->parse($pageTsConfigText);
$pageTsConfig = $parseObj->setup;
$rteConfig = $pageTsConfig['RTE.']['default.'];
$bodytext = $htmlParser->RTE_transform($htmlContent, array(), 'db', 
$rteConfig);


[1] http://blog.tolleiv.de/2010/03/handling-data-in-typo3-with-tcemain/

-- 
Jigal van Hemert
TYPO3 CMS Active Contributor

TYPO3 .... inspiring people to share!
Get involved: typo3.org


More information about the TYPO3-english mailing list