E-Commerce

Mehrere Onlineshops mit nur einer Installation betreiben: Multishops mit Magento

Mit dem Open-Source-Shopsystem Magento können Onlinehändler beliebig viele Shops mit einer einzigen Installation betreiben. Die vielseitigen Funktionen sorgen dafür, den Administrationsaufwand beim parallelen Betrieb mehrerer Shops – etwa für B2B und B2C – deutlich zu reduzieren. Dieser Artikel erklärt anhand eines Fallbeispiels die wichtigsten Multishop-Funktionen und zeigt, wie man sie geschickt einsetzt.

Im Vergleich zu anderen Shop-Systemen glänzt Magento mit einem entscheidenen Vorteil: dem einfachen Multistore-Management. Mit dem vielseitigen Multishop-Feature können Shopbetreiber verschiedene Artikelbestände, Lokalisierungen, Währungen, Templates oder Domains auf einfachste Art und Weise verwalten. Auch die Nutzung eines gemeinsamen Produktkatalogs in unterschiedlichen Onlineshops ist möglich.

Zur Veranschaulichung der Funktionsweise des Multistore-Managements in Magento zeigt dieser Artikel auf, wie man eine Magento-Installation in der Version 1.4.1.0 so konfiguriert, dass man auf zwei Websites einen Onlineshop zum nationalen Vertrieb von Computerhardware und einen weiteren für den internationalen Vertrieb von Bürobedarf einrichtet. Zu den Vorgaben gehören eine komplette optische Trennung sowie ein englischsprachiges Frontend für den internationalen Bereich.

Grundlagen des Multistore-Managements

Diese Auswahlbox ist fester Bestandteil des Magento-Backends und erlaubt den Wechsel zwischen verschiedenen Konfigurationsbereichen.

Diese Auswahlbox ist fester Bestandteil des Magento-Backends und erlaubt den Wechsel zwischen verschiedenen Konfigurationsbereichen.

Die abgebildete Auswahlbox taucht an vielen Stellen im Magento-Backend auf und dient zum Wechseln zwischen den verschiedenen Geltungsbereichen. In Magento existieren drei Bereiche: Website, Store und StoreView zur flexiblen Strukturierung der Magento-Installation. Die verschachtelten Geltungsbereiche in Magento bieten die Möglichkeit, die Konfiguration der einzelnen Shops durchzuführen. Sofern man keine speziellen Einstellungen in den Websites, Stores oder Storeviews vornimmt, vererbt der Geltungsbereich „Standardkonfigurationen“ seine Eigenschaften an alle Shops in der Magento-Installation.

Nachdem man die Magento-Installation abgeschlossen hat, können sofort im Magento-Backend die grundlegenden Einstellungen zur Einrichtung der Struktur für die beiden Shops erfolgen.

Der erste Schritt befasst sich mit dem Anlegen der Kategorien für den Artikelstamm. In diesem Anwendungsfall werden im Magento-Backend zwei Root-Kategorien benötigt. Zur besseren Orientierung sollte man diese nach den Domains benennen.

Konfiguration und Verwaltung

Einen Multishop kann man prinzipiell in verschiedenen Varianten konfigurieren. Dieses Fallbeispiel verwendet zwei Websites, zwei Stores und zwei Storeviews, um die gewünschte Verwaltung der beiden Shops in einer Magento-Installation umzusetzen. Beim Anlegen der Websites sollte man darauf achten, diese ebenfalls nach der Domain zu benennen und einen aussagekräftigen Website-Code wie „web_computerhardware“ und „web_buerobedarf zu verwenden“.

Die einzelnen Shops und Storeviews kann man im<br />  Magento-Backend leicht verwalten.

Die einzelnen Shops und Storeviews kann man im
Magento-Backend leicht verwalten.

