Créer une interface d’administration dans Magento 2

Une interface d’administration est l’outil indispensable pour bien gérer vos modules ! C’est pourquoi nous avons choisi d’en faire un tutoriel Magento 2.

Étape 1: Créez votre module

A l’aide du tutoriel ?Créer un module Magento 2?, créez votre module Gone/MyModule dans le répertoire app/code.

Étape 2: Déclarez votre route d’administration

Dans votre module, créez un fichier routes.xml dans app/code/Gone/MyModule/etc/adminhtml.

Contenu pour 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="admin">
<route id="mymodule" frontName="mymodule">
<module name="Gone_MyModule" />
</route>
</router>
</config>

Étape 3: Créez le Controller de l’Admin

Dans app/code/Gone/MyModule/Controller/Adminhtml, créez un dossier pour votre controller, par exemple MyPage, et à l’intérieur, un fichier Index.php.

Contenu pour Index.php :

<?php
namespace Gone\MyModule\Controller\Adminhtml;

use Magento\Backend\App\Action;
use Magento\Framework\View\Result\PageFactory;

class Index extends Action
{
protected $resultPageFactory;

public function __construct(Action\Context $context, PageFactory $resultPageFactory)
{
$this->resultPageFactory = $resultPageFactory;
parent::__construct($context);
}

public function execute()
{
$resultPage = $this->resultPageFactory->create();
$resultPage->getConfig()->getTitle()->prepend(__('My Admin Page'));

return $resultPage;
}
}

Créez un fichier menu.xml dans app/code/Gone/MyModule/etc/adminhtml.

Contenu pour menu.xml :

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Backend:etc/menu.xsd">
<menu>
<add id="Gone_MyModule::my_page" title="My Page" module="Gone_MyModule" sortOrder="999" resource="Magento_Backend::content" action="mymodule/mypage/index" />
</menu>
</config>
arborescence interface admin magento 2

Étape 5: Nettoyez le cache

Nettoyez le cache de Magento :

php bin/magento cache:clean

Étape 6: Vérifiez l’interface admin

Ouvrez votre interface d’administration Magento et cherchez le menu ajouté. Cliquez dessus et vous devriez voir votre page d’admin personnalisée.

interface administrateur

Félicitations, votre interface d’administration est dorénavant en place et fonctionnelle ! Vous souhaitez aller plus loin sur ce CMS ? Découvrez nos formations à Magento 2 en développement ou en gestion e-commerce, ou bien faites appel à notre agence Magento pour vous accompagner tout au long de votre projet !