Was wäre der Magier :: getSingleton ('core / layout') in Magento 2?
-
13-12-2019 - |
Frage
In Magento 1 kann ich eine Vorlage durch Codierung wie unten einfügen.
$layout = Mage::getSingleton('core/layout');
$block = $layout->createBlock('module/module_block_identifier');
$block->setTemplate('module/test.phtml');
Wie kann ich in Magento 2 eine Vorlage wie oben einfügen?
Lösung
Sie können verwenden:
$block = $this->getLayout()->createBlock(
'Magento\Backend\Block\Template'
)->setTemplate('module/test.phtml');
Klasse \Magento\Framework\View\Result\Layout
als Mage::getSingleton('core/layout')
Andere Tipps
Wenn Sie sich in einer Blockklasse befinden, können Sie einfach verwenden:
generasacodicetagpre. Wenn Sie sich in einem Controller befinden, müssen Sie im Konstruktor einen installierten \Magento\Framework\View\LayoutFactory
injizieren und verwenden Sie Folgendes:
und später können Sie dies verwenden:
generasacodicetagpre.Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange