Я создал 2 пользовательских модуля в папке vendor. Это моя структура макета:
-app
-code
-Company
-Blog
-HelloWorld
-Controller
-Hello
-World.php
-registration.php
-etc
-module.xml
-frontend
-routes.xml
Оба включены.
Это мой код для routes.xml
модуля 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>
Это мой код в 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>
Это мой файл registration.php:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Company_HelloWorld',
__DIR__
);
Это мой код контроллера:
<?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;
}
}
Это мой код компоновки:
<?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>
И то же самое для другого модуля. Я уже выполнил setup:upgrade
команду, но все равно получаю ошибку 404, когда пытаюсь получить доступ к любому из этих модулей.
app/code
папки