Donde guardo mis ideas

Carlos Coronado Maleno

  • RSS
  • Facebook
  • Twitter
  • Linkdin
  • AboutMe
  • Google plus

Crear un módulo para prestashop 1.5.x (Parte 2)

Por: Carlos Coronado 19 - agosto - 2013 1 Comentario

Esta es la segunda parte de la guía para crear un módulo para la tienda online Prestashop.

En esta entrada veremos como se crea la parte del back-office personalizada.

Si te perdiste la primera entrada, aquí la tienes.Para empezar, podemos añadir un enlace directo en los menús superiores, para no tener que configurar el módulo teniendo que hacer click en la parte de Módulos->Modulos y buscarlo en la lista.

Para ello, tenemos que añadir este trozo de código en la función install de nuestro módulo.

if (!$id_tab = Tab::getIdFromClassName(‘AdminNuevo’))
{
$tab = new Tab();
$tab->class_name = ‘AdminNuevo’;
$tab->module = ‘nuevo’;
$tab->id_parent = (int)Tab::getIdFromClassName(‘AdminCustomers’); //por ejemplo, aparecerá al final del menú clientes
foreach (Language::getLanguages(false) as $lang)
$tab->name[(int)$lang[‘id_lang’]] = ‘Nuevo”;
if (!$tab->save())
return $this->_abortInstall($this->l(‘Imposible crear la pestaña de nuevo’));
}

Con esto, ya tenemos un enlace a nuestro módulo desde el menú superior que aparece cuando se despliega el menú clientes.

 

Para completar el módulo tenemos que crear dentro de nuestra carpeta del módulo controllers/admin/AdminNuevo.php

El contenido del fichero será este:

class AdminNuevoController extends ModuleAdminController
{
public function initContent(){
global $cookie;
$token=md5(pSQL(_COOKIE_KEY_.’AdminModules’.(int)Tab::getIdFromClassName(‘AdminModules’).(int)$cookie->id_employee));
header(‘Location: index.php?configure=nuevo&tab_module=advertising_marketing&module_name=nuevo&controller=AdminModules&token=’.$token);
exit;
}
}

Esto lo que hace es que cuando hacemos click en el menú del inicio, en el desplegable de Nuevo, nos redirige a la configuración del módulo.

(no es gran cosa, pero visualmente es muy cómodo).

 

A partir de aquí, el funcionamiento es igual que los módulos de versiones anteriores, solo hay que rellenar la función getContent() para mostrar la configuración de nuestro módulo.

A ver si me da tiempo y os dejo el .zip con el módulo completo para que tengáis una plantilla en blanco siempre que queráis, y habilitaré una sección de descargar para poner ahí todos los módulos que voy creando, para que los uséis si os hacen falta.

 

Espero que os sirva de ayuda.

Desarrollador de aplicaciones.
Consultor tecnológico.

Facebook Twitter LinkedIn Google+ Skype  

Una respuesta hace mucho.

  1. javier dice:

    Muchas gracias por la info. Ya tengo la base para comenzar!



Política de privacidad

Utilizamos "cookies" propias y de terceros para elaborar información estadística y mostrarle publicidad personalizada a través del análisis de su navegación. Si continúa navegando acepta su uso. Puede leer la política de cookies aquí.

Hemos detectado que estás usando un bloqueador de publicidad. Por favor, considera desactivarlo en esta web. Aunque no es mucho, la publicidad nos ayuda a paliar los gastos de mantener esta web activa. Muchas gracias

No cedemos los datos a terceros, solo lo usamos para enviarte notificaciones cuando publicamos algo nuevo.
No enviamos publicidad.