How To Create Simple Module in Magento 2 ?

by phxmaster
Now, let’s start by following steps
Step 1: First We need to create a module.xml to declare a module in our Magento store.
Create the file name called module.xml under app/code/Phxsolution/Welcome/etc/module.xml
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"> <module name="Phxsolution_Welcome" schema_version="0.0.1" active="true"/> </config>
Step 2: We need to enable our module by editing the config.xml file which can be found in app/etc/config.xml directory. Add Phxsolution_Welcome=>1. Please refer the below screen shot.
Step 3: Next, we need to create a controller file. Create a file name called index.php in the following directory app/code/Phxsolution/Welcome/Controller/Index/Index.php . Here the folder Index is name of the controller and index.php is an action file.
<?php namespace \Welcome\Controller\Index; class Index extends \Magento\Framework\App\Action\Action { public function execute() { $this->_view->loadLayout(); $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } }
Step 4: Lets create a block for our module. Create a block called Welcome.php in below mentioned directory. app/code/Phxsolution/Welcome/Block/Welcome.php
<?php namespace \Welcome\Block; class Welcome extends \Magento\Framework\View\Element\Template { public function _prepareLayout() { return parent::_prepareLayout(); } }
Step 5: Once the block is completed, create a front end router file by adding an xml file, “routes.xml” in the following directory. app/code/Phxsolution/Welcome/etc/frontend/routes.xml
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/App/etc/routes.xsd"> <router id="standard"> <route id="welcome" frontName="welcome"> <module name="Phxsolution_Welcome" /> </route> </router> </config>
Step 6: Create a template file for the module. app/code/Phxsolution/Welcome/view/frontend/templates/welcome.phtml
<h1> Home Page </h2> <h4>Hello World!</h4> <?php echo 'CMS homepage content goes here.'?>
Step 7: In the final step we will create a layout in the following directory. app/code/Phxsolution/Welcome/view/frontend/layout/welcome_index_index.xml
<?xml version="1.0"?> <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd"> <head> <title>Welcome to Magento World</title> </head> <body> <referenceContainer name="content"> <block name="welcome" template="welcome.phtml"> </block> </referenceContainer> </body> </page>
After completed all the steps, You can access the new welcome module.
Recommended Posts

How to setup multiple store in magento2 ?
September 11, 2020

How To Use Magento 2 Command?
September 11, 2020

How to Add Custom CSS | Js In Magento 2
September 11, 2020