Crear un nuevo menú en el Admin de Magento

Crear un nuevo menú en el Admin de Magento, Vamos a explicar como crear una nueva pestaña de menú en la parte del administrador (backend) de nuestro Magento.

Para ello vamos a crear un módulo que se llamará Tutorial, por lo que lo primero que haremos será crear la estructura que debe seguir un módulo de Magento.

Carpetas y ficheros necesarios para nuestro:

Una vez creada la estructura necesaria para este módulo vamos a empezar a programar:

1 – Declaración del Módulo

Codnexo_Tutorial.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Codnexo_Tutorial>
            <active>true</active> <!-- Lo ponemos como activo -->
            <codePool>local</codePool> <!-- Le indicamos la ruta de nuestro módulo (carpeta local) -->
        </Codnexo_Tutorial>
    </modules>
</config>

Aquí le indicamos a Magento la existencia de nuestro módulo.

2 – Configuración del módulo

config.xml

<config>
	<adminhtml> <!-- Etiqueta para indicar donde se añade nuestra configuración-->
		<menu> <!-- Dentro de adminhtml, en el menu... -->
			<tutorial translate="title" module="codnexo_tutorial"> <!-- Indicamos el módulo al que llamar -->
				<title>Mi Menu</title> <!-- Títlo del nuevo menú -->
				<sort_order>1</sort_order> <!-- Orden/Posición en la que aparecerá nuestro menú--->
				<action>adminhtml/menuadmin/index</action> <!-- el controlador que ejecutará las acciones sobre nuestro menú -->
			</tutorial>
		</menu>

		<layout> <!-- Indicamos el layout a cargar para nuestro menú -->
			<updates>
				<tutorial> <!-- nombre del módulo donde se encuentra el fichero -->
					<file>codnexo_tutorial_admin.xml</file> <!-- nombre del fifhero -->
				</tutorial>
			</updates>
		</layout>

		<acl> <!-- Para poder asignarle permisos de usuario a nuestro menú -->
			<resources>
				<admin>
					<children>
						<tutorial>
							<title>Mi Menu</title>
							<sort_order>1</sort_order>
						</tutorial>
					</children>
				</admin>
			</resources>
		</acl>
	</adminhtml>

	<admin> <!-- Ahora vamos a declarar la ruta para nuestro módulo en el admin --->
		<routers>
            <adminhtml>
                <args>
                    <modules>
                        <Codnexo_Tutorial after="Mage_Adminhtml">Codnexo_Tutorial</Codnexo_tutorial>
                    </modules>
                </args>
            </adminhtml>
        </routers>
	</admin>

	<global> <!-- Vamos a añadir los helpers a nuestro módulo, que como ya sabreis, siempre viene bien tenerlos -->
        <helpers>
            <codnexo_tutorial>
                <class>Codnexo_Tutorial_Helper</class>
            </codnexo_tutorial>
        </helpers>
    </global>

</config>

3 – Controlador

MenuAdminController.php

<?php

class Codnexo_Tutorial_MenuAdminController extends Mage_Adminhtml_Controller_Action{

	//Simplemente cargará la plantilla y la mostrará
	public function indexAction(){
		$this->loadLayout();
		$this->renderLayout();
    }
}

?>

 

4 – Helper

Data.php

<?php

class Codnexo_Tutorial_Helper_Data extends Mage_Core_Helper_Abstract{

}

?>

 

5 – Layout

codnexo_menu_admin.xml

<layout>
   <adminhtml_menuadmin_index> <!-- Ruta donde cargar el Layout (siempre el presente adminhtml_controlador_funcion del controlador)-->
		<update handle="admin_index"/> <!-- carga el handle admin_index dentro del actual para que se mantenga la herencia -->
        <reference name="content"> <!-- añadimos un nuevo bloque estructural de contenido -->
			<block type="core/template" name="codnexo_menu_admin" template="codnexo_menu_admin/template.phtml"/>  <!-- nuestro bloque será de tipo template e indicamos la ruta del template a cargar -->
		</reference>
    </adminhtml_menuadmin_index>
</layout>

6 – Template

template.phtml

<h1> Hola nuevo menú!</h1>

 

Tras Realizar estos pasos, al entrar en el panel de administración de nuestro Magento veremos como se ha añadido nuestro nuevo Menú.

Ya sólo quedará ir modificando el código a nuestro gusto, como cambiar el diseño que queremos mostrar y añadir más funciones a nuestro controlador.

 

¿Te ha gustado el artículo?
1 Star2 Stars3 Stars4 Stars5 Stars (1 votos, promedio: 5,00 sobre 5)
Loading...
Artículo escrito por

¡Exprésate! Dejanos tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

5 Comentarios

Sebastian

Tienen q borrar la carpeta 'var' y refrescar

andres

a mi tampoco me funciono y no saca errores, podrias colocar la solucion para haerla, gracias mi magento es 1.9.1

bryan

por favor me pueden ayudar porfavor.  

david

me podrias ayudar por favor.  

david

hola disculpa e seguido todo los pasos como explicas, pero no me muestra nada en el administrador.