Magento:从网站名称获取网站ID

时间:2015-09-03 15:36:57

标签: php magento

正如标题所说。我不想要当前网站的ID,我想通过只提供网站名称来获取任何网站的ID。

我有这段代码:

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

$siteId最终为空。

如果我拥有的只是网站的名称,我该如何获取其ID?

非常感谢。

2 个答案:

答案 0 :(得分:1)

您需要按->getSelect()->__toString()

调试集合

检查它是否给出正确的值。

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

更新

使用load():

对于这种情况,您需要调用load() resource model的{​​{1}}函数才能获得正确的收集

现在,您可以使用以下代码获取第一家商店的ID:

core/website

答案 1 :(得分:1)

您错误地使用addFieldToFilter方法。 试试这种方法:

$website = Mage::getModel('core/website')
    ->getCollection()
    ->addFieldToFilter('name', array('eq', $siteName))
    ->getFirstItem();
$websiteId = $website->getId();