Mittlerweile habe ich es geschafft und alle meine alten WordPress Artikel in mein neues Blogmittel Drupal importiert. Nun will ich meinen ausstehenden Erfahrungsbericht nachreichen, der vielleicht anderen Wechselwilligen hilfreich sein könnte.
Ich bin “professioneller Laie” und daher kein PHP-MySQL-Javascript Junkie, der sich schnell mal ein eigenes Script für solche Angelegenheiten basteln kann. Zunächst hatte ich ein wenig recherchiert, ob es bereits Hinweise oder Anleitungen für den Import von WordPress Artikeln in Drupal gibt. Dabei bin ich nur bedingt fündig geworden. D.h. wenn Du nur sehr wenig Ahnung oder Erfahrung im Umgang mit Datenbanken, Administrationstools, lokalen Serven, etc. und der englischen Sprache hast, wird Dir das Konvertieren Deiner alten WordPress Beiträge nach dem jetztigen Stand der Dinge nicht besonders leicht fallen (vielleicht ändert sich das ja in absehbarer Zukunft)!
Lösungsmöglichkeiten für den Import von WordPressinhalten
Von Haus aus bringt Drupal leider keine Importfunktion mit. Das entspricht allerdings auch nicht dem Drupalkonzept das Grundsystem möglichst schlank zu halten und alle weiteren Funktionen durch Module zu realisieren. OK, hauseigener Importer = Fehlanzeige, aber bevor ich auf kreative Versuche wie Nodes aus einem Feed zu erzeugen oder andere abenteuerliche Ideen zurückgreife, hoffte ich darauf, dass es anderweitige Lösungen gibt.
Zwei einigermaßen brauchbare Möglichkeiten habe ich gefunden:
- das Conversion Programm und
- das wp2drupal Modul
Sicher ist sicher ist sicher
Gleichgültig ob man sich für eine der beiden Varianten entscheidet oder ganz eigene Wege geht:
Egal was Du tust, erstelle in jedem Fall vorher ein Backup der beiden betroffenen Datenbanken. Ein ausgezeichnetes Backup- und Restoretool, insbesondere für die in der Regel laufzeitbeschränkten Hostingangebote, ist der MySQLdumper. Falls Du noch keinen lokalen Server (WAMP, LAMP) installiert hast, besorgst und installierst Du Dir beispielsweise XAMPP, um alle Konvertierungsvorgänge an einer Kopie Deiner Systeme in einer gesicherten Umgebung durchführen zu können.
Außerdem kannst Du so lokal feststellen, ob sich Dein Datenbankbackup überhaupt funktionsfähig wiederherstellen lässt. Denn eigentlich kann man ein Backup erst dann ein Backup nennen, wenn die problemfreie Wiederherstellung sichergestellt ist (ich spreche da aus leidvoller Erfahrung). Einige weitere beachtenswerten Dinge in Bezug auf die lokale Serverinstallation werde ich später veröffentlichen. Ich gehe im weiteren davon aus, dass Du beide Systeme mit den dazugehörigen Datenbanken lokal installiert hast.
Das Conversion Programm
Als erstes habe ich das “Conversion Program” ausprobiert. Ich zitiere mich hier einfach mal selbst:
Während meiner Nachforschungen bin ich auf eine weitere Möglichkeit aufmerksam geworden: ein Desktop “conversion program”, dass in einer Windows-, Linux- und Macvariante angeboten wird. Dabei ist nicht nur ein Import von WordPress, sondern auch von dem Blogsystem b2evolution möglich. Die Programmvarianten lassen sich hier herunterladen und es gibt einen ausführlichen User’s Guide. Leider funktioniert die derzeitige Version nicht mit der im Moment aktuellen Version 2.3 von WordPress. Aufgrund einiger mißlicher Umstände, hat sich der Autor entschieden die zukünftigen Versionen des Programms in einer neuen Programmiersprache zu entwickeln. Da er diese erst erlernen muss, kann es noch eine Weile dauern. Es gibt glücklicherweise einen Hinweis, wie man ein Downgrade von WordPress 2.3 auf 2.2 bewerkstelligen kann, so dass dann die Kovertierung mit dem Programm durchführbar ist: Have WordPress 2.3+? Never fear, you can downgrade easily!
Die Desktop-Variante ist besonders interessant für sehr umfangreiche Datenbanken, da Module, die online arbeiten, immer Gefahr laufen durch eine zu lange Laufzeit ein Timeout zu provozieren.
Um es kurz zu machen: ich konnte nach dem Überwinden einiger Hürden (Downgrade von WordPress von Version 2.3 auf 2.2) mit dem Programm nur einen Teilerfolg verbuchen.
Der Importvorgang lief zunächst zügig und glatt ab. Leider enthielten die Beitragstitel statt der verwendeten Sonderzeichen die entsprechenden HTML-Entitäten (“& # 3 3 ;” ohne Leerzeichen). Ich denke das wäre noch verschmerzbar und durch ein paar Suchen und Ersetztenaktionen in der Datenbank auch lösbar gewesen, wenn nicht die Artikeltexte jeweils nur bis zum Auftauchen des ersten Sonderzeichens importiert worden wären.
Damit ist das Conversion Program in der derzeitigen Variante für deutsche Beitragsinhalte unbrauchbar. Allerdings arbeitet der Autor hart, um eine neue Verison in einer anderer Programmiersprache zu erstellen. Ich habe ihn über das Problem informiert und er will sich sobald er kann des Sache annehmen, so dass ggf. in einigen Wochen oder Monaten eine funktionierende Version zur Verfügung steht. Das Programm bietet ein paar nette Optionen. So lässt sich einstellen in welchem Nodetype die Artikel importiert werden sollen und auch die Anzahl der pro Durchgang zu konvertierenden Inhalte lässt sich limitieren. Es gibt leider keine Möglichkeiten um die Artikelautoren zu beeinflussen, um z.B. die Artikel einem bestehendem Drupalbenutzer zuzuordnen.
Das wp2drupal Modul
Hiermit ist mir dann der Import gelungen. Wichtig ist, die für Drupal 5.x gepatchte Version zu verwenden. Nach der Installation erschien das Modul merkwürdigerweise nicht direkt unter den Administrationsmenüs. Sondern musste erst über eine entsprechende URL aufgerufen werden (deineseite.de/admin/wp2drupal). Erstaunlicherweise wird das Menü aber anstandlos im Admin Menu Modul angezeigt.
Nach ein paar Vorinformationen trägt man die entsprechenden Zugangsdaten zur WordPressdatenbank ein. Anschließend bietet das Modul einige sehr nette Konvertierungsoptionen an:
- Es lässt sich genau definieren wie die WordPress-Autoren der alten Beiträge auf bestehende Drupal Nutzer gemappt werden sollen.
- Es kann eine Kategorie (Taxonomie) ausgewählt werden in die die WordPress-Kategorien importiert werden oder auch eine neue angelegt werden.
- Es kann gewählt werden in welchen Nodetyp die Artikel importiert werden sollen. Dabei kann ein abweichender Nodetyp für die statischen WordPress Seiten (Pages) angegeben werden.
- Der zu nutzende Eingabefilter kann ausgewählt werden.
- Man kann entscheiden, ob Trackbacks übernommen werden sollen oder nicht.
- Es lassen sich automatische Umleitungen von den alten zu den neuen URL’s anlegen, wenn das Path Redirect Modul installiert ist. Dabei gibt es zusätzliche Optionen.
- Es gibt für Profis die Möglichkeit auf jeden Inhalt eigene selbstdefinierte PHP Anweisungen durchzuführen.
Insgesamt ist die Funktionalität des Moduls wesentlich umfangreicher als die des “Conversion Programs“.
Nach Start des Konvertierungsvorganges importierte das Modul meine alten WordPressbeiträge, -kommentare und -trackbacks anstandlos in die Kopie (sicher ist sicher) meiner neuen Drupalinstallation. Ein paar Kleinigkeiten blieben übrig. Auch bei dieser Methode wurden Sonderzeichen in den Artikeltiteln als HTML-Entitäten dargestellt. Und so lange man keine relativen Links für in den Artikeln eingebundene Bilder verwendet, so werden diese noch vom ursprünglichen Verzeichnis geladen. Wer seinen Blog nach der Umstellung unter derselben Adresse betreibt ist fein raus. Alle anderen müssen hier Hand anlegen oder sich an ein paar Suchen und Ersetzten Aktionen in der Datenbank herantrauen. Für Einsteiger ist in diesem Fall der Artikel “Suchen und Ersetzen in MySQL-Datenbanken” sehr empfehlenswert.
Fazit
Insgesamt gefällt mir das Modul sehr gut und ich hoffe, das es wieder aktiv weiterentwickelt wird und letztendlich vielleicht zu dem Importmodul schlechthin wird. Ich denke das würde Drupal sehr gut tun, wenn hier die Migrationshürde tiefer gelegt wird.
Mittlerweile habe ich es geschafft und alle meine alten WordPress Artikel in mein neues Blogmittel Drupal importiert. Nun will ich meinen ausstehenden Erfahrungsbericht nachreichen, der vielleicht anderen Wechselwilligen hilfreich sein könnte.
Ich bin "professioneller Laie" und daher kein PHP-MySQL-Javascript Junkie, der sich schnell mal ein eigenes Script für solche Angelegenheiten basteln kann. Zunächst hatte ich ein wenig recherchiert, ob es bereits Hinweise oder Anleitungen für den Import von WordPress Artikeln in Drupal gibt. Dabei bin ich nur bedingt fündig geworden. D.h. wenn Du nur sehr wenig Ahnung oder Erfahrung im Umgang mit Datenbanken, Administrationstools, lokalen Serven, etc. und der englischen Sprache hast, wird Dir das Konvertieren Deiner alten WordPress Beiträge nach dem jetztigen Stand der Dinge nicht besonders leicht fallen (vielleicht ändert sich das ja in absehbarer Zukunft)!
Lösungsmöglichkeiten für den Import von WordPressinhalten
Von Haus aus bringt Drupal leider keine Importfunktion mit. Das entspricht allerdings auch nicht dem Drupalkonzept das Grundsystem möglichst schlank zu halten und alle weiteren Funktionen durch Module zu realisieren. OK, hauseigener Importer = Fehlanzeige, aber bevor ich auf kreative Versuche wie Nodes aus einem Feed zu erzeugen oder andere abenteuerliche Ideen zurückgreife, hoffte ich darauf, dass es anderweitige Lösungen gibt.
Zwei einigermaßen brauchbare Möglichkeiten habe ich gefunden:
das Conversion Programm und
das wp2drupal Modul
Sicher ist sicher ist sicher
Gleichgültig ob man sich für eine der beiden Varianten entscheidet oder ganz eigene Wege geht:
Egal was Du tust, erstelle in jedem Fall vorher ein Backup der beiden betroffenen Datenbanken. Ein ausgezeichnetes Backup- und Restoretool, insbesondere für die in der Regel laufzeitbeschränkten Hostingangebote, ist der MySQLdumper. Falls Du noch keinen lokalen Server (WAMP, LAMP) installiert hast, besorgst und installierst Du Dir beispielsweise XAMPP, um alle Konvertierungsvorgänge an einer Kopie Deiner Systeme in einer gesicherten Umgebung durchführen zu können.
Außerdem kannst Du so lokal feststellen, ob sich Dein Datenbankbackup überhaupt funktionsfähig wiederherstellen lässt. Denn eigentlich kann man ein Backup erst dann ein Backup nennen, wenn die problemfreie Wiederherstellung sichergestellt ist (ich spreche da aus leidvoller Erfahrung). Einige weitere beachtenswerten Dinge in Bezug auf die lokale Serverinstallation werde ich später veröffentlichen. Ich gehe im weiteren davon aus, dass Du beide Systeme mit den dazugehörigen Datenbanken lokal installiert hast.
Das Conversion Programm
Als erstes habe ich das "Conversion Program" ausprobiert. Ich zitiere mich hier einfach mal selbst:
Während meiner Nachforschungen bin ich auf eine weitere Möglichkeit aufmerksam geworden: ein Desktop "conversion program", dass in einer Windows-, Linux- und Macvariante angeboten wird. Dabei ist nicht nur ein Import von WordPress, sondern auch von dem Blogsystem b2evolution möglich. Die Programmvarianten lassen sich hier herunterladen und es gibt einen ausführlichen User's Guide. Leider funktioniert die derzeitige Version nicht mit der im Moment aktuellen Version 2.3 von WordPress. Aufgrund einiger mißlicher Umstände, hat sich der Autor entschieden die zukünftigen Versionen des Programms in einer neuen Programmiersprache zu entwickeln. Da er diese erst erlernen muss, kann es noch eine Weile dauern. Es gibt glücklicherweise einen Hinweis, wie man ein Downgrade von WordPress 2.3 auf 2.2 bewerkstelligen kann, so dass dann die Kovertierung mit dem Programm durchführbar ist: Have Wordpress 2.3+? Never fear, you can downgrade easily!
Die Desktop-Variante ist besonders interessant für sehr umfangreiche Datenbanken, da Module, die online arbeiten, immer Gefahr laufen durch eine zu lange Laufzeit ein Timeout zu provozieren.
Um es kurz zu machen: ich konnte nach dem Überwinden einiger Hürden (Downgrade von WordPress von Version 2.3 auf 2.2) mit dem Programm nur einen Teilerfolg verbuchen.Der Importvorgang lief zunächst zügig und glatt ab. Leider enthielten die Beitragstitel statt der verwendeten Sonderzeichen die entsprechenden HTML-Entitäten ("& # 3 3 ;" ohne Leerzeichen). Ich denke das wäre noch verschmerzbar und durch ein paar Suchen und Ersetztenaktionen in der Datenbank auch lösbar gewesen, wenn nicht die Artikeltexte jeweils nur bis zum Auftauchen des ersten Sonderzeichens importiert worden wären.
Damit ist das Conversion Program in der derzeitigen Variante für deutsche Beitragsinhalte unbrauchbar. Allerdings arbeitet der Autor hart, um eine neue Verison in einer anderer Programmiersprache zu erstellen. Ich habe ihn über das Problem informiert und er will sich sobald er kann des Sache annehmen, so dass ggf. in einigen Wochen oder Monaten eine funktionierende Version zur Verfügung steht. Das Programm bietet ein paar nette Optionen. So lässt sich einstellen in welchem Nodetype die Artikel importiert werden sollen und auch die Anzahl der pro Durchgang zu konvertierenden Inhalte lässt sich limitieren. Es gibt leider keine Möglichkeiten um die Artikelautoren zu beeinflussen, um z.B. die Artikel einem bestehendem Drupalbenutzer zuzuordnen.
Das wp2drupal Modul
Hiermit ist mir dann der Import gelungen. Wichtig ist, die für Drupal 5.x gepatchte Version zu verwenden. Nach der Installation erschien das Modul merkwürdigerweise nicht direkt unter den Administrationsmenüs. Sondern musste erst über eine entsprechende URL aufgerufen werden (deineseite.de/admin/wp2drupal). Erstaunlicherweise wird das Menü aber anstandlos im Admin Menu Modul angezeigt.
Nach ein paar Vorinformationen trägt man die entsprechenden Zugangsdaten zur WordPressdatenbank ein. Anschließend bietet das Modul einige sehr nette Konvertierungsoptionen an:
Es lässt sich genau definieren wie die WordPress-Autoren der alten Beiträge auf bestehende Drupal Nutzer gemappt werden sollen.
Es kann eine Kategorie (Taxonomie) ausgewählt werden in die die WordPress-Kategorien importiert werden oder auch eine neue angelegt werden.
Es kann gewählt werden in welchen Nodetyp die Artikel importiert werden sollen. Dabei kann ein abweichender Nodetyp für die statischen WordPress Seiten (Pages) angegeben werden.
Der zu nutzende Eingabefilter kann ausgewählt werden.
Man kann entscheiden, ob Trackbacks übernommen werden sollen oder nicht.
Es lassen sich automatische Umleitungen von den alten zu den neuen URL's anlegen, wenn das Path Redirect Modul installiert ist. Dabei gibt es zusätzliche Optionen.
Es gibt für Profis die Möglichkeit auf jeden Inhalt eigene selbstdefinierte PHP Anweisungen durchzuführen.
Insgesamt ist die Funktionalität des Moduls wesentlich umfangreicher als die des "Conversion Programs".
Nach Start des Konvertierungsvorganges importierte das Modul meine alten WordPressbeiträge, -kommentare und -trackbacks anstandlos in die Kopie (sicher ist sicher) meiner neuen Drupalinstallation. Ein paar Kleinigkeiten blieben übrig. Auch bei dieser Methode wurden Sonderzeichen in den Artikeltiteln als HTML-Entitäten dargestellt. Und so lange man keine relativen Links für in den Artikeln eingebundene Bilder verwendet, so werden diese noch vom ursprünglichen Verzeichnis geladen. Wer seinen Blog nach der Umstellung unter derselben Adresse betreibt ist fein raus. Alle anderen müssen hier Hand anlegen oder sich an ein paar Suchen und Ersetzten Aktionen in der Datenbank herantrauen. Für Einsteiger ist in diesem Fall der Artikel "Suchen und Ersetzen in MySQL-Datenbanken" sehr empfehlenswert.
Fazit
Insgesamt gefällt mir das Modul sehr gut und ich hoffe, das es wieder aktiv weiterentwickelt wird und letztendlich vielleicht zu dem Importmodul schlechthin wird. Ich denke das würde Drupal sehr gut tun, wenn hier die Migrationshürde tiefer gelegt wird.
Tagged as:
Drupal,
Import,
Migration,
Webworking,
Wechsel,
WordPress,
Yacht
{ 5 comments… read them below or add one }
Ok, hört sich auf jeden Fall gut an, ich will auch in kürze eine zweite Seite von “Wordpress auf Drupal” umziehen, wenn es so wie beschrieben geht, hab ich mir viel “Handarbeit” gespart
Danke für die Anleitung.
Gruß
Danke für Deine beiden Artikel zur Migration.
Es hat mir sicherlich deutlich geholfen, zumindest etliche Fehltests erspart. Aktuell gibt es ein aktualisiertes offizielles Modul für Drupal 5.x (aber noch dev-Version).
Hallo Robert,
meinst du mit “offizielles Modul” ein weiteres drittes Modul zum Import oder, dass das im Artikel erwähnte Modul weiter entwickelt wird?
btw: Nettes Design deiner Seite – man sieht nicht, dass Drupal dahinter steckt. Was hat Dich bewogen auf Drupal zu wechseln?
Hallo Nils,
1.
Ich meinte das wp2drupal Modul. Allerdings brauchte ich einige Anläufe, um etwa die originalen Datums der Veröffentlichung beizubehalten. Auch die Inhaltstypen klappten erst, als ich Blogposts im Angebot hatte.
2.
Ich bin mit dem Umzug aber noch nicht ganz fertig (aktuell noch WP: wirtschaftsbrief.info).
Hintergrund war ein notwendiges Redesign und aufgrund der stark erweiterten und angepassten WP-Dinger unendliche Updates. Auch sind manche Fachautoren absolute Laien, die waren nicht in der Lage Bilder einzubinden etc, obwohl ich den Editor schon stark angepasst habe.
Da bietet Drupal so viel mehr Zuschnitt, aber das dauert nun wieder, da man eben alles erst mal anlegen, konfigurieren muss (ich sag nur Backend!)
3.
).
Danke, das Finanzen-Design ist allerdings nur ein vorläufiges, da mein Designer grad mit Kundenseiten ausgelastet ist (mehr bring ich also nicht zusammen
Ich habe viel Aufwand betrieben, um saubere URLs und kaum bis keinen doppelten Inhalt zu produzieren.
Jetzt kämpfe ich im Bereich Blog mit Drupal und Wordpress-Funktionalität (gar nicht ohne die Einrichtung).
Detaillierte Erfarungen folgen.
Hätte ich Deinen “mehr”-Post früher gelesen, wären meine “weiterlesen” nun inline.
Beim nächsten Projekt dann.
Again, thanks for the reference. I’d like to point out that now I’ve created a conversion program that accounts for Wordpress 2.3 – 2.6 to Drupal 5.x or 6.x. Also some improvements on the previous version in that you now have options as to the type of node types to be converted to, published or not, html entities in subject fields now resolved to correct symbols, plus a few other features.
I’ve changed websites and now the converter can be found here http://prime357.net and the manual for the new version is here http://prime357.net/node/63.
{ 1 trackback }