PrestaShop: Módulos

Recuperar la configuración desde el módulo

¡Prueba gratis durante 10 días

nuestros 1203 cursos !

Prueba gratis Mostrar modalidades de suscripción
Con la conexión entre la plantilla y la función ejecutora ya montada, el siguiente paso es guardar efectivamente los datos de configuración y dejar la plantilla lista para que muestre los datos previamente guardados.

Transcripción

Para que el formulario de configuración de mi módulo funcione correctamente necesito que cuando se cargue ese formulario los 'radio buttons' aparezcan seleccionados o no dependiendo de la última selección que se ha hecho. En este momento del desarrollo yo he creado ese formulario, pero no se van a almacenar estos valores. De hecho si salgo para irme a cualquier parte y vuelvo otra vez entrar en el formulario, aquí se puede ver cómo efectivamente no se está cargando ningún valor. Para pasarle valores a este formulario vamos a utilizar una conexión específica que tienen las plantillas Smarty. Aunque más adelante voy a hablar de ello, no voy a entrar ahora mismo muy en detalle, pero sin embargo sí que voy a explicar que hay una propiedad dentro de la clase 'Module' que es el 'context'. Este 'context' va a servir para trabajar con diferentes tipos de elementos, va a servir para trabajar desde con usuarios hasta para trabajar, como en este caso, con las plantillas. Así que si yo necesito comunicar mi módulo con la plantilla, desde el PHP siempre voy a poder utilizar este 'this.context Smarty'. Y luego desde él lo que puedo hacer es asignarle un valor a una determinada variable. Así que para eso se utiliza ese método de asignar. Tiene dos parámetros: uno que es el nombre de la variable que voy a pasar, por ejemplo pues lo preferible es que sea el mismo nombre que la variable donde voy a almacenar el valor, y luego, en segundo lugar, aquí lo que puedo hacer es enviar la variable donde se ha almacenado el valor que se ha guardado dentro de la configuración. Hemos visto previamente que ese valor se guardaba en la clase 'Configuration' utilizando el método 'date value', y he guardado la variable 'Foto CLI comments'. Bueno pues lo que puedo hacer es usar, como decía, esta variable 'enable comment' y asignarle el valor sacándolo desde la configuración. Y es que esa clase 'Configuration' además de 'update value' tiene otro método estático que es el método 'get'. Y en ese método 'get' lo que hago es pasarle como parámetro el nombre de la variable donde lo he almacenado. Gracias a este sistema, a estas dos simples líneas, lo que hago es recuperar la configuración, o sea recuperar el valor que he guardado previamente al recibir el formulario, y en segundo lugar enviárselo a Smarty. Y ahora necesito utilizar este 'enable comment' dentro del Smarty. ¿Y dónde lo voy a utilizar? Bueno pues tengo un formulario en el que tengo 2 'radio buttons'. Tengo que hacer que, en caso de que tenga un valor, uno de ellos aparezca marcado y, en caso de que tenga otro valor, el otro de ellos sea el que aparezca marcado. Si me paro a mirar cada uno de estos "imputs", me encuentro con que en el caso del primero está pasando el valor 1 y en el caso del segundo está pasando el valor 2. Bueno pues son los que utilizar. Y voy a utilizar una sentencia condicional de Smarty. Así que voy a poner un "if" y dentro de ese "if" voy a preguntar por la variable 'enable comment', que es la variable que estaba pasando. En caso de que sea igual al valor 1, pues en ese caso yo quiero que este elemento en concreto aparezca marcado como he seleccionado. Así que para eso utilizo el parámetro 'checked'. Y luego por otro lado voy a cerrar esa sentencia condicional, aquí lo vemos. Como decía, por otro lado, pues voy a aplicar exactamente lo mismo pero para el caso de que el valor sea igual a 0. Así que aquí vemos que Smarty pregunta si tiene una variable 'enable comment' que sea igual a 1, pues entonces hace que se haya chequeado el 1. Y si no hace que se haya chequeado el 2. Voy a guardarlo, voy a abrir el Chrome, voy a recargarlo. De momento, como no tenía valor 1, entiende que es el valor 0, con lo cual ya me ponía un "no". Voy pulsar ahora sobre "sí", lo he guardado. De entrada ya aparece como un "sí" y si me voy a cualquier otro apartado de la tienda y vuelvo de nuevo –voy a dejar que la cargue correctamente– pues si ahora vuelvo de nuevo a mi configuración me voy a encontrar con que ya me ha almacenado efectivamente este valor. Así que resumiendo un poco, pues vemos que podemos utilizar 'this.context Smarty' y luego 'assign' para pasar un parámetro con el valor que yo quiera. Por cierto que estos valores que puedo pasar puede ser cualquier tipo de variable de PHP. Quiero decir, en este caso he pasado simplemente un 1 o un 0, pero podría haber enviado un 'array' en el que podría haber metido todo tipo de datos.

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
Duración:2:49 horas (33 Videos)

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.