TemplateMela Megnor Framework: «Некий модуль или оформительская тема требует наличия товарного свойства «image» в коллекции товаров»

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

04.07.2014 13:46

Описание сбоя:
  • Оформительская тема: оформительские темы TemplateMela, которые используют Megnor Framework
  • Место сбоя: открытие главной витринной страницы или витринной страницы списка товаров.
  • Диагностическое сообщение:
    в системном журнале: «Некий модуль или оформительская тема требует наличия товарного свойства «image» в коллекции товаров, однако сейчас это свойство настроено таким образом, что оно в коллекцию товаров не попадёт.
    Чтобы это товарное свойство попадало в коллекцию товаров, Вам надо сейчас открыть административный экран настроек данного товарного свойства
    («Каталог» → «Типы и свойства» → «Свойства товаров»), указать «да» в качестве значения опции «Загружать ли данное свойство в товарные коллекции?» и затем перестроить расчётные таблицы.»
  • Причина сбоя: дефект модулей «Megnor Newproducts» и «Megnor Specialproducts».

Способ устранения сбоя:
    • Файл: app/code/local/Megnor/Newproducts/Block/Newproducts.php
    • Вероятная строка: 15 и 30
    • Что найти:
      ->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','image','small_image','url_key'), 'inner')

    • На что заменить:
      ->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','small_image','url_key'), 'inner')

    • Файл: app/code/local/Megnor/Specialproducts/Block/Specialproducts.php
    • Вероятная строка: 23
    • Что найти:
      $products = Mage::getResourceModel('catalog/product_collection')->addUrlRewrite()->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','image','small_image','url_key'), 'inner')->addAttributeToFilter('status','1')->addCategoryFilter(Mage::registry('current_category'))->setStoreId($storeId)->addStoreFilter($storeId)->addAttributeToFilter('special_from_date', array('date' => true, 'to' => $todayDate))->addAttributeToFilter('special_to_date', array('or'=> array(0 => array('date' => true, 'from' => $dateTomorrow), 1 => array('is' => new Zend_Db_Expr('null')))), 'left')->addAttributeToSort('special_from_date', 'desc')->setPageSize($this->getProductsLimit());

    • На что заменить:
      $products = Mage::getResourceModel('catalog/product_collection')->addUrlRewrite()->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','small_image','url_key'), 'inner')->addAttributeToFilter('status','1')->addCategoryFilter(Mage::registry('current_category'))->setStoreId($storeId)->addStoreFilter($storeId)->addAttributeToFilter('special_from_date', array('date' => true, 'to' => $todayDate))->addAttributeToFilter('special_to_date', array('or'=> array(0 => array('date' => true, 'from' => $dateTomorrow), 1 => array('is' => new Zend_Db_Expr('null')))), 'left')->addAttributeToSort('special_from_date', 'desc')->setPageSize($this->getProductsLimit());

    • Файл: app/code/local/Megnor/Specialproducts/Block/Specialproducts.php
    • Вероятная строка: 25
    • Что найти:
      $products = Mage::getResourceModel('catalog/product_collection')->addUrlRewrite()->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','image','small_image','url_key'), 'inner')->addAttributeToFilter('status','1')->setStoreId($storeId)->addStoreFilter($storeId)->addAttributeToFilter('special_from_date', array('date' => true, 'to' => $todayDate))->addAttributeToFilter('special_to_date', array('or'=> array(0 => array('date' => true, 'from' => $dateTomorrow), 1 => array('is' => new Zend_Db_Expr('null')))), 'left')->addAttributeToSort('special_from_date', 'desc')->addAttributeToSort('news_from_date', 'desc')->setPageSize($this->getProductsLimit());	

    • На что заменить:
      $products = Mage::getResourceModel('catalog/product_collection')->addUrlRewrite()->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','small_image','url_key'), 'inner')->addAttributeToFilter('status','1')->setStoreId($storeId)->addStoreFilter($storeId)->addAttributeToFilter('special_from_date', array('date' => true, 'to' => $todayDate))->addAttributeToFilter('special_to_date', array('or'=> array(0 => array('date' => true, 'from' => $dateTomorrow), 1 => array('is' => new Zend_Db_Expr('null')))), 'left')->addAttributeToSort('special_from_date', 'desc')->addAttributeToSort('news_from_date', 'desc')->setPageSize($this->getProductsLimit());	

    • Файл: app/code/local/Megnor/Newproducts/Block/Newproductslist.php
      Файл запутан и его надо предварительно переформатировать.
    • Вероятная строка: 28
    • Что найти:
      'image',

    • На что заменить: ни на что, просто удалить

    • Файл: app/code/local/Megnor/Specialproducts/Block/Specialproductslist.php
    • Вероятная строка: 31
    • Что найти:
      $collection = $this->_addProductAttributesAndPrices($collection)->addStoreFilter()->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','image','small_image','url_key'), 'inner')->addAttributeToFilter('special_from_date', array('date' => true, 'to' => $todayDate))->addAttributeToFilter('special_to_date', array('or'=> array(0 => array('date' => true, 'from' => $dateTomorrow), 1 => array('is' => new Zend_Db_Expr('null')))), 'left')->addAttributeToSort('special_from_date', 'desc')->setPageSize($this->getProductsCount())->setCurPage(1);

    • На что заменить:
      $collection = $this->_addProductAttributesAndPrices($collection)->addStoreFilter()->addAttributeToSelect(array('name', 'price', 'thumbnail', 'short_description','small_image','url_key'), 'inner')->addAttributeToFilter('special_from_date', array('date' => true, 'to' => $todayDate))->addAttributeToFilter('special_to_date', array('or'=> array(0 => array('date' => true, 'from' => $dateTomorrow), 1 => array('is' => new Zend_Db_Expr('null')))), 'left')->addAttributeToSort('special_from_date', 'desc')->setPageSize($this->getProductsCount())->setCurPage(1);


#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

26.03.2016 12:18

Смотрите также: Почему некий модуль требует наличия товарного свойства в коллекции товаров?

Поделиться темой: