Wie man eine WordPress-Site nach Drupal migriert

Bei diesem Text handelt es sich um eine maschinell erstellte Übersetzung. Eine überarbeitete Version ist in Planung.

Einführung

Erfahren Sie, wie Sie eine WordPress-Site mit dem Modul WordPress Migrate Drupal nach Drupal migrieren können. Dieses Modul basiert auf dem universellen Migrate-Modul für die Migration von Inhalten in Drupal und wurde entwickelt, um einen WordPress-Blog-Export (WXR-Datei) in eine Drupal-Site zu konvertieren, Drupal-Taxonomien zu erstellen, Benutzerkonten zu erstellen, Formatkommentaren und mehr.

Dieses Tutorial enthält eine Schritt-für-Schritt-Anleitung für den Export einer WordPress-Seite, die Installation von Drupal, die Installation des WordPress Migrate Plug-Ins und den Import einer WordPress-Seite.

Anforderungen

  • Eine bestehende WordPress-Seite.
  • Ein Server mit Linux (CentOS 7 oder Ubuntu 14.04)

Exportieren der WordPress-Seite

Melden Sie sich im Admin-Bereich an. Klicken Sie auf Extras > Exportieren.

Wordpress to Drupal 1: Export Wordpress data

Wählen Sie Alle Inhalte aus und klicken Sie dann auf Exportdatei herunterladen. Speichern Sie die Datei auf Ihrem Computer.

Wordpress to Drupal 2: Download export file

Erstellen eines Backups

Wir empfehlen Ihnen, ein vollständiges Backup zu erstellen, indem Sie den gesamten Inhalt Ihres Hauptverzeichnisses der Website per FTP herunterladen. Auf diese Weise können Sie die Migration bei Bedarf "zurücksetzen".

Wenn Sie auf ein Problem mit der Drupal-Migration stoßen, löschen Sie einfach alle Drupal-Dateien und laden Sie neue Kopien der Originaldateien hoch.

Drupal installieren

Verwenden Sie die folgenden Schritte, um Drupal in das gleiche Verzeichnis zu installieren, in dem sich die WordPress-Seite befindet. Dies führt dazu, dass Ihre WordPress-Seite nicht mehr verfügbar ist.

