PRESTASHOP

C贸mo crear un m贸dulo de PrestaShop



En este art铆culo, crearemos el m贸dulo PrestaShop m谩s simple para la versi贸n 1.7. La extensi贸n contendr谩 las opciones m谩s b谩sicas junto con la visualizaci贸n de contenido de muestra enganchado en la p谩gina principal. El tutorial es una base excelente para trabajar en m贸dulos PrestaShop m谩s avanzados.

Comenzamos inventando el nombre del m贸dulo. Vale la pena describir la funci贸n que realizar谩 el complemento. En nuestro caso, le daremos un nombre "prestapros_demo". Las extensiones se encuentran en el directorio "m贸dulos". Ahora, cree all铆 un directorio con un nombre inventado previamente. Luego, dentro del directorio agregue un archivo php con el mismo nombre. Tambi茅n debe agregar un archivo gr谩fico (que se muestra en el panel de administraci贸n). Creamos un m贸dulo para la versi贸n 1.7, por eso agregamos un archivo de logotipo con una resoluci贸n de 128 x 128 px en formato png.

El 煤ltimo archivo que agregamos es index.php. Lo creamos directorio de m贸dulos. El siguiente contenido debe pegarse en el archivo. Este es un archivo que asegura el acceso al directorio desde afuera.

Crear modulo Prestashop

Finalmente, deber铆amos tener la siguiente estructura de archivos:

Crear modulo Prestashop

El siguiente paso es editar el archivo del m贸dulo principal. Pegue el siguiente c贸digo en 茅l:

Crear modulo Prestashop

La primera condici贸n (if) evita que se llame al archivo directamente desde el exterior. Si la constante _PS_VERSION_ no est谩 definida cuando se invoca el archivo, el script se cerrar谩.

Luego creamos una clase llamada "prestapros_demo" que extiende la clase M贸dulo. Esta es la acci贸n requerida para que la extensi贸n funcione correctamente.

Echemos un vistazo a la construcci贸n del constructor. Si el nombre de su m贸dulo difiere del que figura en el art铆culo, cambie el valor $ this-> name. Adem谩s, puede cambiar $ this-> author. Puede dejar el resto de los atributos como en el ejemplo.

$this-> name es la ID del m贸dulo, su valor debe ser el mismo que el nombre del directorio de extensi贸n
$this-> tab define en qu茅 secci贸n de la lista de back office de los m贸dulos se mostrar谩 el complemento PrestaShop. En nuestro caso, establecemos el valor en 'front_office_features' porque el m贸dulo est谩 dise帽ado para mostrar texto adicional en el lado frontal. Se pueden encontrar m谩s valores de atributos en el sitio web de PrestaShop
$this-> version es la versi贸n del m贸dulo. En nuestro caso, podemos establecerlo en 1.0.0
$this-> author ingresamos la firma que identifica al autor, que ser谩 visible en el panel administrativo
$this-> need_instance call (o no) clase de m贸dulos al cargar la p谩gina del m贸dulo en el panel de administraci贸n
La tabla $this-> ps_versions_compliancy especifica el valor de las versiones de PrestaShop para las que funcionar谩 el m贸dulo. Si la versi贸n de la tienda no cabe en el rango, el m贸dulo ni siquiera se instalar谩.
$this-> bootstrap define si las vistas de m贸dulos en el panel de administraci贸n se crear谩n usando bootstrap
parent :: __ construct (); llama al m茅todo constructor de la clase M贸dulo.

Las l铆neas que se llaman despu茅s del c贸digo anterior son responsables de: nombre, descripci贸n y mensaje que se muestran al eliminar el m贸dulo PrestaShop. Est谩n "envueltos" en el m茅todo 'l', que le permite ingresar traducciones.

Ya hemos discutido el constructor. El siguiente paso es agregar dos m茅todos simples pero necesarios. Al final de la clase del archivo php principal (antes del 煤ltimo cierre '}') agregue el siguiente c贸digo:

Crear modulo Prestashop

Los m茅todos son responsables de la instalaci贸n y eliminaci贸n del m贸dulo en el panel de administraci贸n de PrestaShop.

El m茅todo "registerHook" es responsable de "conectar" el m贸dulo a un gancho dado durante la instalaci贸n. Hay una gran cantidad de lugares en el c贸digo de PrestaShop que le permiten conectar m贸dulos. Conectarse le permite ejecutar su propio c贸digo en el m茅todo apropiado. La lista completa de ganchos para la versi贸n 1.7 est谩 disponible aqu铆 (https://devdocs.prestashop.com/1.7/modules/concepts/hooks/list-of-hooks/).

En nuestro caso, conectamos el m贸dulo al gancho 'displayHome', que permitir谩 mostrar el contenido en la p谩gina principal de la tienda PrestaShop.

El siguiente paso es agregar un m茅todo que maneje el gancho anterior. Pegue el siguiente c贸digo justo despu茅s del m茅todo de desinstalaci贸n:

Crear modulo Prestashop

El m茅todo devuelve una cadena con un enlace a nuestro sitio. Puede cambiar el valor de retorno al que desee.

Vaya al panel de la oficina administrativa de la tienda a la secci贸n de m贸dulos para instalar la extensi贸n. En la lista de m贸dulos para la instalaci贸n, encuentre nuestro m贸dulo y haga clic en el bot贸n instalar.

Crear modulo Prestashop

Despu茅s de una instalaci贸n exitosa, deber铆a aparecer un mensaje sobre su progreso positivo. Ahora puede ir a la p谩gina de inicio de las tiendas y ver el c贸digo agregado.

Crear modulo Prestashop

Vale la pena recordar que muchos m贸dulos se pueden conectar a un gancho. Puede cambiar la posici贸n de los m贸dulos en el panel de administraci贸n:

Crear modulo Prestashop