Verschieben von WordPress Verschieben einer Website in ein Netzwerk mit mehreren Standorten

Vor ungefähr einem Jahr hatte ich eine Hosting-Katastrophe. Der Server meines Hosting-Providers wurde gehackt, und es dauerte über eine Woche, bis das Problem erkannt und behoben war.

In der Zwischenzeit wurden die Websites meiner Kunden auf eine Dating-Website umgeleitet, und ich erhielt Telefonanrufe, in denen ich aufgefordert wurde, die Dinge sofort zu beheben.

Ich musste schnell handeln. Aber anstatt einfach alle Sites auf einen neuen Server zu verschieben (und einen neuen Hosting-Provider, könnte ich hinzufügen), entschied ich mich, die Sites so zu verschieben, dass ich sie leichter wieder verschieben könnte, falls Ich musste Daher habe ich eine Reihe von Websites mit einer eigenen WordPress-Installation in mein vorhandenes Multisite-Netzwerk verschoben, das ich bereits auf den neuen Server verschoben hatte.

Das Verschieben einzelner Standorte in ein Multisite-Netzwerk ist komplizierter als nur eine Neuinstallation an einem einzelnen Standort. Dies ist jedoch nicht unmöglich. In diesem Tutorial zeige ich Ihnen zwei Methoden: Plugins verwenden und manuell.

Was du brauchen wirst

Um diesem Tutorial zu folgen, benötigen Sie:

  • Eine Installation von WordPress, auf der eine vorhandene Site ausgeführt wird.
  • Ein Multisite-Netzwerk, dessen Netzwerkadministrator Sie sind.
  • Für manuelle Verschiebungen benötigen Sie einen FTP-Client, einen Code-Editor und Zugriff auf phpMyAdmin.

Verwenden eines Plugins zum Verschieben einer Site in Multisite

Wenn für Ihre Site nicht viel Konfiguration über die Plugin-, Design- oder Site-Einstellungsbildschirme eingerichtet ist, können Sie sie möglicherweise mit dem WordPress Importer-Plugin erfolgreich verschieben. Wenn die Site über Widgets verfügt, können Sie ihre Einstellungen mithilfe des Plugin Widget-Importer / Exporter kopieren.

Wenn Sie jedoch viele maßgeschneiderte Konfigurationen mithilfe von Einstellungen oder Optionsbildschirmen oder des Designanpassers hinzugefügt haben, wird keine davon kopiert. In diesem Fall müssen Sie eine manuelle Bewegung ausführen.

Ausführliche Informationen zur Verwendung dieser Plugins zum Verschieben Ihrer Site finden Sie in meinem früheren Tutorial zur Verwendung von Plugins zum Verschieben einer WordPress-Site. Der Vorgang für das Verschieben eines Standorts in ein Multisite-Netzwerk ist genau der gleiche wie für einen einzelnen Standort.

Manuelles Migrieren einer Site in mehrere Standorte

Die Site, die Sie in Multisite umziehen, enthält drei Komponenten, die Sie von der alten Site kopieren müssen:

  • Theme- und Plugin-Dateien - Sie können diese Dateien kopieren oder im Netzwerk installieren, wenn sie nicht bereits installiert sind
  • Uploads-Sie finden diese in WP-Inhalt / Uploads In Ihrer alten Site müssen Sie sich in der Multisite-Installation befinden wp-content / uploads / sites / XX, woher XX ist die ID Ihrer neuen Site im Netzwerk (mehr davon in Kürze)
  • Datenbanktabellen

Hinweis: Wenn das Multisite-Netzwerk, in das Sie Ihre Site verschieben, vor WordPress 3.5 erstellt wurde, ist es nicht mit einem Websites Mappe. Stattdessen hast du eine blogs.dir Ordner in WP-Inhalt mit allen Upload-Dateien für die Unterwebsites. Dieser Ordner enthält einen nummerierten Ordner für die von Ihnen erstellte Site, in die Sie stattdessen Ihre Dateien kopieren. Ich werde das unten ausführlicher behandeln.

Zuerst sichern

