Magento 2 - 在主页上显示/显示自定义模块

时间:2018-02-27 18:11:13

标签: module access magento2.1

我在新的Magento 2中创建了一个自定义模块,它与url(http:/// modulename / index / test)一起工作正常但需要在主页上调用它。我的意思是当主页加载时,模块会自动调用。怎么可能?

以下是我在模块创建过程中遵循的步骤 -

步骤1:创建命名空间和模块文件夹

第2步:创建etc / module.xml文件

<?xml version="1.0"?><config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Ignvia_HelloWorld" setup_version="1.0.0">
</module>

第3步:创建etc / registration.php文件

<?php

\ Magento的\框架\元器件\ ComponentRegistrar ::寄存器(     \ Magento的\框架\分量\ ComponentRegistrar :: MODULE,     'Ignvia_HelloWorld',     的 DIR );

步骤4:创建etc / frontend / routes.xml文件

<?xml version="1.0" ?><config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="standard">
    <route frontName="helloworld" id="helloworld">
        <module name="Igniva_HelloWorld"/>
    </route>
</router>

步骤5:创建Controller / Index / Test.php

<?php

命名空间Igniva \ HelloWorld \ Controller \ Index;

类测试扩展\ Magento \ Framework \ App \ Action \ Action {     protected $ _pageFactory;

public function __construct(
    \Magento\Framework\App\Action\Context $context,
    \Magento\Framework\View\Result\PageFactory $pageFactory)
{
    $this->_pageFactory = $pageFactory;
    return parent::__construct($context);
}

public function execute()
{
    echo "Hello World";
    exit;
}

}

感谢。

1 个答案:

答案 0 :(得分:0)

要在主页中加载自定义模块,应在cms_index_index布局中调用代码(不在核心文件中)。您必须在自定义文件中定义。