Magento Mage类在自己的php脚本中导致服务器错误500

时间:2013-10-15 07:28:15

标签: magento magento-1.7

当我们尝试调用任何静态方法时,我遇到了Mage类的一些问题,例如: G。就我而言:

Mage::getModel('catalog/product')->load($productId);

它总是导致错误500.它已在自己的php设计文件中使用。

此外,这篇文章没有解决问题:Magento 1.7 - getModel in script outside web application fails

我在互联网上搜索了很多,发现了,

Mage::getModel();

是一种工厂方法,所以我实际上不需要调用

Mage::getConfig()->init();
Mage::getConfig()->loadModules();

请帮帮我!

编辑:我用这段代码解决了错误:

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
$category = Mage::getModel('catalog/category')->load($categoryId);
$prodCollection = Mage::getResourceModel('catalog/product_collection')->addCategoryFilter($category);
        $prodCollection->addAttributeToSelect('attribute_name');

主要问题是,这条线丢失了:

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

1 个答案:

答案 0 :(得分:0)

错误可能是由此引起的:

Mage::getModel()->('catalog/product')->load($productId);

这是错误的。首先,getModel至少需要一个参数。其次,这里没有方法名称->('catalog/product')。你的代码应该是:

Mage::getModel('catalog/product')->load($productId);

还要确保脚本中包含Mage.php,否则找不到该类。