Von Joomla 1.0.x zu Drupal 6 wechseln

Von Joomla 1.0.x zu Drupal 6 wechseln

Joomla 1.0.x ist nun ja doch schon ziemlich in die Jahre gekommen und ein Upgrade einer Kundenseite auf Joomla 1.6 war eigentlich dringend angeraten. Aber da man mit Joomla nicht mehr richtig zufrieden war, sollte ein Wechsel zu Drupal geprüft werden. Das Ergebnis läßt sich mit einem Satz zusammenfassen: Es geht, ist auch gar nicht schwer, macht aber einige Arbeit.

Die Joomla-Installation war nicht besonders komplex, enthielt aber neben zahlreichen Artikeln in verschiedenen Sektionen und Kategorien eine Bildergalerie, einen Newsletter und diverse Webformulare. Für die Migration der User und Inhalte zu Drupal kam das Drupal-Modul "Joomla-to-Drupal Converter" zum Einsatz. Damit lassen sich alle User und Inhalte (auch der static content) nach Drupal migrieren. Die Bezeichnungen der Joomla-Sektionen und -kategorien werden dabei in einem Taxonomy-Vokabular abgebildet. Allerdings gibt es einige Fallstrick über die man stolpern kann, die sich aber bei richtiger Vorbereitung leicht meistern lassen.

Und so geht's:

  1. Drupal 6 in der neuesten Version installieren (das Migration_Modul wurde bisher noch nicht für Drupal 7 bereitgestellt). Es muss unbedingt die richtige Sprachversion installiert werden (in diesem Fall die Deutsche), weil sonst in Überschriften und Taxonomy-Terms die Umlaute fehlerhaft sind.
  2. Alle Inhaltstypen in die importiert werden soll auf das Standardformat "Full HTML" einstellen. Sonst werden beim Import alle Nodes auf "Filtered HTML" eingestellt (unabhängig von den Einstellungen im Converter-Modul!).
  3. Das Profile-Modul aktivieren sonst kommt es zu Fehlermeldungen beim Import der User.
  4. Wenn es in Joomla mehrere Superadministratoren gibt, darf keiner den gleichen Usernamen haben wie der User 1 in Drupal! Andernfalls werden sämtliche Beiträge des gleichnamigen Joomla-Users nicht übernommen und die Taxonomy wird zerstört. Die Seite ist dann nicht mehr benutzbar. Ggfs. einfach den entsprechenden Joomla-User umbenennen.
  5. Backup der Drupal-Installation und der Datenbank erstellen. Sollte beim Import etwas schief gehen, kann man problemlos von vorne anfangen und muss nicht alle Einstellungen neu vornehmen.
  6. Die Datei configuration.php der Joomla-Seite in den Modulordner ../sites/all/modules/joomla2drupal kopieren. So kann das Converter-Modul die Zugangsdaten zur Joomla-Datenbank auslesen und direkt darauf zugreifen
  7. Auf der Konfigurationsseite von Joomla-to-Drupal Converter die fehlenden Angaben ergänzen, z.B. den absoluten Pfad der Drupal-Installation und einstellen welche Joomla-Inhalte in welche Drupal-Inhaltstypen importiert werden sollen.
  8. Migration durch einen Klick auf "Start Migration!" anstoßen. Hat man alles richtig vorbereitet und eingestellt, so sollte die Datenübernahme ohne Fehlermeldungen durchlaufen.
  9. Taxonomy aufräumen und an die neue Seitenstruktur anpassen, damit die Inhalte z.B. mit Views und Panels dargestellt werden können.
  10. Anpassen der Bildpfade: Diese fangen in Joomla standardmäßig mit "images" an und liegen im gleichnamigen Ordner in Joomlas  Root-Verzeichnis. Diesen Ordner kopiert man nach Drupal und trägt den Pfad in "Einstellungen >> Dateisystem Dateisystem-Pfad" ein.  Da in Joomla relative Pfadangaben direkt mit dem Verzeichnisnamen anfangen, Drupal jedoch als erstes ein "/" erwartet, müssen alle Bilderpfade per SQL-Befehl oder manuell angepasst werden.
  11. Das gleiche gilt für die Pfade von Dateianhängen. Auch diese müssen entweder in der Datenbanktabelle-Tabelle geändert oder neu an die entsprechende Node angehängt werden
  12. Bilder, die unter Joomla per Mambot eingebettet wurden, müssen ggf. manuell neu eingebunden werden.
  13. Unter Joomla verwendete Dritt-Komponenten (hier die Bildergalerie zOOm media gallery, der Newsletter mkpostman und Facile Forms) müssen durch entsprechende Drupal-Pendants ersetzt werden. Bei der Datenübernahme hilft das Converter-Modul leider nicht.
  14. Interne Links sollten mit dem Modul Link Checker geprüft und korrigiert werden.

Nach einem abschließenden Test sollte die neue Seite dann ohne Probleme unter Drupal laufen.

Wer jetzt ein brandaktuelles Drupal haben möchte, kann die Seite noch auf Drupal 7 upgraden. Das ist längelang einfacher, als Joomlaseiten auf neue Versionen zu heben .