Criei 2 módulos personalizados dentro da pasta do fornecedor. Esta é a minha estrutura de layout:
-app
-code
-Company
-Blog
-HelloWorld
-Controller
-Hello
-World.php
-registration.php
-etc
-module.xml
-frontend
-routes.xml
Ambos estão habilitados.
Este é o meu código para o routes.xml
módulo HelloWorld:
<?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 id="helloworld" frontName="helloworld">
<module name="Company_HelloWorld"/>
</route>
</router>
</config>
Este é o meu código em 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="Company_HelloWorld" setup_version="1.0.0">
</module>
</config>
Este é o meu arquivo registration.php:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Company_HelloWorld',
__DIR__
);
Este é o meu código de controlador:
<?php
namespace Company\HelloWorld\Controller\Hello;
class World extends \Magento\Framework\App\Action\Action
{
public function __construct(
\Magento\Framework\App\Action\Context $context)
{
return parent::__construct($context);
}
public function execute()
{
echo 'Hello World';
exit;
}
}
Este é o meu código de layout:
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
</body>
</page>
& Mesmo para outro módulo. Eu já executei o setup:upgrade
comando, mas ainda assim, estou recebendo o erro 404 quando tento acessar qualquer um desses módulos.
app/code
pasta