Nach der Installation von Drupal können Sie weiterhin auf Ihr WordPress-Administrationspanel zugreifen.(http://example.com/wp_admin). Allerdings ist die Website selbst (http://example.com) wird nur die neue Drupal-Seite angezeigt.

Aus diesem Grund ist es am besten, diese Migration durchzuführen, wenn der Traffic auf Ihre Website gering ist und Sie genügend Zeit haben, um alle Probleme zu lösen, die während der Migration auftreten können.

Bevor Sie fortfahren, stellen Sie sicher, dass Sie alle Ihre WordPress-Dateien gesichert haben.

Überprüfen der Serveranforderungen

Drupal 7 hat eine Reihe von Serveranforderungen. Die aktuellsten Cloud Server mit Linux erfüllen oder übertreffen alle Anforderungen von Drupal, aber es ist ratsam, diese zu überprüfen, bevor Sie Drupal installieren.

Überprüfen Sie die PHP-Version

Drupal 7 erfordert PHP 5.2.5 oder höher. Um Ihre PHP-Version zu überprüfen, gehen Sie von der Kommandozeile aus in Ihr Webverzeichnis und erstellen Sie eine phpinfo.php-Datei:

sudo nano phpinfo.php

Fügen Sie das Folgende in diese Datei ein:

<?php
phpinfo();
?>

Hinweis: Löschen Sie diese Datei aus Sicherheitsgründen, nachdem Sie die PHP-Version überprüft haben.

Speichern und beenden Sie die Datei und betrachten Sie sie dann in einem Webbrowser. Die PHP-Version wird oben auf der Seite angezeigt.

php version

Im obigen Beispiel läuft auf dem Server PHP Version 5.4.16.

Überprüfen Sie die MySQL/MariaDB-Version.

Drupal 7 erfordert MySQL 5.0.15/MariaDB 5.1.44 oder höher. Um Ihre Version von MySQL/MariaDB zu überprüfen, melden Sie sich mit dem Befehl am Client an:

sudo mysql -u root -p

Die Versionsnummer wird in der Willkommensnachricht angezeigt.

MySQL version

Im obigen Beispiel läuft auf dem Server die MySQL-Version 5.5.47.

Überprüfen der Apache-Version

Drupal 7 erfordert Apache Version 1.3 oder höher. Ihre Version des Apache finden Sie mit den folgenden Befehlen:

CentOS und Red Hat:

sudo httpd -v

Ubuntu and Debian:

sudo apache2 -v

Dadurch werden Informationen über Ihren Apache-Server zurückgegeben.

Apache version

Im obigen Beispiel läuft auf dem Server Apache Version 2.4.6.

Herunterladen und Entpacken der Drupal-Software

Sobald Sie sichergestellt haben, dass Ihr Server die Anforderungen für Drupal 7 erfüllt, ist der nächste Schritt, die Software herunterzuladen und auf Ihrem Server zu entpacken.

Verbinden Sie sich mit Ihrem Server über SSH und gehen Sie zum Dokumentenstamm Ihrer Website. Laden Sie die aktuelle Version von der Drupal-Website herunter, indem Sie den Befehl verwenden:

sudo wget [download URL]

Um die Download-URL zu finden,  besuchen Sie die aktuelle Release-Seite auf der Drupal-Website.  Gehen Sie zur "Empfohlenen Version" für Drupal Core 7.x.

Kopieren Sie auf der nächsten Seite den Link "Download .tar.gz". Klicken Sie dazu mit der rechten Maustaste auf den Download-Button und wählen Sie "Link-Speicherort kopieren". Sie können diese URL dann in die Befehlszeile einfügen, indem Sie auf Umschalt + Einfügen klicken.

Zum Beispiel, um die aktuelle stabile Version von Drupal 7 ab der Veröffentlichung dieses Artikels (Drupal 7.50) herunterzuladen, lautet der Befehl:

sudo wget https://ftp.drupal.org/files/projects/drupal-7.51.tar.gz

Entpacken Sie diese Datei mit dem Befehl:

sudo tar --strip-components=1 -xvzf [file name]

Tipp: Sie können die Vervollständigung der Registerkarte verwenden, um diesen Vorgang zu erleichtern. Gib sudo tar -xvf drup ein und drücke dann Tab. Die Shell füllt automatisch den Rest des Dateinamens auf der Kommandozeile aus.

Um beispielsweise die oben heruntergeladene Datei zu entpacken, lautet der Befehl:

Nachdem der Inhalt der Drupal-Datei entpackt wurde, stellen Sie das Eigentum der Dateien auf den Apache-Benutzer ein:

CentOS 7:

sudo chown -R apache:apache *

Ubuntu und Debian:

sudo chown -R www-data:www-data *

Sie können nun die .tar.gz-Datei löschen:

sudo rm [file name]

In diesem Beispiel ist der Befehl:

sudo rm drupal-7.51.tar.gz

Erstellen der Datenbank

Als nächstes müssen Sie eine Datenbank erstellen. Verbinden Sie sich per SSH mit Ihrem Server und melden Sie sich mit dem Befehl bei MySQL/MariaDB an:

sudo mysql –u root –p

Nachdem Sie das MySQL/MariaDB-Root-Benutzerpasswort eingegeben haben, werden Sie am MySQL/MariaDB-Client angemeldet.

Erstellen Sie eine Datenbank mit dem Befehl:

CREATE DATABASE [database name];

Ersetzen Sie [Datenbankname] durch den Namen, den Sie für Ihre neue Datenbank verwenden möchten. Wenn Sie beispielsweise Ihre Datenbank my_drupal_site benennen möchten, lautet der Befehl:

CREATE DATABASE my_drupal_site;

Erstellen Sie einen Benutzer für diese Datenbank und vergeben Sie alle Berechtigungen mit dem Befehl:

GRANT all ON [database name].* TO [database username]@localhost IDENTIFIED BY '[database user password]';

Ersetzen:

  • [Datenbankname] mit dem Namen Ihrer Datenbank.
  • [Datenbankbenutzername] mit dem Benutzernamen, den Sie für Ihre Datenbank erstellen möchten.
  • [Datenbankbenutzerpasswort] mit einem Passwort für diesen Benutzer. Hinweis: Achten Sie darauf, dem Benutzer ein sicheres Passwort zu geben.

Um beispielsweise einen Benutzer namens my_drupal_user mit dem Passwort Fr4i*Re!2 zu erstellen und den Benutzern Zugriffsrechte auf die Datenbank my_drupal_site zu geben, lautet der Befehl:

GRANT ALL ON my_drupal_site.* TO my_drupal_user@localhost IDENTIFIED BY 'Fr4i*Re!2';

Wenn Sie fertig sind, verlassen Sie die Datenbank mit dem Befehl:

quit;

Schließen Sie die Installation ab

Als nächstes wechseln Sie zu einem Browser und gehen zu Ihrer Website. Sie werden die Drupal-Installationsseite sehen. Wählen Sie Standard und klicken Sie dann auf Speichern und Fortfahren.

Install Drupal: Installation Page

Klicken Sie auf der nächsten Seite auf Speichern und Weiter.

Install Drupal: Installation Page

Wählen Sie auf der nächsten Seite MySQL, MariaDB oder ähnliches aus und geben Sie dann die Details des Datenbanknamens, Datenbankbenutzers und Passworts ein, die Sie im vorherigen Schritt erstellt haben. Klicken Sie dann auf Speichern und Weiter.

Install Drupal: Installation Page

Auf der nächsten Seite werden Sie aufgefordert, einige Website-Details auszufüllen und ein Drupal Site Maintenance (admin) Konto zu erstellen. Füllen Sie alle erforderlichen Felder aus, scrollen Sie dann nach unten und klicken Sie auf Speichern und Weiter.

Install Drupal: Installation Page

Nun, da die Installation abgeschlossen ist, können Sie auf Ihre Hauptseite gehen und Drupal 7 verwenden.

Install Drupal: Installation Page

Installieren Sie das WordPress Migrate-Modul.

Zuerst müssen Sie das Migrate-Modul installieren, was eine Voraussetzung für das WordPress Migrate-Modul ist.

Gehen Sie zur Seite Drupal Project für das Migrate-Modul. Scrollen Sie die Seite nach unten zum Abschnitt Downloads, um den Download für den 7.x-Zweig von Drupal zu finden.

Wordpress to Drupal 6: Get download URL

Klicken Sie mit der rechten Maustaste auf den Download-Link .tar.gz und kopieren Sie die URL.

Als nächstes loggen Sie sich mit Ihrem administrativen Login in Ihre Drupal-Seite ein und klicken Sie auf Module auf der oberen Seitenleiste.

Wordpress to Drupal 3: Click Modules

Klicken Sie auf der Seite Module auf Neues Modul installieren.

Wordpress to Drupal 4: Install new module

Fügen Sie die URL für den Download von .tar.gz in das Feld Install from a URL ein und klicken Sie auf Install.

Wordpress to Drupal 7: Install from a URL

Wiederholen Sie diesen Vorgang, um das WordPress Migrate Modul zu installieren, indem Sie die Download-URL auf  der WordPress Migrate Drupal Projektseite verwenden.

In einem letzten Schritt müssen Sie die Module aktivieren. Kehren Sie zur Seite Module zurück und scrollen Sie nach unten zum Abschnitt Migration, in dem die migrationsbezogenen Module aufgelistet sind.

Aktivieren Sie die Kontrollkästchen, um das Modul Migrieren, Beispiel migrieren, Benutzeroberfläche migrieren und Migration aus WordPress auszuwählen, und klicken Sie dann auf Konfiguration speichern.

Wordpress to Drupal 8: Save configuration

Migration der WordPress-Seite

Erstellen eines privaten Verzeichnisses

Zuerst müssen Sie ein Verzeichnis für die Speicherung Ihrer privaten Dateien erstellen. Aus Sicherheitsgründen empfiehlt Drupal, dieses Verzeichnis außerhalb des Dokumentenstamms Ihrer Website zu erstellen.

Wenn der Dokumentenstamm Ihrer Website beispielsweise /var/www/example.com/html ist, können Sie ein Verzeichnis /var/www/example.com/drupal erstellen. Um dies von einer SSH-Sitzung aus zu tun, verwenden Sie den Befehl:

sudo mkdir /var/www/example.com/drupal

CentOS 7:

sudo chown -R apache:apache /var/www/example.com/drupal

Ubuntu 14.04:

sudo chown -R www-data:www-data /var/www/example.com/drupal

Bearbeiten Sie die php.ini-Datei bei Bedarf.

Wenn die WordPress-Export-XML-Datei mehr als 2 MB groß ist, müssen Sie die php.ini-Datei Ihres Servers bearbeiten, um größere Dateiuploads zu ermöglichen. Andernfalls schlägt die Migration mit der Meldung "Die Datei konnte nicht hochgeladen werden, höchstwahrscheinlich weil die Dateigröße die konfigurierte Grenze von 2 MB überschreitet" fehl.

Der erste Schritt ist das Auffinden der Datei php.ini. Der einfachste Weg, dies zu tun, ist, eine phpinfo.php-Seite im Dokumentenstamm Ihrer Website zu erstellen. In unserem Beispiel lautet die Dokumentwurzel der Website /var/wwww/example.com/html:

sudo nano /var/www/example.com/html/phpinfo.php

Fügen Sie das Folgende in diese Datei ein:

<?php phpinfo(); ?>

Speichern und beenden Sie die Datei und betrachten Sie sie dann in einem Browser. Es wird alle PHP-Einstellungen Ihres Servers auflisten. Scrollen Sie nach unten, bis Sie den Abschnitt Ladbare Konfigurationsdatei finden.

Wordpress to Drupal 15: Find php.ini file path
sudo nano /etc/php.ini

Scrollen Sie nach unten, bis Sie einen Abschnitt mit der Aufschrift:

; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 2M

Ändern Sie den 2M-Wert auf eine höhere Zahl. Aus Sicherheitsgründen ist es am besten, es nur hoch genug zu halten, um Ihre WordPress XML-Datei hochzuladen, und nicht höher. Du kannst jederzeit wiederkommen und diese Datei in der Zukunft bearbeiten, wenn du größere Uploads zulassen musst.

Für dieses Beispiel verdoppeln wir die maximale Upload-Größe auf 4 MB:

; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 4M

Speichern und beenden Sie die Datei und starten Sie dann den Webserver neu, damit die Änderungen wirksam werden.

CentOS 7:

sudo systemctl restart httpd

Ubuntu 14.04:

sudo service apache2 restart

Aus Sicherheitsgründen ist es am besten, die Seite phpinfo.php zu löschen, nachdem Sie fertig sind.   

Die Migration abschließen

Klicken Sie im Administrationsbereich Ihrer Drupal-Site auf Inhalt.

Wordpress to Drupal 9: Click Content

Klicken Sie auf die Registerkarte Migrieren.

Wordpress to Drupal 10: Click Migrate

Click Import from WordPress.

Wordpress to Drupal 11: Click Import from WordPress

Für den Upload müssen Sie einen privaten Dateipfad konfigurieren. Klicken Sie auf den Link, um zur Seite Konfiguration > Medien zu gelangen.

Wordpress to Drupal 12: Go to Configuration > Media

Geben Sie den vollständigen Pfad zu dem von Ihnen erstellten privaten Verzeichnis ein. Klicken Sie dann auf Konfiguration speichern.

Wordpress to Drupal 13: Save Configuration

Ihre Konfiguration wird gespeichert und Sie gelangen zurück zur Seite Migrieren. Klicken Sie auf die Schaltfläche Durchsuchen, um die WordPress Export (WXR) XML-Datei auf Ihrem Desktop-Computer zu finden und auszuwählen, und klicken Sie dann auf Weiter.

Wordpress to Drupal 14: Select WXR file

Im nächsten Schritt fragt Drupal, ob Sie Ihre WordPress-Benutzer importieren lassen oder alle Beiträge einem neuen Drupal-Benutzer zuordnen möchten. Die meisten Leute werden diese Option auf Ja setzen wollen und auf Weiter klicken.

Der nächste Schritt ist ähnlich und betrifft WordPress-Autoren. Noch einmal, die meisten Leute werden diese Option auf Ja setzen wollen und auf Weiter klicken.

Wordpress to Drupal 16: Import authors

Als nächstes wird Drupal fragen, wie Sie den WordPress-Inhalt importieren möchten. In den meisten Fällen ist es am besten, WordPress-Blogbeiträge als Typ Artikel und WordPress-Seiten als Typ Basisseite zu importieren.

Wordpress to Drupal 17: Import content

Der nächste Importschritt umfasst die WordPress-Blogbeiträge. Wenn Sie alle Ihre gewünschten Einstellungen ausgewählt haben, scrollen Sie nach unten und klicken Sie auf Weiter.

Wordpress to Drupal 18: Import blog posts

Schritt 6 beinhaltet die Handhabung von WordPress-Seiten. Wenn Sie alle Ihre gewünschten Einstellungen ausgewählt haben, scrollen Sie nach unten und klicken Sie auf Weiter.

Wordpress to Drupal 19: Import pages

Schritt 7 ist eine Überprüfung und ermöglicht es Ihnen, sicherzustellen, dass Sie alle Importeinstellungen für Ihre Website korrekt ausgewählt haben. Wenn Sie sicher sind, dass alles korrekt ist, klicken Sie auf Importeinstellungen speichern und führen Sie den Import durch.

Wordpress to Drupal 20: Finish import

Der Importvorgang kann je nach Ihrer Verbindung und der Größe der Importdatei einige Zeit dauern. Achten Sie darauf, das Fenster nicht zu schließen, während der Prozess läuft.