Categorieën
Magento

Meerdere webwinkels in één Magento installatie

Er zijn diverse manieren om meerdere Magento webwinkels op te zetten, en dat allemaal in dezelfde backend, maar welke methode u gebruikt is afhankelijk van uw behoeften.

In dit artikel is geschreven met DirectAdmin als uitgangspunt, toch zijn de methoden zoals hieronder vermeld te gebruiken ongeacht welke control panel u gebruikt. U moet wel gebruik maken van Magento 1.4.x of hoger.


URL structuur

De feitelijke URL-structuur van uw webwinkels is een kwestie van persoonlijke voorkeur. U kunt, bijvoorbeeld, twee totaal verschillende webwinkels voeren op één domayn, met dezelfde installatie van Magento:

  • Webwinkel.nl/schoenen
  • Webwinkel.nl/fashion
  • Ook kunt u ervoor kiezen deze webwinkels te voeren op elk hun eigen domayn, nog steeds vanuit 1 Magento installatie:

  • Schoenen.nl
  • Fashion.nl
  • Een ander voorbeeld is een warenhuisindeling. Op deze manier is uw domayn het portaal naar diverse webwinkels met nog steeds 1 en dezelfde Magento backend:

  • Webwinkel.nl
  • Schoenen.webwinkel.nl
  • Fashion.webwinkel.nl
  • Ongeacht de keuze die u hierin maakt, de manier hoe je hiermee om moet gaan is in alle gevallen nagenoeg hetzelfde. Het gaat natuurlijk om het uiteindelijk doel, dat is uiteindelijk wat uw webwinkel bezoekers en uw backoffice mee om moet kunnen gaan. U wilt wel meerdere shops beheren maar niet alles op allemaal verschillende plekken aanpassen.

    Nieuwe webwinkel toevoegen in Magento

    Het eerste wat we moeten doen in een nieuwe webwinkel aanmaken in Magento. We zijn er vanuit gegaan dat u gebruik maakt van de Nederlandse vertaling van Magento. Heeft u deze nog niet dan kunt u deze hier downloaden.

    We gaan er voor het gemak van uit dat we eigenaar zijn van het domayn fashion.nl, dit dient u natuurlijk wel aan te passen naar uw eigen waarden.

    1. Log in de Magento admin omgeving.
    2. Navigeer naar het menu Catalogus en kies in dit menu voor Beheer categorieën.
    3. Klik vervolgens op de knop Root-categorie toevoegen.
    4. Aan de rechterkant voeren we bij de Name Fashion.nl in. Kies daarnaast voor JA bij Is Active en Is ancher (de laatste vindt u in het tabblad Display Settings).
    5. Klik links bovenin op de knop Categorie opslaan.
    6. Nu gaan we naar het menu Systeem en kies daar voor Beheer winkels.
    7. Klik nu op de knop Website aanmaken.
    8. Vul bij naam Fashion.nl in, kies bij de code een logische code, wij vullen hier nu fashion in.
    9. Klik vervolgens op de knop Website opslaan.
    10. Klik vervolgens op de knop Winkel aanmaken.
    11. Kies in het dropdown menu voor de website die u heeft aangemaakt, in ons geval Fashion.nl, Vul bij naam Fashion.nl in en kies uit de dropdown Basis-categorie (root) voor de categorie die u in stap 4 heeft aangemaakt, wij kiezen hier voor Fashion.nl
    12. We moeten nu de wijzingen opslaan dus klik op de knop Winkel opslaan.
    13. Nu moeten we nog een winkelzicht op winkelweergave aanmaken, dit doen we door te klikken op de knop Winkelweergave aanmaken.
    14. Kies in de eerste Dropdown voor de winkel die we hebben aangemaakt, wij kiezen voor Fashion.nl. Wij raden u aan om bij de naam de taal in te geven van deze winkelzicht, dit veld zal namelijk bij meerdere winkelweergaven in eenzelfde winkel in een dropdown menu verschijnen in uw webwinkel. Wij vullen daarom in het veld naam Nederlands in. Bij code vullen wij fashion_nl in. De status zetten wij op Ingeschakeld.
    15. Als alles goed in ingevoerd dan moeten we het wederom opslaan, doe dit door op de knop Winkelweergave opslaan te klikken.
    16. Ga in het menu opnieuw naar Systeem en kies voor Configuratie.
    17. Links bovenin uw scherm ziet u een menu met de naam Scope van de huidige configuratie, kies in deze dropdown voor de winkelweergave die u zojuist heeft aangemaakt. Wij kiezen hier voor Fashion.nl view.
    18. Klik in het menu aan de linker kant op de optie Web. Vul bij zowel Onveilig als Veilig bij basis URL de gewenste URL in. Doe dit door eerst het vinkje achter het veld uit te vinken (achter dit vinkje staat Website gebruiken).
    19. Als u de wijzigingen heeft doorgevoerd dienst u de wijzigingen wel op te slaan. Dit doet u door te klikken op de knop Configuratie opslaan.

    Domain Pointers manier

    Voor deze werkwijze gaan we er gemakshalve vanuit dat u al een Magento installatie heeft staan op het domayn Webwinkel.nl. We willen de nieuwe winkelweergave Fashion.nl ook online zetten dus moeten we ervoor zorgen dat dit domayn wordt verwezen naar Webwinkel.nl. Deze setup doen wij in DirectAdmin.

    1. Login op uw server via DirectAdmin, kies vanuit de Access level (aan de linker zijde) voor User level. Als u dit heeft gedaan ziet u onder Advanced Features de optie Domain Pointers verschijnen.
    2. Vul in het invulveld achter de http://www. de gewenste URL in, in ons geval is dit fashion.nl.
    3. Klik op de knop Add.
    4. Open vanuit DirectAdmin of vanuit uw FTP programma het bestand index.php welke u kunt vinden in de root installatie van Magento (vaak in de map public_html). Zoek vervolgens de volgende regel op (meestal de laatste regel in dit bestand)
    5. Mage::run($mageRunCode, $mageRunType);

      Meteen boven deze regel gaan wij het volgende stukje code toevoegen. (LET OP! HET MOET ERBOVEN KOMEN TE STAAN)

      switch($_SERVER['HTTP_HOST']) { case 'fashion.nl': case 'www.fashion.nl': $mageRunCode = 'fashion_nl'; $mageRunType = 'website'; break; }

      Dit kun je zo vaak herhalen als nodig. Als u bijvoorbeeld nog meer webwinkels wilt gaan voeren.

      switch($_SERVER['HTTP_HOST']) { case 'fashion.nl': case 'www.fashion.nl': $mageRunCode = 'fashion_nl'; $mageRunType = 'website'; break; case 'schoenen.nl': case 'www.schoenen.nl': $mageRunCode = 'schoenen_nl'; $mageRunType = 'website'; break; }

      Nieuw domayn methode

      Er is ook een mogelijkheid om een volledig nieuw domayn aan te maken en hiervan te verwijzen naar de reeds bestaande installatie. Het is nagenoeg hetzelfde als de vorige methode alleen duurt het iets langer om het voor elkaar te maken. Deze methode kan het bijvoorbeeld makkelijk maken om een bestaande webwinkel of website om te leiden naar de nieuwe Magento webwinkel.

      1. Login in op uw domayn via DirectAdmin, en maak een nieuw domayn aan.
      2. Bij het nieuwe domayn voeren wij schoenen.nl in.
      3. Log vervolgens in via SSH (via Putty of de terminal op een Mac) en ga naar de map die automatisch is aangemaakt door de vorige stap. Dit kan natuurlijk ook via FTP. Voer het volgende in via SSH:
      4. cd schoenen.nl/

      5. Kopieer de bestanden index.php en .htacces vanuit de map waar nu Magento in geïnstalleerd naar de map schoenen.nl. Ook dit kan via FTP. Wilt u dit doen via SSH typ dan het volgende in (afhankelijk van uw mappen structuur):
      6. cp ../public_html/index.php ../public_html/.htaccess .

      7. Op het bestand index.php en zoek de volgende regel op:
      8. $mageFilename = 'app/Mage.php';

        .. pas deze regel als volgt aan

        $mageFilename = '../public_html/app/Mage.php';

      9. We hebben het bestand index.php toch nog open, ga op zoek naar de volgende regel (meestal de laatste regel in het bestand):
      10. Mage::run($mageRunCode, $mageRunType);

        .. zet de volgende code er meteen voor. (LET OP! Zet het er wel voor!!)

        $mageRunCode = 'schoenen_nl'; $mageRunType = 'website';

      11. Als laatst moeten we nog een aantal verwijzingen ingeven via SSH:
      12. ln -s ../public_html/app ./app ln -s ../public_html/errors ./errors ln -s ../public_html/includes ./includes ln -s ../public_html/js ./js ln -s ../public_html/lib ./lib ln -s ../public_html/media ./media ln -s ../public_html/skin ./skin ln -s ../public_html/var ./var

        Subdomayn methode

        Voor deze methode doen we weer even alsof wij de eigenaar zijn van de domayn Webwinkel.nl. Deze domayn hebben wij opgezet als een portaal naar verschillende webwinkel binnen ons warenhuis. Magento is geïnstalleerd op het domayn Webwinkel.nl en alle webwinkels zullen worden ingesteld als subdomaynen van Webwinkel.nl.

        • Schoenen.webwinkel.nl
        • Fashion.webwinkel.nl

        We gaan hieronder aan de slag met de instellingen voor de fashion subdomayn:

        1. Log opnieuw in op uw domayn via DirectAdmin.
        2. Maak het subdomayn fashion aan.
        3. Log in via SSH (dit kan natuurlijk ook via FTP) en ga naar de map die automatisch is aangemaakt voor het subdomayn.
        4. cd shoes/

        5. Kopieer ook hier de bestanden index.php en .htaccess vanuit de public_html in de map fashion.
        6. cp ../public_html/index.php ../public_html/.htaccess .

        7. Open het bestand index.php en ga op zoek naar de volgende regel:
        8. $mageFilename = 'app/Mage.php';

          .. vervang deze regel door het volgende:

          $mageFilename = '../app/Mage.php';

        9. Nu je toch in het bestand index.php zit gad an gelijk op zoek naar de volgende regel:
        10. Mage::run($mageRunCode, $mageRunType);

          Zet boven deze regel de volgende code. (LET OP! Zet het er wel boven)

          $mageRunCode = 'fashion_nl'; $mageRunType = 'website';

        11. Dan moeten we ook hier nog een aantal verwijzingen ingeven via SSH:
        12. ln -s ../public_html/app ./app ln -s ../public_html/errors ./errors ln -s ../public_html/includes ./includes ln -s ../public_html/js ./js ln -s ../public_html/lib ./lib ln -s ../public_html/media ./media ln -s ../public_html/skin ./skin ln -s ../public_html/var ./var

          Meerdere webwinkels beheren in Magento

          Het is erg belangrijk bij het beheren van meerdere webwinkels in Magento dat u er altijd goed op let in welke winkelweergave u zich op dat moment bevind. Het kan erg lastig zijn dus verzeker uzelf er altijd van dat u de wijzigingen in de juiste weergave doorvoert. Als u het menu huidige weergave laat staan op standaard dan zal de wijziging voor elke webwinkel gelden. Dit kunt u ondervangen door de wijzigingen per winkelweergave aan te passen.

          Hulp nodig?

          Kunnen wij u adviseren of bent u hulp nodig met de uitvoering ? Neem dan gerust contact met ons op.