web-dev-qa-db-ja.com

Magento 2-カスタムphtmlファイルを別のphtmlファイル、xmlレイアウト、静的ブロック、およびcmsページで呼び出す方法

Magento 2テーマを作成しています。 .phtmlファイルをxml layout, static block, cms pageまたは別の.phtmlファイルに追加する方法を知りたいだけです。ありがとうございました。

22
Milan Chandro

ドキュメントの改善/回答用

カスタムファイルパス

app/design/frontend/{Package}/{theme}/Magento_Theme/templates/html/test.phtml

xml layoutファイル

<block class="Magento\Framework\View\Element\Template" name="test_file" template="Magento_Theme::html/test.phtml"/>

blocks and cms pages

{{block class="Magento\Framework\View\Element\Template" name="test_file" template="Magento_Theme::html/test.phtml"}}

phtmlファイルで呼び出す

<?php include ($block->getTemplateFile('Magento_Theme::html/test.phtml')) ?>

または、前と同じ

<?php echo $this->getLayout()->createBlock("Magento\Framework\View\Element\Template")->setTemplate("Magento_Theme::html/test.phtml")->toHtml();?>
57
Milan Chandro
6
Maddy

別のphtmlテンプレートファイル内からphtmlテンプレートファイルを呼び出す:

<?php echo $this->getLayout()->createBlock("Magento\Framework\View\Element\Template")->setTemplate("Magento_Theme::test.phtml")->toHtml(); ?>

test.phtmlはapp/design/frontend/Vendor/themename/Magento_Theme/templatesに配置されます

0
ivetame