Darüber hinaus legt man zwei Stores an, bei denen man die zuvor hinzugefügten Root-Kategorien auswählt und somit den Artikelstamm des Stores definiert. Die Anforderungen im Fallbeispiel erfordern außerem zwei verschiedene Storeviews (StoreView-Codes: view_computerhardware_de und view_buerobedarf_en), die für die Anzeige und Darstellung im Magento-Frontend verantwortlich sind. Darüber kann man auch die gewünschten Sprachen und Lokalisierungen für den nationalen sowie internationalen Vertrieb konfigurieren. Nach der erfolgreichen Einrichtung des Multishops folgen die Einstellungen für die beiden Websites im Magento-Backend.

Tipp: Das Arbeiten mit eindeutigen Abkürzungen bei den Website- sowie StoreView-Codes wird empfohlen, damit man im späteren Verlauf jederzeit einfach die Zuordnung an den erforderlichen Stellen vornehmen kann.

Konfiguration der Domains

Bei der Konfiguration der Domains gilt es grundlegend darauf zu achten, dass beide Domains auf denselben Magento-Document-Root zeigen, damit Magento den Shop laden kann.

Im nächsten Schritt gilt es, die Domains im Magento-Backend zuzuordnen. Dies erledigt man im Menüpunkt „System > Konfiguration > Web“. In den Einstellungen unter „Sicher“ und „Ungesichert“ ist es möglich, die Basis-URL zu hinterlegen. Man muss allerdings darauf achten, dass man in der Auswahlbox des Konfigurationsbereichs die zu konfigurierende Website auswählt. Nach dem Entfernen der Checkbox „Standard benutzen“ kann man im Eingabefeld „Basis-URL“ die URL gezielt für diese Website definieren.

Konfiguration der Sprache

Nach demselben Prinzip wie bei den Domains folgt nun die Konfiguration der Sprache der beiden Shops. Um den zweiten Shop fit für den internationalen Vertrieb zu machen, ist ein Wechsel über die Auswahlbox in den Storeview des Bürobedarf-Shops nötig. Die entsprechenden Werte für die englische Sprache setzt man in den Lokalisierungseinstellungen unter „System > Konfiguration > Allgemein“. Bei Bedarf kann man auch eine andere Währung festlegen, die automatisch von Magento mittels interner Währungskurse umgerechnet wird. Der Shopbetreiber kann seinen Kunden unter anderem auch die Möglichkeit geben, im Frontend über eine Auswahlbox aus einer der zuvor freigeschalteten Währungen für den jeweiligen StoreView zu wählen.

Für Betreiber von Multishops sind eine Reihe  nützlicher Extensions verfügbar. „Customer Activation“ erlaubt  beispielsweise, Gewerbetreibende erst nach dem Nachweis über einen  Gewerbeschein für den B2B-Bereich freizuschalten.

Für Betreiber von Multishops sind eine Reihe nützlicher Extensions verfügbar. „Customer Activation“ erlaubt beispielsweise, Gewerbetreibende erst nach dem Nachweis über einen Gewerbeschein für den B2B-Bereich freizuschalten.

Gestaltung des Frontends

Der Menüpunkt „System > Konfiguration > Gestaltung“ ermöglicht im Bereich „Paket“, das Erscheinungsbild komplett zu ändern. Standardmäßig liefert Magento derzeit zwei Design-Pakete und das optimierte iPhone-Design mit. Nach einer einzigen Änderung im Geltungsbereich der Bürobedarf-Website erscheint das Frontend im modernen Magento-Design. Hierfür genügt es, im Eingabefeld den Paketnamen „modern“ zu hinterlegen. Die optische Trennung der beiden Shops ist somit auf einfachstem Wege erfolgt und man kann die verschiedenen Pakete nun den eigenen Wünschen anpassen.

Modifikationen an der index.php

Um beim Aufruf der beiden Domains direkt den entsprechenden Shop anzuzeigen, muss man vor dem Aufruf des eigentlichen Magento-Systems in der index.php von Magento die folgende Switch-Abfrage im Quellcode hinterlegen.