Bevor Sie so etwas tun, ist es eine gute Idee, die von Ihnen bewegte Site zu sichern und Ihre Multisite-Installation. Verwenden Sie Ihr bevorzugtes Backup-Plugin oder eine Kombination aus FTP und phpMyAdmin, wenn Sie es vorziehen, manuell zu arbeiten.

Sie verwenden diese Sicherungskopie, um die relevanten Dateien auf Ihre neue Site zu kopieren, und Sie können sich auch beruhigt fühlen, falls Sie Probleme haben.

Erstellen einer neuen Site im Netzwerk

Bevor Sie Ihre alte Site in Multisite migrieren können, müssen Sie eine neue leere Site im Netzwerk erstellen. Später importieren Sie alles von Ihrer alten Site in diese neue Site.

Erstellen Sie die Site auf normale Weise, indem Sie zu gehen Netzwerkadministrator> Sites, Klicken Neue hinzufügen, und geben Sie die Details Ihrer neuen Site ein.

Ermitteln der ID Ihrer neuen Site im Multisite-Netzwerk

Jeder Standort in einem Netzwerk mit mehreren Standorten verfügt über eine eindeutige numerische ID. Dies wird verwendet, um den Ordner in zu identifizieren WP-Inhalt / Uploads / Websites Verzeichnis (oder wp-content / blogs.dir Wenn Ihr Multisite-Netzwerk älter ist (siehe oben), und zum Identifizieren der Datenbanktabellen für diesen Standort.

Finden Sie dies, indem Sie zu gehen Netzwerkadministrator> Sites und dann das auswählen Bearbeiten Option für die gerade erstellte Site. Die URL, zu der WordPress führt, gibt Ihnen die ID der Website. Die URL sollte in dem Formular sein http://mynetwork.com/wp-admin/network/site-info.php?id=XX.

XX ist die ID Ihrer Site und der Name des Ordners, der seine Dateien enthält, sowie das Präfix für die Namen der Datenbanktabellen.

Dateien auf die neue Site hochladen

Identifizieren Sie die Plugins, die von Ihrer alten Site verwendet werden, und installieren Sie sie (sofern noch nicht installiert) in Ihrem WordPress-Netzwerk über das Plugins Bildschirm oder laden Sie sie hoch WP-Inhalt / Plugins von der Sicherung, die Sie von Ihrer alten Site erstellt haben.

Machen Sie dasselbe für alle Designs, die Ihre Site verwendet, und kopieren Sie sie von Ihrer Sicherung in die WP-Inhalt / Themen Verzeichnis Ihres Netzwerks oder installieren Sie sie einfach neu.

Hinweis: Designs und Plugins werden an einem Ort für alle Standorte in einem Multisite-Netzwerk gespeichert. Sie müssen sie nicht an einem für den neuen Standort spezifischen Ort speichern.

Kopieren Sie die Uploads von Ihrer alten Website zur neuen. Die Dateien, die Sie kopieren müssen, befinden sich in WP-Inhalt / Uploads in deiner alten Seite. Wo Sie sie hochladen, hängt davon ab, wie alt das Netzwerk ist:

  • Wenn das Netzwerk nach WordPress 3.5 erstellt wurde, hat es eine Websites Ordner in WP-Inhalt / Uploads. Suchen Sie den Unterordner mit der ID Ihrer Site und laden Sie den Inhalt der Website hoch WP-Inhalt / Uploads Ordner von Ihrer alten Site zu diesem.
  • Wenn das Netzwerk ein älteres ist und eine blogs.dir Ordner, der auch einen Ordner mit der ID Ihrer Site enthält. Dann wird ein Unterordner aufgerufen Dateien. Kopieren Sie den Inhalt der WP-Inhalt / Uploads Ordner von Ihrer alten Site zur Dateien Mappe.

Hinweis: Möglicherweise müssen Sie alle Ordner löschen, die WordPress für Ihre neue Site in erstellt hat Websites oder blogs.dir Ordner, um Kollisionen zu vermeiden.

Wenn Sie all dies getan haben, aktivieren Sie alle Designs und Plugins auf Ihrer neuen Site.

Exportieren der Tabellen Ihrer alten Site

WordPress Multisite verwendet separate Datenbanktabellen für jeden Standort im Netzwerk. Anstatt die Posts für Ihre Site in zu speichern wp_posts, es speichert es zum Beispiel in wp_XX_posts, woher XX ist die ID Ihrer Site.

Es werden jedoch keine separaten Tabellen für Benutzerdaten verwendet. Diese werden in einer Tabelle gespeichert wp_users und wp_usermeta Tabelle für das gesamte Netzwerk.

Das bedeutet, dass Sie alle Tabellen mit Ausnahme der beiden Benutzertabellen von Ihrer alten Site kopieren müssen und die Namen der Dateien, die Sie kopieren, ändern müssen. Leider müssen Sie die Benutzer manuell auf der neuen Site mithilfe der WordPress-Verwaltungsbildschirme erstellen.

Weitere Informationen zu Multisite- und Datenbanktabellen finden Sie in diesem Tutorial zur WordPress-Datenbank und zu Multisite.

Im PhpMyAdmin Klicken Sie für Ihre alte Site auf die Schaltfläche Struktur Tab. Wählen Sie dann alle Tabellen außer aus wp_users und wp_usermeta. Ein Beispiel ist unten gezeigt.

Klicke auf das Mit Ausgewählten: Dropdown-Box auswählen Export und dann Gehen. Dies wird einen Download durchführen sql Datei auf Ihrem Rechner mit dem Inhalt dieser Tabellen.

Benutzer hinzufügen

Wie ich oben erwähnt habe, kann man das nicht kopieren wp_users und wp_usermeta Tabellen, da diese im Multisite-Netzwerk dupliziert werden. 

Bevor Sie mit dem Importieren der Tabellen beginnen, die Sie gerade heruntergeladen haben, richten Sie in Ihrer neuen Site dieselben Benutzer ein wie in Ihrer alten. Beachten Sie, dass sie in der Datenbank des Multisite-Netzwerks andere IDs haben als an der alten Site. Dies kann zu Ungenauigkeiten beim Zuweisen von Beiträgen zu Autoren führen. Sie müssen dies am Ende korrigieren, was ich später besprechen werde.

Bearbeiten der Datenbanktabellen

Machen Sie eine Kopie der sql Datei, die auf Ihren Computer heruntergeladen wurde, und geben Sie einen Namen, der Sie darüber informiert, was es ist (z. B. durch Hinzufügen) Kopieren zu seinem Namen). Öffnen Sie es in einem Code-Editor.

Links bearbeiten

Ändern Sie alle Instanzen der Domäne des Standorts im Multisite-Netzwerk in ihre neue Multisite-Domäne. Zum Beispiel, wenn Ihre Site sich auf http://mysite.com, Ändern Sie es in http://network.com/mysite. Wenn Ihr Netzwerk Subdomains verwendet, müssen Sie es in ändern http://mysite.network.com. Speichern Sie Ihre Datei.

Bearbeiten von Tabellenreferenzen

Die Datenbanktabellen Ihrer neuen Multisite-Site benötigen Präfixe für die Site-ID. In deiner sql Datei, ersetzen Sie alle Instanzen von wp_ mit wp_XX_, woher XX ist Ihre Site-ID.

Speichern Sie jetzt die sql Datei.

Tabellen in die neue Datenbank importieren

Nachdem Sie Ihre Designs und Plugins installiert und Ihre Daten exportiert haben, müssen Sie die Datenbanktabellen in das Multisite-Netzwerk importieren.

Vorhandene Tabellen löschen

Bevor Sie die Tabellen von Ihrer alten Site hochladen, müssen Sie die doppelten löschen, die WordPress Ihrer neuen Site hinzugefügt hat.

Löschen Sie in phpMyAdmin alle Tabellen, denen das Präfix vorangestellt ist wp_XX_, woher XX ist Ihre Site-ID. Dazu gehören die folgenden, aber möglicherweise auch Tabellen, die von Plugins erstellt werden:

  • wp_XX_commentmeta
  • wp_XX_kommentare
  • wp_XX_links
  • wp_XXoptions
  • wp_postmeta
  • wp_posts
  • wp_terms
  • wp_term_relationships
  • wp_term_taxonomy

