Ich habe versucht, etwas in Magento 2 zu entwickeln. Ich habe jedoch nicht herausgefunden, wie eine Helper-Methode in einer Template-Datei (.phtml) aufgerufen werden kann.
Ich möchte den folgenden Code ersetzen:
$this->helper('modulename/helpername')->methodname();
Wenn jemand weiß, bitte hilf mir.
Antworten:
Sie sollten keine Hilfsaufrufe direkt in der Vorlage verwenden.
Stellen Sie Ihre Helferinstanz als Abhängigkeit zu dem Block bereit, der die Vorlage rendert, und erstellen Sie in Ihrem Block eine Methode, die den Helfer aufruft, und rufen Sie diese Methode in der Vorlage auf.
Lass deinen Block so definieren
Dann können Sie Ihre Vorlage aufrufen
$block->doSomething()
quelle
Sie müssen wie folgt verwenden:
quelle
Sie müssen den ganzen Klassennamen wie folgt in helper schreiben:
Sie können es in der HTML-Datei mit dem obigen Code verwenden
quelle
Ändern Sie Custommodule in NameSpace (Name Ihres Unternehmens). Ändern Sie ReviewRating in (Name Ihres Moduls).
Im
/var/www/html/magento2/app/code/Custommodule/ReviewRating/Block/HomehorizontalWidget.php
Im
/var/www/html/magento2/app/code/Custommodule/ReviewRating/view/frontend/templates/homehorizontalwidget.phtml
Im
/var/www/html/magento2/app/code/Custommodule/ReviewRating/Helper/Data.php
Im
/var/www/html/magento2/app/code/Custommodule/ReviewRating/etc/adminhtml/system.xml
quelle
Versuchen Sie diesen Code in Ihrem Block:
Und in Ihrer Vorlage können Sie Folgendes aufrufen:
quelle