Skip to content

Instantly share code, notes, and snippets.

@vdubyna
Created July 3, 2014 12:09
Show Gist options
  • Select an option

  • Save vdubyna/0b725e8b5aaa2be0348f to your computer and use it in GitHub Desktop.

Select an option

Save vdubyna/0b725e8b5aaa2be0348f to your computer and use it in GitHub Desktop.
Add website and stores
<?php
/* @var $this Lyonscg_Lasenza_Model_Resource_Setup */
$installer = $this;
$installer->startSetup();
// Canadian website
$rootCategory = Mage::getModel('catalog/category')->getCollection()
->addFieldToFilter('level', 1)->getFirstItem();
/** @var $canadianWebsite Mage_Core_Model_Website */
$canadianWebsite = Mage::getModel('core/website')->getCollection()
->addFieldToFilter('code', 'base')->getFirstItem();
$canadianWebsite->setName('Lasenza Canadian Website');
$canadianWebsite->setCode('canadian');
$canadianWebsite->save();
/** @var $storeGroup Mage_Core_Model_Store_Group */
// Change default store group to Canadian
$storeGroup = Mage::getModel('core/store_group')->getCollection()
->addFieldToFilter('website_id', $canadianWebsite->getId())
->getFirstItem();
$storeGroup->setName('Canadian');
$storeGroup->save();
// Add english store view for Canadian
/** @var $store Mage_Core_Model_Store */
$store = Mage::getModel('core/store')->getCollection()
->addFieldToFilter('website_id', $canadianWebsite->getId())
->addFieldToFilter('group_id', $storeGroup->getId())
->getFirstItem();
$store->setCode('ca_en');
$store->setName('Canadian English');
$store->save();
// Add french store view for Canadian
/** @var $store Mage_Core_Model_Store */
$store = Mage::getModel('core/store');
$store->setCode('ca_fr')
->setWebsiteId($canadianWebsite->getId())
->setGroupId($storeGroup->getId())
->setName('Canadian French')
->setIsActive(1)
->save();
// American website
/** @var $americanWebsite Mage_Core_Model_Website */
$americanWebsite = Mage::getModel('core/website');
$americanWebsite->setCode('american');
$americanWebsite->setName('Lasenza American Website');
$americanWebsite->save();
// Create American store group
$storeGroup = Mage::getModel('core/store_group');
$storeGroup->setWebsiteId($americanWebsite->getId())
->setName('American')
->setRootCategoryId($rootCategory->getId())
->save();
// Add english store view for American
$store = Mage::getModel('core/store');
$store->setCode('us_en')
->setWebsiteId($americanWebsite->getId())
->setGroupId($storeGroup->getId())
->setName('USA English')
->setIsActive(1)
->save();
$installer->endSetup();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment