{"id":1358,"date":"2019-03-19T02:00:55","date_gmt":"2019-03-19T05:00:55","guid":{"rendered":"https:\/\/magenteiro.com\/blog\/?p=1358"},"modified":"2023-01-22T21:59:43","modified_gmt":"2023-01-23T00:59:43","slug":"menu-admin-e-controller-no-magento-2","status":"publish","type":"post","link":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/","title":{"rendered":"Criando um menu no admin, com ACL e Controller no Magento 2"},"content":{"rendered":"\n<p>Como j\u00e1 vimos anteriormente, os <em>controllers<\/em> s\u00e3o classes respons\u00e1veis por tratar uma requisi\u00e7\u00e3o. Neste artigo veremos como criar um <em>controller<\/em> na \u00e1rea administrativa da nossa loja Magento 2, e tamb\u00e9m como definir permiss\u00f5es de quem pode acess\u00e1-lo (ACL). Al\u00e9m disso, ainda vamos adicionar um item no menu do nosso admin para acessar esta nova p\u00e1gina.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\"><p>Este \u00e9 um artigo b\u00f4nus da <a href=\"https:\/\/magenteiro.com\/blog\/tag\/series-controller-m2\">s\u00e9rie sobre <em>controllers<\/em> no Magento 2<\/a> aqui do Magenteiro.<\/p><\/blockquote>\n\n\n\n<p>No primeiro artigo da s\u00e9rie vimos <a href=\"https:\/\/magenteiro.com\/blog\/magento-2\/controller-no-magento-2-como-criar\/\">como criar um <em>controller frontend<\/em> no Magento 2<\/a>. Em seguida vimos <a href=\"https:\/\/magenteiro.com\/blog\/magento-2\/layout-xml-block-template\/\">como aplicar um Layout XML ao nosso <em>controller<\/em><\/a>.<\/p>\n\n\n\n<p>Criar um <em>controller <\/em>no <em>backend<\/em> tem algumas diferen\u00e7as em rela\u00e7\u00e3o ao <em>controller<\/em> no <em>frontend<\/em>. Ao decorrer do artigo voc\u00ea perceber\u00e1.<em><br><\/em><\/p>\n\n\n\n<p>Neste tutorial n\u00f3s vamos ver:<\/p>\n\n\n\n<ol><li><a href=\"#add-admin-menu-magento2\">Como criar um item no menu do <em>admin<\/em> do Magento 2<\/a><\/li><li><a href=\"#admin-controller\">Como criar a classe do nosso <em>controller<\/em><\/a><\/li><li><a href=\"#routes-admin\">Como definir o arquivo de rotas do admin (routes.xml)<\/a><\/li><li><a href=\"#acl-admin-magento2\">Definindo o ACL (Quem pode acessar esta \u00e1rea no admin)<\/a><\/li><li><a href=\"#testar\">Testar nosso link no admin<\/a><\/li><\/ol>\n\n\n\n<p><strong>Premissa:<\/strong> Partirei do princ\u00edpio que voc\u00ea j\u00e1 criou a estrutura b\u00e1sica de um m\u00f3dulo de Magento 2. Neste exemplo nosso m\u00f3dulo se chamar\u00e1 <code>Magenteiro_Admin<\/code>.<\/p>\n\n\n\n<h2><a id=\"add-admin-menu-magento2\"><\/a>1. Criando um item no menu do admin<\/h2>\n\n\n\n<p>Vamos criar um item de menu principal chamado <strong>Magenteiro Menu<\/strong> e dentro dele um <strong>Item Menu<\/strong> que ir\u00e1 redirecionar para uma o meu <code>Index.php<\/code>.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"xml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"app\/code\/Magenteiro\/Admin\/etc\/adminhtml\/menu.xml\" data-enlighter-group=\"m3\">&lt;?xml version=\"1.0\"?>\n&lt;config xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"urn:magento:module:Magento_Backend:etc\/menu.xsd\">\n    &lt;menu>\n        &lt;add id=\"Magenteiro_Admin::menu\" title=\"Magenteiro Menu\" module=\"Magenteiro_Admin\" resource=\"Magenteiro_Admin::menu\" sortOrder=\"10\"\/>\n        &lt;add id=\"Magenteiro_Admin::item\" title=\"Item Menu\" module=\"Magenteiro_Admin\" resource=\"Magenteiro_Admin::item\" parent=\"Magenteiro_Admin::menu\" action=\"magenteiroadmin\/item\"\/>\n    &lt;\/menu>\n&lt;\/config><\/pre>\n\n\n\n<p>A esta altura, se limparmos o cache da loja, j\u00e1 podemos ver nosso menu por l\u00e1.<\/p>\n\n\n\n<h2><img loading=\"lazy\" class=\"aligncenter wp-image-1362 size-full\" src=\"https:\/\/magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/magento2-menu.gif\" alt=\"Menu admin Magento 2\" width=\"356\" height=\"248\"><\/h2>\n\n\n\n<h2>2. <a id=\"admin-controller\"><\/a>Criando a classe do nosso <em>Controller<\/em><\/h2>\n\n\n\n<p>Como vimos no primeiro artigo da s\u00e9rie, cada <em>action<\/em> tem um <em>controller<\/em> espec\u00edfico com um m\u00e9todo execute(). No <em>admin<\/em> n\u00e3o \u00e9 diferente, com algumas pequenas diferen\u00e7as na classe.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"app\/code\/Magenteiro\/Admin\/Controller\/Adminhtml\/Item.php\" data-enlighter-group=\"m2\">&lt;?php\nnamespace Magenteiro\\Admin\\Controller\\Adminhtml\\Item;\n\n\nclass Index extends \\Magento\\Backend\\App\\Action\n{\n    \/**\n     * @var \\Magento\\Framework\\View\\Result\\PageFactory\n     *\/\n    protected $resultPageFactory;\n\n    public function __construct(\n        \\Magento\\Backend\\App\\Action\\Context $context,\n        \\Magento\\Framework\\View\\Result\\PageFactory $resultPageFactory)\n    {\n        parent::__construct($context);\n        $this->resultPageFactory = $resultPageFactory;\n    }\n\n    \/**\n     * @return \\Magento\\Framework\\App\\ResponseInterface|\\Magento\\Framework\\Controller\\ResultInterface|void\n     *\/\n    public function execute()\n    {\n        return  $resultPage = $this->resultPageFactory->create();\n    }\n\n    protected function _isAllowed()\n    {\n        return $this->_authorization->isAllowed('Magenteiro_Admin::item');\n    }\n}<\/pre>\n\n\n\n<h2><a id=\"routes-admin\"><\/a>3. Definindo o arquivo de rotas (routes.xml)<\/h2>\n\n\n\n<p>Nosso arquivo de rotas tamb\u00e9m tem algumas diferen\u00e7as do arquivo de rotas do <em>front end<\/em>. Note que o router id agora \u00e9 &#8220;admin&#8221; e o nosso <code>route id<\/code> e <code>frontName<\/code> possuem o mesmo nome.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"xml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"app\/code\/Magenteiro\/Admin\/etc\/adminhtml\/routes.xml\" data-enlighter-group=\"m1\">&lt;config xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"urn:magento:framework:App\/etc\/routes.xsd\">\n    &lt;router id=\"admin\">\n        &lt;route id=\"magenteiroadmin\" frontName=\"magenteiroadmin\">\n            &lt;module name=\"Magenteiro_Admin\"\/>\n        &lt;\/route>\n    &lt;\/router>\n&lt;\/config><\/pre>\n\n\n\n<h2><a id=\"acl-admin-magento2\"><\/a>4. Definindo o ACL<\/h2>\n\n\n\n<p>Note que no passo 2, n\u00f3s criamos um m\u00e9todo chamado <code>_isAllowed<\/code>, respons\u00e1vel por checar se a pessoa que est\u00e1 acessando nosso <em>controller<\/em> est\u00e1 autorizada a ver esta p\u00e1gina.<\/p>\n\n\n\n<p>Agora temos que declarar isso no arquivo <code>acl.xml<\/code> para que esta op\u00e7\u00e3o apare\u00e7a no gerenciamento de acesso administrativo do Magento.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"app\/code\/Magenteiro\/Admin\/etc\/acl.xml\" data-enlighter-group=\"m5\">&lt;?xml version=\"1.0\"?>\n&lt;config xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"urn:magento:framework:Acl\/etc\/acl.xsd\">\n    &lt;acl>\n        &lt;resources>\n            &lt;resource id=\"Magento_Backend::admin\">\n                &lt;resource id=\"Magenteiro_Admin::menu\" sortOrder=\"10\" disabled=\"false\" title=\"Magenteiro Menu\">\n                    &lt;resource id=\"Magenteiro_Admin::item\" sortOrder=\"20\" disabled=\"false\" title=\"Menu Item\"\/>\n                &lt;\/resource>\n            &lt;\/resource>\n        &lt;\/resources>\n    &lt;\/acl>\n&lt;\/config><\/pre>\n\n\n\n<p>Lembre-se de adicionar <code>Magento_Backend::admin<\/code> no come\u00e7o da hierarquia.<\/p>\n\n\n\n<p>Se editarmos um dos grupos de acesso em <em>System &gt; Permission &gt; User Roles<\/em>, veremos:<\/p>\n\n\n\n<h2><a href=\"https:\/\/magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2.jpg\"><img loading=\"lazy\" width=\"700\" height=\"183\" class=\"aligncenter size-large wp-image-1364\" src=\"https:\/\/magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-700x183.jpg\" alt=\"Editando regra ACL no Magento 2\" srcset=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-700x183.jpg 700w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-250x65.jpg 250w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-768x201.jpg 768w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-760x199.jpg 760w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-120x31.jpg 120w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2-500x131.jpg 500w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/acl-magento2.jpg 1051w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/a><a id=\"testar\"><\/a>5. Testando tudo<\/h2>\n\n\n\n<p>Ap\u00f3s limpar caches e ativar o m\u00f3dulo (caso n\u00e3o tenha feito isso ainda), s\u00f3 precisamos testar.<\/p>\n\n\n\n<p>Se n\u00e3o estiver trabalhando no <a href=\"https:\/\/magenteiro.com\/blog\/magento-2\/modos-de-deploy-o-que-sao-e-como-usa-los\/\">modo desenvolvedor<\/a>, provavelmente precisar\u00e1 atualizar as <a href=\"https:\/\/magenteiro.com\/blog\/magento-2\/dependency-injection-no-magento2\/\">inje\u00e7\u00f5es de depend\u00eancias<\/a> com o comando <code>bin\/magento setup:upgrade<\/code>.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page.jpg\"><img loading=\"lazy\" width=\"700\" height=\"316\" src=\"https:\/\/magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-700x316.jpg\" alt=\"Magento Admin Page\" class=\"wp-image-1365\" srcset=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-700x316.jpg 700w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-250x113.jpg 250w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-768x346.jpg 768w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-760x343.jpg 760w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-120x54.jpg 120w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page-500x226.jpg 500w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/02\/Magento_Admin_Page.jpg 1184w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/a><\/figure>\n\n\n\n<h2>Conclus\u00e3o<\/h2>\n\n\n\n<p>Se voc\u00ea trabalhou com Magento 1, p\u00f4de ver que ficou at\u00e9 mais f\u00e1cil criar um item no menu e uma p\u00e1gina no admin do Magento, n\u00e3o \u00e9 mesmo?<\/p>\n\n\n\n<p>Apesar de termos criado um item novo no menu, voc\u00ea pode criar apenas um submenu em um dos contextos j\u00e1 existentes. Basta us\u00e1-lo como <code>parent<\/code> no passo 1 ao inv\u00e9s do <code>Magenteiro_Admin::menu<\/code> e n\u00e3o adicionar o primeiro item (sem parent).<\/p>\n\n\n\n<p>Se quiser ver esta e muitas outras explica\u00e7\u00f5es com mais detalhes, e fazer parte de um grupo de pessoas famintas por aprender Magento 2, junte-se \u00e0 n\u00f3s no <a href=\"https:\/\/www.magenteiro.com\/magento2?utm_source=blog\">Curso de desenvolvimento para Magento 2<\/a>.<\/p>\n\n\n\n<h2>&nbsp;<\/h2>\n\n\n\n<h2>N\u00e3o deu certo pra voc\u00ea? Perdeu alguma coisa no caminho?<\/h2>\n\n\n\n<p>\u00c0s vezes n\u00e3o conseguimos ver onde erramos. Se quiser, coloque seu e-mail abaixo e <strong>receba o m\u00f3dulo que acabamos de criar aqui<\/strong>.<\/p>\n\n\n\n<p><script type=\"text\/javascript\" src=\"\/\/mkt.magenteiro.com\/form\/generate.js?id=31\"><\/script><\/p>\n","protected":false},"excerpt":{"rendered":"Como j\u00e1 vimos anteriormente, os controllers s\u00e3o classes respons\u00e1veis por tratar uma requisi\u00e7\u00e3o. Neste artigo veremos como criar um controller [&hellip;]","protected":false},"author":1,"featured_media":1369,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[27,25],"tags":[96,12,118,94,41,68],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v19.0 (Yoast SEO v19.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Como criar Menu no Admin do Magento 2 (e ACL)<\/title>\n<meta name=\"description\" content=\"Um r\u00e1pido tutorial pra voc\u00ea adicionar um novo item no menu de admin do Magento 2 e controlar quem tem acesso \u00e0 ele (ACL).\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Criando um menu no admin, com ACL e Controller no Magento 2\" \/>\n<meta property=\"og:description\" content=\"Um r\u00e1pido tutorial pra voc\u00ea adicionar um novo item no menu de admin do Magento 2 e controlar quem tem acesso \u00e0 ele (ACL).\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/magenteiro\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-19T05:00:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-23T00:59:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/03\/magento2-controllers-m2-backend.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Ricardo Martins\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@magenteiro\" \/>\n<meta name=\"twitter:site\" content=\"@magenteiro\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ricardo Martins\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#organization\",\"name\":\"Magenteiro\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/\",\"sameAs\":[\"https:\/\/www.instagram.com\/magenteiro\",\"https:\/\/www.linkedin.com\/company\/magenteiro\",\"https:\/\/www.youtube.com\/magenteiro\",\"https:\/\/facebook.com\/magenteiro\",\"https:\/\/twitter.com\/magenteiro\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png\",\"contentUrl\":\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png\",\"width\":787,\"height\":149,\"caption\":\"Magenteiro\"},\"image\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#website\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/\",\"name\":\"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1\",\"description\":\"Artigos t\u00e9cnicos, tutoriais e muitos v\u00eddeos e cursos sobre Magento. Aqui voc\u00ea encontra dicas para lojistas e desenvolvedores feitos por quem entende do assunto.\",\"publisher\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.magenteiro.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\",\"name\":\"Como criar Menu no Admin do Magento 2 (e ACL)\",\"isPartOf\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#website\"},\"datePublished\":\"2019-03-19T05:00:55+00:00\",\"dateModified\":\"2023-01-23T00:59:43+00:00\",\"description\":\"Um r\u00e1pido tutorial pra voc\u00ea adicionar um novo item no menu de admin do Magento 2 e controlar quem tem acesso \u00e0 ele (ACL).\",\"breadcrumb\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.magenteiro.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Criando um menu no admin, com ACL e Controller no Magento 2\"}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\"},\"author\":{\"name\":\"Ricardo Martins\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150\"},\"headline\":\"Criando um menu no admin, com ACL e Controller no Magento 2\",\"datePublished\":\"2019-03-19T05:00:55+00:00\",\"dateModified\":\"2023-01-23T00:59:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/\"},\"wordCount\":590,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#organization\"},\"keywords\":[\"acl\",\"Admin\",\"Avan\u00e7ado\",\"Controllers no Magento 2\",\"Magento 2\",\"tutorial\"],\"articleSection\":[\"Desenvolvimento\",\"Magento 2\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150\",\"name\":\"Ricardo Martins\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g\",\"caption\":\"Ricardo Martins\"},\"description\":\"\u00c9 desenvolvedor web h\u00e1 16 anos e um dos primeiros certificados pela Magento no Brasil. Instrutor de mais de 11 cursos Magento (os principais no magenteiro.com\/cursos) com mais de 14 mil alunos de 105 pa\u00edses, \u00e9 tamb\u00e9m criador do m\u00f3dulo PagSeguro Transparente, usado em mais de 12 mil lojas.\",\"sameAs\":[\"https:\/\/www.magenteiro.com\/\"],\"url\":\"https:\/\/www.magenteiro.com\/blog\/author\/ricardomartins\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Como criar Menu no Admin do Magento 2 (e ACL)","description":"Um r\u00e1pido tutorial pra voc\u00ea adicionar um novo item no menu de admin do Magento 2 e controlar quem tem acesso \u00e0 ele (ACL).","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/","og_locale":"pt_BR","og_type":"article","og_title":"Criando um menu no admin, com ACL e Controller no Magento 2","og_description":"Um r\u00e1pido tutorial pra voc\u00ea adicionar um novo item no menu de admin do Magento 2 e controlar quem tem acesso \u00e0 ele (ACL).","og_url":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/","og_site_name":"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1","article_publisher":"https:\/\/facebook.com\/magenteiro","article_published_time":"2019-03-19T05:00:55+00:00","article_modified_time":"2023-01-23T00:59:43+00:00","og_image":[{"width":960,"height":480,"url":"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2019\/03\/magento2-controllers-m2-backend.jpg","type":"image\/jpeg"}],"author":"Ricardo Martins","twitter_card":"summary_large_image","twitter_creator":"@magenteiro","twitter_site":"@magenteiro","twitter_misc":{"Written by":"Ricardo Martins","Est. reading time":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/www.magenteiro.com\/blog\/#organization","name":"Magenteiro","url":"https:\/\/www.magenteiro.com\/blog\/","sameAs":["https:\/\/www.instagram.com\/magenteiro","https:\/\/www.linkedin.com\/company\/magenteiro","https:\/\/www.youtube.com\/magenteiro","https:\/\/facebook.com\/magenteiro","https:\/\/twitter.com\/magenteiro"],"logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png","contentUrl":"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png","width":787,"height":149,"caption":"Magenteiro"},"image":{"@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"WebSite","@id":"https:\/\/www.magenteiro.com\/blog\/#website","url":"https:\/\/www.magenteiro.com\/blog\/","name":"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1","description":"Artigos t\u00e9cnicos, tutoriais e muitos v\u00eddeos e cursos sobre Magento. Aqui voc\u00ea encontra dicas para lojistas e desenvolvedores feitos por quem entende do assunto.","publisher":{"@id":"https:\/\/www.magenteiro.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.magenteiro.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/","url":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/","name":"Como criar Menu no Admin do Magento 2 (e ACL)","isPartOf":{"@id":"https:\/\/www.magenteiro.com\/blog\/#website"},"datePublished":"2019-03-19T05:00:55+00:00","dateModified":"2023-01-23T00:59:43+00:00","description":"Um r\u00e1pido tutorial pra voc\u00ea adicionar um novo item no menu de admin do Magento 2 e controlar quem tem acesso \u00e0 ele (ACL).","breadcrumb":{"@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.magenteiro.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Criando um menu no admin, com ACL e Controller no Magento 2"}]},{"@type":"Article","@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#article","isPartOf":{"@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/"},"author":{"name":"Ricardo Martins","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150"},"headline":"Criando um menu no admin, com ACL e Controller no Magento 2","datePublished":"2019-03-19T05:00:55+00:00","dateModified":"2023-01-23T00:59:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/"},"wordCount":590,"commentCount":0,"publisher":{"@id":"https:\/\/www.magenteiro.com\/blog\/#organization"},"keywords":["acl","Admin","Avan\u00e7ado","Controllers no Magento 2","Magento 2","tutorial"],"articleSection":["Desenvolvimento","Magento 2"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.magenteiro.com\/blog\/magento-2\/menu-admin-e-controller-no-magento-2\/#respond"]}]},{"@type":"Person","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150","name":"Ricardo Martins","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g","caption":"Ricardo Martins"},"description":"\u00c9 desenvolvedor web h\u00e1 16 anos e um dos primeiros certificados pela Magento no Brasil. Instrutor de mais de 11 cursos Magento (os principais no magenteiro.com\/cursos) com mais de 14 mil alunos de 105 pa\u00edses, \u00e9 tamb\u00e9m criador do m\u00f3dulo PagSeguro Transparente, usado em mais de 12 mil lojas.","sameAs":["https:\/\/www.magenteiro.com\/"],"url":"https:\/\/www.magenteiro.com\/blog\/author\/ricardomartins\/"}]}},"_links":{"self":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts\/1358"}],"collection":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/comments?post=1358"}],"version-history":[{"count":7,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts\/1358\/revisions"}],"predecessor-version":[{"id":2902,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts\/1358\/revisions\/2902"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/media\/1369"}],"wp:attachment":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/media?parent=1358"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/categories?post=1358"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/tags?post=1358"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}