magento set store id programmatically

maximus 69 picture maximus 69 · Mar 26, 2012 · Viewed 46.2k times · Source

I am currently working on a magento site that is in 2 languages (French and Dutch). The approach I am taking is as follows:

  • Create a folder in the web root (named nl)
  • Import the index.php and .htaccess file to that folder
  • In the index.php I modify the following line:

    Mage::run('nl'); // to specify the store view i want to load
    

When I check, the categories, CMS content etc are still in the default language. The following code:

Mage::app()->getStore()->getName();

returns the fr store's name.

What is it that I'm doing wrong? I think a viable solution would be to set the store to run in index.php...

Could someone please let me know how to load a store by ID?

Answer

maximus 69 picture maximus 69 · Mar 28, 2012

After hours of huffing and puffing i was able to figure out a way to set the store id programatically :)

In the index.php file, (in your language specific folder), add the following:-

$store_id = 'your_store_id_here';
$mageRunCode = 'store view code';
$mageRunType = 'store';

Mage::app()->setCurrentStore($store_id);
Mage::run($mageRunCode, $mageRunType);

Hope someone will find this information useful :)