2013-10-15 4 views
0

У меня возникло несколько проблем с классом магов, когда мы пытаемся вызвать любой статический метод, e. г. в моем случае:Класс Magento Mage вызывает ошибку сервера 500 в собственном скрипте php

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

Он всегда вызывает ошибку 500. Он используется в собственном файле проекта php.

Кроме того, этот пост didn't решить эту проблему: Magento 1.7 - getModel in script outside web application fails

Я искал много в Интернете и выяснил, что

Mage::getModel(); 

является метод фабрики, так что я на самом деле don't необходимо позвонить по телефону

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

Помогите мне, пожалуйста!

Edit: я решил ошибку с этим кодом:

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); 

ответ

0

Ошибка может быть вызвана этим:

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

Это неправильно. Прежде всего getModel ожидает хотя бы параметр. Во-вторых, здесь нет имени метода ->('catalog/product'). Ваш код должен быть:

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

Кроме того, убедитесь, что Mage.php включен в сценарий, иначе класс не найден.

+0

извините, это была ошибка ввода. Я тоже использовал ваш код. – alpham8