PrestaShop: Módulos

Aplicar el módulo en un hook mediante la función install

¡Prueba gratis durante 10 días

nuestros 1218 cursos !

Prueba gratis Mostrar modalidades de suscripción
El punto donde se define a qué hooks se asocia un módulo es en la función install. En este vídeo asignaremos nuestro módulo al hook del front-end que ejecuta la parte inferior de la vista de detalle de los productos.

Transcripción

En este vídeo vamos a, por fin, conseguir que aparezcan elementos de mi módulo dentro de lo que es la tienda. Vamos a ver cómo hacerlo. Mi módulo consiste en un formulario que tiene que permitir a los clientes subir su propia fotografía utilizando el producto y además añadir comentarios. Y luego además deberían aparecer las fotografías de los diferentes clientes también mostrándose en ese mismo sitio. Eso significa que yo voy a tener que mostrar los contenidos de mi módulo dentro de la página de Producto, dentro realmente de donde se está mostrando el producto en detalle. Para encontrar qué "hook" es el que voy a necesitar, puede irme al listado de hook y dentro de él, lo primero irme a la categoría de Display. Display porque estoy mostrando. ¿Qué es lo que estoy mostrando? Pues un producto. Así que voy a irme a Display Product, que está un poco más abajo, me voy moviendo. Se pueden ver algunos que son muy obvios como 'Display Header' o 'Display Home', por ejemplo. Y un poco más abajo pues me encuentro con Display Product. Y aquí tengo varios: 'buttons', 'comparison', 'tab'. Y en mi caso, ¿dónde quiero que se vea? Quiero que se vea realmente el contenido de todo el producto. Así que va a ser este Display, Product, Tab, Content. Voy a copiar entonces el nombre de este hook y ahora voy a decirle al módulo que se tiene que ver en ese hook concreto. ¿Y eso dónde se lo digo? Bueno pues se lo digo en la instalación del módulo, así que dentro de la función Install, después de haber primero intentado que el 'parent' haga esa instalación, voy a pedirle al módulo que registre este módulo para este hook en concreto. Y para ello se utiliza "register Hook". Este "register Hook", por cierto que tiene la hache mayúscula, se ocupa de registrar este módulo en el hook que viene definido dentro del parámetro que se pasa en la función, que es el que acabo de copiar. Así que con esta acción tan fácil y tan tonta ya he conseguido que mi módulo quede registrado dentro de ese hook. Pero de todas formas, necesito todavía una cosa más y es que no solamente se tiene que conseguir registrar ese módulo, por otro lado también necesito que mi módulo ofrezca algo al hook, que pinte algo dentro de la tienda. Y para ello se utilizan las funciones que sirven para pintar los diferentes hooks. Todas ellas van a tener una estructura de nombres basada en una nomenclatura muy simple. Por supuesto "public function" y luego es: empezando por hook y a partir de aquí voy a poner el nombre de ese hook, pero con la primera letra en mayúsculas. Así que en este caso va a ser el "hook display product tab content". Esta función además va a recibir parámetros. Hay algunos hooks que realmente envían parámetros y hay otros que no envían ninguno. En mi caso, de todas formas me interesa recibir esos parámetros porque, por ejemplo, va a ser importante poder recuperar el identificador del producto que se está visualizando. Así que voy a recibir un objeto que va a ser el objeto "params". Y esta función, que sirve como digo para mostrar contenidos, me va a devolver a la tienda, a la página, a Prestashop, pues el código que yo decida, que puede ser una plantilla o que también aquí pues simplemente podría escribir por ejemplo: "el contenido de mi módulo". Luego más adelante ya añadiremos una plantilla en la que se pueda visualizar ese formulario, pero de momento ya estaría listo. Por un lado, en el Install registro el hook y por otro lado creo la función "hook" con el nombre de ese hook y devuelvo el contenido que quiero que se vea. Si quiero probarlo tendré que irme de nuevo a mi tienda. Dentro de mi tienda, a Módulos y servicios, voy a desinstalar mi módulo y una vez que lo haya desinstalado voy a volverlo a instalar. Así que selecciono en el desplegable Desinstalar. Esto me muestra una alerta que me pregunta si estoy seguro, le voy a decir que sí. Este módulo queda desinstalado, y ahora voy a volver a pulsar en Instalar. Le voy a pedir que lo instale. Si he escrito todo el código correctamente lo instalará. En caso de que hubiera tenido cualquier tipo de error, me hubiera aparecido aquí una banda roja diciéndome que había cualquier problema. Y ahora si me voy a mi tienda y voy a ver cualquiera de los productos, en la parte inferior debería de ver, debajo de la ficha técnica, aquí lo vemos: contenido de mi módulo, que es ni más ni menos que el texto que acabo de enviar directamente desde este hook. O sea, hemos conseguido ya que el módulo empiece a mostrar contenidos, solo que esto una forma muy cutre de trabajar. O sea, aquí lo que tengo que hacer es asociar una plantilla y en esa plantilla ya meter todo el HTML necesario.

PrestaShop: Módulos

Introdúcete en la programación de módulos de Prestashop, empezando por conceptos básicos imprescindibles para crear bloques funcionales dentro de este CMS de comercio electrónico.

2:49 horas (33 Videos)
Actualmente no hay comentarios.
 
Software:
Fecha de publicación:12/10/2016

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.