Как использовать helper в шаблоне Magento 2
Изменение основных core файлов Magento – это не рекомендуемая и плохая практика программирования. С этой целью можно добавлять свои новые классы или переопределять различные функции в своем модуле. А хелперы (helper, помощники) являются одним из основных способов для этого.
Хелпер в Magento – это объект, который содержит практические методы. Мы привыкли к тому, что хелперы являются глобальными и всегда доступными элементами. Вы можете вызывать их в файлах шаблонов, контроллерах, моделях или в других местах Magento. Хелпер создается как Singleton.
В Мадженто 1.х версий, чтобы обратиться к хелперу, достаточно было использовать следующую конструкцию:
Mage::helper('МОДУЛЬ/КЛАСС_ХЕЛПЕРА')->ХЕЛПЕР_ФУНКЦИЯ();
А как это делается в Magento 2.х версий?
В файлах-шаблонах (с расширением .phtml
) Magento 2.х есть главный объект: $block
. Класс Блока – это тот объект, который соотносится с этим шаблоном.
В ранних версиях Мадженто этот объект соотносился со старой известной переменной $this
.
В Magento 2.x этот объект соотносится с классом Magento\Framework\View\TemplateEngine\Php
. И, чтобы получить доступ к хелперу в Magento 2.x версий, нужно использовать простую конструкцию:
$this->helper('[Vendor]\[Module]\Helper\[Helper Name]')->ХЕЛПЕР_ФУНКЦИЯ();
Вот и все! Надеемся, что данная информация была для вас полезной!