Tentando desenvolver algo no magento 2. Mas não encontrei como chamar um método Helper no arquivo de modelo (.phtml).
Quero uma substituição do código abaixo:
$this->helper('modulename/helpername')->methodname();
Se alguém souber por favor me ajude.
Respostas:
Você não deve usar chamadas auxiliares diretamente no modelo.
Tenha sua instância auxiliar fornecida como uma dependência do bloco que renderiza o modelo e crie um método no seu bloco que chame o auxiliar e chame esse método no modelo.
Tenha seu bloco definido assim
Então você pode chamar seu modelo
$block->doSomething()
fonte
Você tem que usar assim:
fonte
Você precisa escrever o nome inteiro da classe no helper, como abaixo:
Você pode usá-lo no arquivo phtml usando o código acima
fonte
Altere o módulo personalizado para NameSpace (o nome da sua empresa) e altere ReviewRating para (o nome do seu módulo)
Dentro
/var/www/html/magento2/app/code/Custommodule/ReviewRating/Block/HomehorizontalWidget.php
Dentro
/var/www/html/magento2/app/code/Custommodule/ReviewRating/view/frontend/templates/homehorizontalwidget.phtml
Dentro
/var/www/html/magento2/app/code/Custommodule/ReviewRating/Helper/Data.php
Dentro
/var/www/html/magento2/app/code/Custommodule/ReviewRating/etc/adminhtml/system.xml
fonte
Experimente este código no seu bloco:
E no seu modelo, você pode ligar para:
fonte