Как устранить конфликт Magestore_Magenotification_Block_Adminhtml_Notification_Window и Df_Adminhtml_Block_Notification_Window

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

20.11.2014 03:46

Описание проблемы:
  • Предупреждение администратору:
    Системный класс «adminhtml/notification_window» типа «block» перекрывают конфликтующие между собой классы:
        Magestore_Magenotification_Block_Adminhtml_Notification_Window [используется]	
        Df_Adminhtml_Block_Notification_Window

  • Источник предупреждения: модуль «Рекомендации администратору»

Описание способа устранения проблемы:
Классы Magestore_Magenotification_Block_Adminhtml_Notification_Window и Df_Adminhtml_Block_Notification_Window не перекрывают один и те же метод родительского системного класса Mage_Adminhtml_Block_Notification_Window.
Это позволяет решить конфликт стандартным способом: изменив иерархию наследования.
Если один из конфликтующих классов — класс Российской сборки Magento (имя начинается с «Df_»), то, как правило, именно его рекомендуется делать родительским классом: при таком подходе правки делаются вне Российской сборки Magento и не перетираются при обновлении Российской сборки Magento.

Конкретная инструкция по устранению проблемы:
  • Изменить иерархию наследования:
    • Файл: app/code/local/Magestore/Magenotification/Block/Adminhtml/Notification/Window.php
    • Строка: 2
    • Что найти:
      class Magestore_Magenotification_Block_Adminhtml_Notification_Window extends Mage_Adminhtml_Block_Notification_Window

    • На что заметить:
      class Magestore_Magenotification_Block_Adminhtml_Notification_Window extends Df_Adminhtml_Block_Notification_Window

  • Удалить кэш.


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