Wählen Sie diese Tabellen aus (plus beliebige wp_XX_ Tabellen, die mit Plugins erstellt wurden), klicken Sie auf Mit Ausgewählten: Dropdown-Menü auswählen Fallen und dann Ja.

Das folgende Beispiel enthält eine zusätzliche Tabelle, die von einem Plugin erstellt wurde:

Wichtig: Wenn Ihre alte Site über von Plugins erstellte Datenbanktabellen verfügte, müssen Sie dieselben Plugins im Netzwerk installieren, bevor Sie die neue Datenbank importieren. Der Import enthält diese Tabellen, die erst funktionieren, wenn das Plugin installiert wurde.

Hochladen der Datenbanktabellen

Laden Sie als Nächstes die von Ihnen bearbeitete Datenbank hoch:

  • Drücke den Einführen Tab.
  • Drücke den Datei wählen Taste.
  • Wählen Sie die von Ihnen bearbeitete SQL-Datei aus und klicken Sie auf Wählen oder OK.
  • Drücke den Gehen Taste.
  • Nach einiger Zeit (abhängig von der Größe Ihrer Datenbank) wird eine Meldung angezeigt, dass der Upload erfolgreich abgeschlossen wurde.

Letzte Schritte

Leeren Sie den Cache Ihres Browsers. Dadurch werden Probleme vermieden, die möglicherweise auftreten, wenn der Browser Inhalte von der alten Site zwischengespeichert hat.

Melden Sie sich jetzt beim WordPress-Administrator für die Remote-Site an. Wenn Sie die Benutzertabellen verschoben haben, sind Ihre Anmeldedaten die gleichen wie für Ihre alte Site. Wenn Sie dies nicht getan haben, handelt es sich um das, was Sie bei der Installation von WordPress am neuen Speicherort angegeben haben.

Besuche den Permalinks Bildschirm für Ihre neue Site und schalten Sie die Permalinks wieder ein.

Schau dir deine Hauptsache an Beiträge und überprüfen, welche Autoren ihnen zugewiesen wurden - es besteht eine gute Chance, dass dies falsch ist. Sie können dies in der Masse ändern:

  1. Wählen Sie alle Beiträge aus, die einem bestimmten Autor zugewiesen werden sollen.
  2. Klicken Massenaktionen und Bearbeiten.
  3. Klicken Sich bewerben.
  4. Wählen Sie im angezeigten Fenster den richtigen Autor aus dem Dropdown-Feld aus.
  5. Klicken Aktualisieren.

Der Bearbeitungsbereich wird im Screenshot angezeigt:

Wenn Ihre Site über Seiten und benutzerdefinierte Beitragstypen verfügt, wiederholen Sie die obigen Schritte für diese.

Stellen Sie sicher, dass alle Links in Ordnung sind und sich Widgets und Plugins wie gewünscht verhalten. Wenn dies nicht der Fall ist, können Sie entweder schrittweise durch den Vorgang zurückgreifen und Ihre Backups dort verwenden, wo Sie dies benötigen, oder einfach die Plugins und Widgets von Ihrem neuen Standort aus einrichten.

Einrichten der Domänenzuordnung

Wenn Sie bei der Installation eines einzelnen Standorts den gleichen Domänennamen beibehalten möchten, den Sie für den Standort verwendet haben, können Sie dazu das Plug-in für Domänenzuordnung verwenden. Installieren Sie das Plugin, aktivieren Sie es für Ihr Netzwerk und befolgen Sie dann die Anweisungen des Plugins, um es einzurichten. Dazu müssen Sie die DNS-Einstellungen Ihrer Domäne ändern.

Zusammenfassung

Das Verschieben einer Site in ein WordPress Multisite-Netzwerk von einer eigenen Installation aus kann nicht schnell oder ohne sehr gründlich durchgeführt werden, aber es ist möglich, und ich habe es einige Male gemacht. Folgen Sie einfach den hier angegebenen Schritten und stellen Sie sicher, dass Sie im Falle von Problemen Sicherungskopien haben, und es sollte für Sie reibungslos funktionieren.