Во фреймворке Мадженто есть несколько методов, которые позволяют переопределять core файлы. В сегодняшнем посте я расскажу об одном из самых простых таких методов.
Суть данного метода заключается в том, что вам не нужно создавать собственный модуль и писать изменения лейаута в файле config.xml. Вместо этого вы можете просто скопировать основной файл движка (который нужно переопределить) в локальную среду: app/code/local/Mage, с сохранением полного пути этого php файла. После этого вы можете отредактировать файл в локальной среде под свои нужды, а Magento будет использовать ваш файл вместо core файла.
Пример:
Например, если вам нужно переопределить файл:
app/code/core/Mage/Catalog/Block/Category/View.php
просто скопируйте файл View.php в:
app/code/local/Mage/Catalog/Block/Category/View.php
Переопределение сработает, поскольку Magento подключает PHP-файлы в таком порядке: сначала из среды app/code/local/, потом app/code/community/ и, наконец, из app/code/core/. Это приводит к тому, что файлы, имеющие одно и то же название из среды local или community, будут иметь приоритет при загрузке. Таким образом мы можем переопределить почти любой файл ядра.
Недостатки использования данного подхода:
core классов содержат большое количество методов, это означает, что мы переопределим все эти методы в нашем файле. Это неэффективно, если нам нужно переопределить, например, один или два метода.
Этот способ полезен только при тестировании/разработке вашего модуля. Вместо написания всего модуля вы можете быстро переопределить основной класс, что иногда бывает очень полезным.
Алоха! Последние несколько лет окончательно закрепили тренд на отдаленную работу. Для веб-разработчиков, DevOps-инженеров и администраторов…
Кажется, пиво — напиток простой: четыре ингредиента, понятная технология. Но одни и те же хмель,…
В современной IP-телефонии немаловажную роль играет технология, обеспечивающая передачу голоса через Интернет между бизнесом и…
Выбор рабочей машины для веб-разработчика или администратора серверов — является всегда компромиссом между портативностью, автономностью…
Исчез свет и вместе с ним мгновенно исчезла связь с окружающим миром? Это знакомая и…
Что вообще случилось с поиском в интернете? Я не побоюсь сказать это вслух: произошла настоящая…