正如标题所说。我不想要当前网站的ID,我想通过只提供网站名称来获取任何网站的ID。
我有这段代码:
$siteModel = Mage::getResourceModel( 'core/website_collection' )->addFieldToFilter( 'name', $site )->getFirstItem();
$siteId = $siteModel->getId();
但$siteId
最终为空。
如果我拥有的只是网站的名称,我该如何获取其ID?
非常感谢。
答案 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();