при попытке загрузить товар,
$foundProduct = Mage::getModel('catalog/product')->load($sku, 'sku');
мы получаем следующую ошибку:
Fatal error:
Uncaught exception 'Exception' with message 'Warning: Invalid argument supplied for foreach()
in app/code/core/Mage/Eav/Model/Entity/Abstract.php on line 954' in app/code/core/Mage/Core/functions.php:245 Stack trace:
#0 app/code/core/Mage/Eav/Model/Entity/Abstract.php(954): mageCoreErrorHandler(2, 'Invalid argumen...', '/var/www/magent...', 954, Array)
#1 app/code/core/Mage/Catalog/Model/Resource/Abstract.php(698): Mage_Eav_Model_Entity_Abstract->load(Object(Mage_Catalog_Model_Product), '120x180 ES-bale...', 'sku')
#2 app/code/core/Mage/Core/Model/Abstract.php(225): Mage_Catalog_Model_Resource_Abstract->load(Object(Mage_Catalog_Model_Product), '120x180 ES-bale...', 'sku')
#3 updatemagento.php(197): Mage_Core_Model_Abstract->load('120x180 ES-bale...', 'sku')
#4 {main} thrown in app/code/core/Mage/Core/functions.php on line 245
Есть идеи, что не так?
magento-1.7
product
model
Матиас Джекл
источник
источник
loadByAttribute
использует коллекцию и фильтры по заданному атрибуту. Это означает, что наблюдатели за загрузкой товара не применяются, и у вас нет полных данных о запасе, галерее и т. Д., Как у вас было быload()
.$product= Mage::getModel('catalog/product')->load(123456);
правильный метод, где 123456 - это идентификатор продукта.Вы можете попробовать это
$product= Mage::getModel('catalog/product')->load('sku', 'mysku');
вместо этого, я думаю, что порядок вашего аргумента был неправильным.источник