Magento 1 – How to Get Website ID from Website Name

collection;magento-1websites

As the title says. I don't want the ID of the current website, I want the ID of any website by supplying only that websites name.

I have this code:

$siteModel = Mage::getResourceModel( 'core/website_collection' )->addFieldToFilter( 'name', $site )->getFirstItem();
$siteId = $siteModel->getId();

But $siteId ends up empty.

If all i have the name of a website, then how can i get its ids?

Best Answer

You need debug the collection by ->getSelect()->__toString()

for checking it give right value or not.

    $siteModelCollection = Mage::getResourceModel( 'core/website_collection' )->addFieldToFilter( 'name', $site );
// print the Query
    echo $Query = $siteModelCollection ->getSelect()->__toString();
    echo $siteId =$siteModelCollection->getFirstItem()->getId();

Update:

Use load():

for this case you need to call load() function of resource model of core/website for getting proper collection

Now you can get id of first store by using below code:

$siteModelCollection = Mage::getResourceModel('core/website_collection')->addFieldToFilter( 'name', $site)->load();
echo $Query = $siteModelCollection ->getSelect()->__toString();
echo $siteId =$siteModelCollection->getFirstItem()->getId();