Switch-Abfrage in der index.php
// Begin: Switch-Abfrage  switch($_SERVER['HTTP_HOST']){
  case 'computerhardware.de':
  case'www.computerhardware.de ':
   $_SERVER["MAGE_RUN_CODE"]="web_computerhardware";
   $_SERVER["MAGE_RUN_TYPE"]="website";
  break;   case 'officesupplies.com':   case 'www.officesupplies.com':    $_SERVER["MAGE_RUN_CODE"]="web_buerobedarf";    $_SERVER["MAGE_RUN_TYPE"]="website";   break;
 } // End  // Begin: Aufruf des Magento-Systems  /* Store or website code */  $mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';   /* Run store or run website */  $mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'store';   Mage::run($mageRunCode, $mageRunType); // End

Listing 1

Nach der Durchführung der Änderungen muss man noch den Magento-Cache leeren. Magento lädt nun beim Aufruf der Domains die korrekte Website beziehungsweise den richtigen Storeview.

Zuweisung der Variablen

Die folgenden, in Listing 1 enthaltenen Variablen, müssen in der Switch-Abfrage individuell und passend zur Strukturierung der Magento-Installation gesetzt werden:

Variable Zuweisung
$_SERVER[‚MAGE_RUN_CODE‘] Hier wird der Code der Website oder des StoreViews hinterlegt, der im
Magento Backend zugewiesen wurde.
$_SERVER[‚MAGE_RUN_TYPE‘] Folgende Werte können hier eingetragen werden: ‚website‘ oder ’store‘.

Fazit

Mit Hilfe der im Artikel beschriebenen Funktion von Magento können Shopbetreiber in nur einer Magento-Installation mehrere Shops betreiben. Die Einrichtung eines klassischen B2C- oder B2B-Shops, in dem der Kunde ausschließlich Nettopreise sieht, ist beispielsweise in wenigen Minuten implementiert. Mit entsprechenden Erweiterungen [1]
[2] ist es zudem möglich, Gewerbetreibende erst nach Erhalt des Gewerbescheins für den B2B-Bereich freizuschalten.

Die Beispielkonfiguration macht deutlich, dass die Nutzung eines gemeinsamen Produktkatalogs den Administrationsaufwand erheblich reduzieren kann. Die Pflege, Wartung und Verwaltung der Onlineshops erfolgt bequem über ein zentrales Magento-Backend.

Die individuell konfigurierbaren Reporting-Funktionen ermöglichen zudem die automatisierte Erstellung von Auswertungen für einzelne Onlineshops oder Produktkategorien. Der Zugriff auf diese Analysen ist komfortabel über das Magento-Backend möglich und bietet zahlreiche Statistiken.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

4 Kommentare
Johannes Eberle

Hi,
danke für den hilfreichen Artikel. Leider sind beide Links zu den Extensions nicht mehr aktiv.
G**gle weiß in der Hinsicht leider auch nicht weiter – schade.

Antworten
Mirko Kaufmann

Hallo Johannes,

vielen Dank für das Feedback.

Im Folgenden die aktuellen Links zu den Magento-Extensions:

Customer Activation für Magento

Sitewards Business to Business Extension für Magento

Beste Grüße

Mirko

Antworten
d.voigt
d.voigt

An sich eine gute Lösung. Ein vertrauenswürdiger Online-Shop braucht natürlich ein SSL-Zertifikat, und am besten eines mit EV – dieses gilt dann aber nur für eine IP und für eine Domain. Das beschriebene Vorgehen passt dann nicht, und einige Versandhändler sehen auch mittlerweile davon ab – es wird dann nur noch eine Domain verwendet. Grüße, DV

Antworten
MarkusTI
MarkusTI

Hallo Mirko, danke für den Artikel. Du schreibst:
>Bei der Konfiguration der Domains gilt es grundlegend darauf zu achten,
>dass beide Domains auf denselben Magento-Document-Root zeigen,
>damit Magento den Shop laden kann.

Gibt es hier irgendwo ein paar mehr Informationen, wie man diesen Punkt umsetzt? Macht man das auf den fernen Domains irgendwie in der .htaccess?

Antworten

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!

Hey du! Schön, dass du hier bist. 😊

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team bestehend aus 65 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Danke für deine Unterstützung.

Digitales High Five,
Stephan Dörner (Chefredakteur t3n.de) & das gesamte t3n-Team

Anleitung zur Deaktivierung