Zum Inhalt

Blognetzwerk (Multisite/Multiblog)

wpShopGermany lässt sich in einem WordPress-Blognetzwerk (Multisite) betreiben. Sie entscheiden dabei, ob alle Seiten des Netzwerks einen gemeinsamen Shop nutzen oder ob jede Seite einen eigenen Shop mit eigenen Produkten, Einstellungen und Bestellungen erhält.

Vorher testen

Nicht jeder Provider unterstützt ein Blognetzwerk reibungslos. Wenn Sie ein bestehendes Live-System in ein Netzwerk umwandeln, probieren Sie das zuerst auf einer Testdomain oder in einem separaten Testsystem aus und legen Sie vorher eine vollständige Sicherung (Dateien und Datenbank) an.

Blognetzwerk in WordPress einrichten

Die folgenden Schritte beschreiben die Einrichtung des Netzwerks in WordPress selbst. Ausführlich erklärt WordPress das in seiner Dokumentation unter „Create a Network“.

  1. WordPress wie gewohnt installieren (wp-config-sample.php anpassen und als wp-config.php speichern, Installation im Browser aufrufen).

    WordPress-Installation

  2. wpShopGermany installieren und den Shop mit einem Produkt grob einrichten.

    Datenbanktabellen nach der Installation

  3. In der wp-config.php das Netzwerk erlauben:

    define('WP_ALLOW_MULTISITE', true);
    

    Eintrag WP_ALLOW_MULTISITE in der wp-config.php

  4. Alle Plugins deaktivieren.

  5. Unter Werkzeuge → Netzwerk-Einrichtung festlegen, ob die Seiten über Subdomains oder Unterverzeichnisse erreichbar sein sollen. Diese Entscheidung lässt sich später nicht mehr ändern.

    Auswahl Subdomains oder Unterverzeichnisse

    Netzwerk-Einrichtung in WordPress

  6. Netzwerk-Titel und Administrator-E-Mail-Adresse prüfen und auf Installieren klicken. WordPress zeigt danach die Zeilen, die Sie in wp-config.php und .htaccess eintragen müssen. Sichern Sie beide Dateien vorher. In die wp-config.php gehören z. B. diese Zeilen (bei Unterverzeichnissen, Domain angepasst):

    define('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', false);
    define('DOMAIN_CURRENT_SITE', 'shop.test');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);
    

    Die Regeln in der .htaccess sehen etwa so aus (bei Unterverzeichnissen):

    # BEGIN WordPress
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    
    # add a trailing slash to /wp-admin
    RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
    
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
    RewriteRule . index.php [L]
    
    # END WordPress
    
  7. Nach erneuter Anmeldung erreichen Sie über Meine Websites → Netzwerkverwaltung die zentrale Verwaltung. Unter Websites → Neue hinzufügen legen Sie weitere Seiten an (Adresse, Titel, Administrator-E-Mail). Mit Unterverzeichnissen wäre eine neue Seite „en“ z. B. unter https://shop.test/en/ erreichbar; sie erscheint danach unter Meine Websites mit eigenem Dashboard.

    Neue Website im Netzwerk anlegen

    Websites-Übersicht der Netzwerkverwaltung

Achten Sie im Netzwerk immer darauf, ob Sie gerade in der Netzwerkverwaltung oder im Dashboard einer einzelnen Seite arbeiten.

wpShopGermany im Netzwerk aktivieren

wpShopGermany können Sie entweder für das ganze Netzwerk aktivieren (Netzwerkverwaltung → Plugins) oder in jeder Seite einzeln (Plugins im Dashboard der Seite). Nach der Aktivierung verlangt der Shop in jeder Seite eine Aktualisierung der Datenbank (wpShopGermany → Konfiguration → Einstellungen → Allgemein).

Den Aktivierungsschlüssel Ihres Update-Zugangs tragen Sie im Netzwerk nur in der Pluginverwaltung der Netzwerkverwaltung ein. Dazu muss wpShopGermany für das ganze Netzwerk aktiviert sein.

Aktivierungsschlüssel in der Pluginverwaltung der Netzwerkverwaltung

Einstellungen im Netzwerk

Nur im Blognetzwerk und nur für Super-Administratoren erscheinen unter wpShopGermany → Konfiguration zwei zusätzliche Bereiche.

Blognetzwerk-Einstellungen im Shop

Blognetzwerk

  • Jeden Blog getrennt behandeln: Ist die Option aktiv, erhält jede Seite eigene Shop-Tabellen und damit einen eigenen Shop. Ist sie aus, nutzen alle Seiten dieselben Tabellen (siehe unten).
  • Session auf Verzeichnis einschränken: Die Sitzung (und damit der Warenkorb) gilt nur für den Pfad der jeweiligen Seite. Sinnvoll, wenn mehrere Seiten auf derselben Domain in Unterverzeichnissen laufen.

Legen Sie den Modus beim Einrichten fest und ändern Sie ihn später nicht mehr. Wird die Option doch umgestellt, aktualisieren Sie danach in jeder Seite, die den Shop nutzt, die Shop-Datenbank (wpShopGermany → Konfiguration → Einstellungen → Allgemein).

Einstellungen im Bereich Blognetzwerk

Pfade

Multiblog Upload Path (relativ zu wp-content) legt fest, wo der Shop die Dateien der einzelnen Seiten ablegt (Rechnungen, Downloads, temporäre Dateien usw.). Standard ist uploads/sites/%blog_id%/. Der Platzhalter %blog_id% wird durch die ID der jeweiligen Seite ersetzt. Bei Jeden Blog getrennt behandeln lassen Sie ihn im Pfad stehen, sonst überschreiben sich die Dateien der Shops. Bei einem gemeinsamen Shop für alle Blogs tragen Sie einen Pfad ohne %blog_id% ein, sonst liegen Rechnungen und Downloads je nach Blog in verschiedenen Ordnern. Ein geänderter Pfad gilt nur für neue Dateien.

Mehrere Blogs, ein Shop

„Jeden Blog getrennt behandeln“ ist nicht aktiv. Der Shop kann in mehreren Seiten eingesetzt werden, Produkte, Einstellungen und Bestellungen stammen aber aus einem gemeinsamen Datenbestand. Ein Produkt, das Sie in einer Seite anlegen, ist auch in den anderen verfügbar.

Der Shop verwendet die Tabellen mit dem Grundpräfix des Netzwerks, z. B. wp_wpsg_products, wp_wpsg_order. wp ist dabei das eingestellte Tabellenpräfix.

Mehrere Blogs, mehrere Shops

„Jeden Blog getrennt behandeln“ ist aktiv. Jede Seite hat ihren eigenen Shop und kann andere Produkte verkaufen.

Der Shop verwendet für jede Seite eigene Tabellen mit dem Präfix der Seite, z. B. wp_2_wpsg_products, wp_2_wpsg_order für die Seite mit der ID 2.

Setzen Sie in diesem Modus zusätzlich unter wpShopGermany → Konfiguration → Einstellungen → Erweitert die Option RequestURI als ProduktURL verwenden (siehe Erweitert). Damit landen die Produkte im Warenkorb der richtigen Seite.

Option „RequestURI als ProduktURL verwenden“

Ablageorte der Dateien

Was Ablageort
Angepasste Templates (user_views) Hauptseite: wp-content/uploads/wpsg/user_views/, weitere Seiten: wp-content/uploads/sites/{BLOGID}/wpsg/user_views/
Shopdaten (Rechnungen, Downloads, DownloadPlus-PDFs, temporäre Dateien) wp-content/ + Pfad aus Pfade + wpsg/, mit dem Standardpfad also wp-content/uploads/sites/{BLOGID}/wpsg/ – auch für die Hauptseite (ID 1)

Unterhalb von wpsg/ liegen z. B. wpsg_rechnungen/ (Rechnungen), wpsg_downloadprodukte/ (Downloadprodukte) und wpsg_pdfprodukte/ (DownloadPlus). Produktbilder verwaltet der Shop über die WordPress-Mediathek der jeweiligen Seite (siehe Produktbilder).

Bestehenden Shop in ein Netzwerk überführen

Eine Neuinstallation in einem bestehenden Blognetzwerk ist unproblematisch. Einen bestehenden Shop sollten Sie nur mit Erfahrung in WordPress-Netzwerken umstellen.

Wird ein WordPress mit bestehendem Shop auf Multisite umgestellt, erscheinen die bisherigen Produkte nur, wenn „Jeden Blog getrennt behandeln“ nicht aktiv ist oder der Shop in der Hauptseite des Netzwerks läuft. Sollen die Produkte und Einstellungen in einen eigenen Shop einer anderen Seite übernommen werden, müssen Sie die Datenbanktabellen und die Ordner unter wpsg/ entsprechend kopieren.