Mostrar descripción de las categorías en el móvil en Prestashop 1.7

En resoluciones pequeñas al acceder al listado de productos por categorías en Prestashop 1.7, se oculta la descripción y la imagen de la categoría.

Listado de productos por categoría

La idea es mostrar la descripción de la categoría, tal como podemos visualizar en la siguiente captura:

Descripción de las categorías en Prestashop 1.7

Vamos al fichero:

/themes/classic/templates/catalog/listing/category.tpl

Y dentro de:


<div class="text-sm-center hidden-md-up">

Vemos que solo se imprime el título de la categoría.

Título categoría

Podemos añadir debajo la impresión de la descripción de la categoría:

{if $category.description}
<div id="category-description" class="text-muted">{$category.description nofilter}</div>
{/if}

Quedando del siguiente modo (recordar que si pulsáis sobre la imagen la podéis ver ampliada):

Código modificado
Código modificado

Quizás es un poco confuso, pero fijaros que en el fichero que estamos editando, vemos dentro del:  <div class=”block-category card card-block hidden-sm-down”> que se muestra el título, la descripción y la imagen de la categoría.

Resolución normal

Que es lo correspondiente a lo que estamos visualizando en una resolución normal.

Resolución normal

Y el código que vemos dentro de:  <div class=”text-sm-center hidden-md-up”> es el que vemos en resoluciones pequeñas.

Resoluciones pequeñas
Título pequeño

Por otro lado, recordar que hemos editado directamente la plantilla, pero recordar que en Prestashop 1.7 podemos trabajar con las plantillas hijas (child theme) que aunque nadie te ponga una pistola para trabajar de esa forma, es recomendable, por el blog tenemos un post de Junio de 2017, donde se trataba dicho tema (revisar enlace).

Documento construido bajo Prestashop 1.7.2.5 con la plantilla por defecto.

Mover módulo de posición sin añadirlo a un hook en Prestashop 1.7

Esta entrada es simplemente recordatoria.

En mayo del año 2017, estuvimos comentando el nuevo sistema de Widget que incorpora Prestashop 1.7 en los módulos, para aquellos que no lo recuerden, vuelvo a dejar el enlace: Entendiendo el funcionamiento de los widget en Prestashop 1.7

En junio del año 2017 estuvimos mostrando un ejemplo de como mostrar el formulario de contacto en otras secciones de la tienda, si no lo recordáis, vuelvo a dejar enlace Formulario de contacto en los contenidos en Prestashop 1.7

Si bien es cierto que actualmente podemos mover los módulos (al menos la mayoría de los nativos de Prestashop) desde la pestaña Diseño -> Posiciones (ejemplo básico) a casi todos los hooks porque implementan la interfaz WidgetInterface, sin necesidad de añadir la función del hook como hacíamos en versiones anteriores, también podemos indicar que queremos mostrar un determinado módulo en una determinada zona sin tener que asignar un hook a esa zona, esto es lo que habíamos explicado a inicios del año pasado (2017) en el blog.

Por lo tanto, a modo recordatorio, os recomiendo visitar las siguientes entradas del blog:

Entendiendo el funcionamiento de los widget en Prestashop 1.7 (mayo 2017)
Formulario de contacto en los contenidos en Prestashop 1.7 (junio 2017)

Y también viene bien repasar aquella guía que se hizo sobre la creación de un módulo para Prestashop 1.7 sobre abril del 2017 donde comentábamos también el tema del widget: Crear módulo Prestashop 1.7 (marzo 2017)

Me gusta indicar fechas, porque son entradas que están publicadas en el blog en esas fechas y siempre pueden existir variaciones conforme van saliendo nuevas variantes de Prestashop, aunque sean de la misma rama.

 

[DOC] Preguntas frecuentes por productos en Prestashop

Tenéis en el blog una reseña de un módulo que permite gestionar preguntas frecuentes por productos (tanto de forma individual como en base las categorías de los mismos).

Zona FAQ en el producto

El módulo yo lo he instalado en Prestashop 1.6 (1.6.1.18) no en Prestashop 1.7. Si bien es cierto que, en la reseña, repaso las opciones del módulo, no quiere decir que lo haya testeado. Por lo que estáis invitado a probarlo y ver que funciona y no funciona.

Para acceder a la reseña del módulo, debéis pinchar en la siguiente imagen:

Ver información del módulo para gestionar preguntas frecuentes por productos en Prestashop
Ver información del módulo para gestionar preguntas frecuentes por productos en Prestashop

 

Otro módulo para generar un catálogo en pdf en Prestashop

De este tipo de módulos tenemos en el blog comentado un aporte de Shacker de la Comunidad de Prestashop y uno que creo recordar que no se actualizo con el tiempo de Rémi Rüdiger.

En su momento se reseñaron ambos módulos en el blog, pero el de Shacker es uno de los que siguen funcionando en la actualidad porque se ha ido actualizando con el tiempo, como podéis ver en una reseña que tenemos por el blog:

Exportar catálogo en formato presentación en Prestashop por Shacker

En esta ocasión, vamos hablar de un módulo desarrollado por webbax.ch

La instalación y subida del módulo sin problemas desde la pestaña módulos -> módulos

Configuración módulo

Las opciones de configuración que nos ofrece el módulo son las siguientes:

Bloque -> La generación de PDF

Bloque 1 de configuración
Bloque 1 de configuración
  • Nombre del archivo: Simplemente indicamos como queremos que se llame el fichero.
  • Exportar a: Nos permite seleccionar en que idioma queremos exportar el catálogo
  • Declinaciones de exportación: Permite optar por exportar las combinaciones dependiendo de cómo configuremos la opción.
  • Logotipo en la Página 1: Al activar la opción veremos el logo de la tienda en la primera página del PDF.

    Logo tienda
  • Texto en línea de la Página 1 1
  • Texto en línea de la Página 1 2
  • Texto en línea Página 1 3
    Estos tres textos corresponde al texto que aparece debajo del logo:

    Texto debajo del logo
  • Mostrar el índice de los productos -> Opción para generar un índice de los productos en el PDF

    Índice productos
    Índice productos
  • Índice de posición de los productos -> Podemos indicar si el índice se mostrar al final o al inicio del documento.
  • Tipo de imagen -> El tipo de imagen que vamos a mostrar en los productos. Recordar los tipos de imagen provienen de la pestaña Preferencias -> Imágenes (En PS 1.7 Diseño -> Ajustes de las imágenes)
  • Anchura de las imágenes -> Ancho de las imágenes como bien el nombre indica.
  • Descripciones cortas de la pantalla -> Podemos mostrar las descripciones cortas de los productos y decir a partir de que carácter quedan cortadas.
  • Muestran largas descripciones -> Lo mismo que con descripciones cortas pero aplicadas a descripciones largas.
  • Mostrar el precio -> Permite elegir activar/desactivar la visualización del precio en la generación de PDF.
  • Los precios se muestran en el modo de -> con/sin impuestos.
  • Mostrar referencias -> Permite elegir activar/desactivar la visualización de la referencia en la generación de PDF.
  • Mostrar códigos de barras (EAN13)
  • El enlace a la hoja de producto -> Permite mostrar un enlace para acceder a la ficha del producto.

    Enlace ficha del producto
  • Pie de página de texto -> Texto que se mostrar en el pie de página del catalogo

    Pie de página
  • “Experto”  (max_execution_time) / máximo tiempo de ejecución.
  • “Experto”  (memory_limit) / límite de memoria.
    Permite forzar los valores del memory_limit y max_execution_time que nos pueden servir para exportar catálogos grandes, dicho esto, por mucho que fuerces si el servidor está limitado o tiene una configuración limitada no sirve 🙂Bloque -> Categorías
Bloque exportación de productos por categorías

Simplemente señalamos en base a que categorías de los productos queremos generar el Catálogo.

Una vez que hemos configurado todo, pulsamos el botón:

De la exportación

Generar catálogo

Veremos que en la parte superior de la zona de configuración del módulo tenemos generando el fichero para descargarlo:

Descargar PDF

 

Ver catálogo

¿Dónde puedo descargar el módulo?

Continúa leyendo Otro módulo para generar un catálogo en pdf en Prestashop

[DOC] Enviar newsletter desde el panel de administración en Prestashop

Es un módulo “gratuito” y más o menos funcional con las ultimas variantes actuales de Prestashop 1.6.1.X que permite: crear campañas, gestionar plantillas de los boletines, crear la propia newsletter en el panel, enviar boletines, etc….

Tenéis “reseña/guía” todavía sin terminar de unas 1500 palabras que terminare cuando pueda, donde podéis ver el funcionamiento básico del módulo para haceros una idea.

Para acceder a la reseña del módulo y poder descargarlo, debéis pinchar en la siguiente imagen:

Acceder a información del módulo

PosData:  Recordar que muchas veces hago reseñas de módulos gratuitos o escribo manuales para Prestashop en el blog, pero no los publico en el feed general del blog.

PosData: El módulo tiene su tiempo, así que “testearlo” antes en una instalación de prueba.

Cambiar etiquetas “h1” de los listados de productos en Prestashop 1.7

En Prestashop 1.7 (hasta la versión 1.7.3.0 RC1) vemos que en los listados de productos el título del producto esta englobado en un “h1”.

Veamos desde inspeccionar elemento.

Etiqueta H1 en los listados de productos
Etiqueta H1 en el título de los listados productos

Para cambiar la etiqueta “h1” en los listados de productos por otra etiqueta (h2/h3/ etc.. lo que nos interese) editamos el fichero:

/themes/classic/templates/catalog/_partials/miniatures/product.tpl

¿Por qué ese fichero?

Al acceder al fichero (correspondiente a la plantilla de visualización del módulo de productos destacados):

/themes/classic/modules/ps_featuredproducts/views/templates/hook/ps_featuredproducts.tpl

Vemos un include a:

/themes/classic/templates/catalog/_partials/miniatures/product.tpl
(con un bucle foreach para imprimir los productos)

Bucle + include

Al acceder al fichero: /themes/classic/templates/catalog/listing/product-list.tpl  que corresponde al listado de productos por categoría o el que se usa de plantilla cuando buscamos un producto y arrojamos los resultados etc.. vemos otro include hacia el fichero:

/themes/classic/templates/catalog/_partials/products.tpl

Include

Al acceder al fichero:

/themes/classic/templates/catalog/_partials/products.tpl veremos que hace un include al fichero:

/themes/classic/templates/catalog/_partials/miniatures/product.tpl

Include
 Por lo tanto, los cambios los vamos a realizar en el fichero:


/themes/classic/templates/catalog/_partials/miniatures/product.tpl

Buscamos el bloque ->  {block name=’product_name’}

{block name=’product_name’}

Y nos encontramos dentro la etiqueta “h1” junto con la variable que imprime el nombre del producto.

Etiqueta h1

Por ejemplo, la cambiamos por “h3”

Cambiar etiqueta h1 por h3

Cuando accedemos a los listados de productos, veremos un “h3” en los nombres de los productos.

Etiqueta cambiada

Si queremos que el cambio solo se aplique a la página principal y no al resto de listados, podemos usar un condicional con la variable:

 {$page.page_name}

Por ejemplo,

Si estamos en la página principal cambiamos los h1 de los títulos de los productos por h2, en el resto de sitios donde aparezcan los listados de productos colocamos otra etiqueta, por ejemplo el h3.

Etiqueta de título según sección en Prestashop

Fijaros que con:  {$page.page_name} hemos construido un condicional para comprobar en que sección estábamos.

Si accedemos ahora a la tienda, veremos que los títulos de productos tienen la etiqueta “h3” en la página principal.

h3 en los listados de productos de la página principal

Si accedemos a otra sección de la tienda que no sea el listado de productos de la página principal.

Por ejemplo los listados de productos por categoría, veremos la etiqueta “h2” en los listados de productos.

Listado de productos por categoría

Podéis más información sobre cómo construir condicionales en la documentación de Smarty:
https://www.smarty.net/docsv2/es/language.function.if.tpl
https://www.smarty.net/docs/en/language.function.if.tpl

El valor de la variable: {$page.page_name} lo podemos identificar fácilmente desde inspeccionar elemento donde el body tiene asignado mediante un id el valor de dicha variable.

ID sección categoría

Por ejemplo, cómo podemos ver en la captura, cuando estamos situados en la sección de los listados de productos por categoría el valor de {$page.page_name} es “category” mientras que cuando estamos en la página principal el valor es “index

Obviamente a que tener cuidado tocando el fichero: 

/themes/classic/templates/catalog/_partials/miniatures/product.tpl

Ya que afecta a todas las partes de la tienda (sean módulo u otras secciones) que realicen ese include, una forma de diferenciar donde estamos es con el: {$page.page_name}, otra es definiendo un include diferente para cada sección copiando la estructura general del que ya existe.

Dicho esto, en mi caso particular he aplicado los cambios del “ejemplo” editando sobre la misma plantilla, pero lo más conveniente es crear una plantilla hija y hacer solo los cambios pertinentes en la plantilla hija.

Documento construido en base Prestashop 1.7.3.0 RC1 y la plantilla por defecto.

PosData: Si no veis los cambios pulsar el botón de limpiar (vaciar) la cache en la pestaña Parámetros Avanzados -> Rendimiento

 

Prestashop 1.7.2.5 disponible para descargar

El día 21 de febrero de 2018 Prestashop ha publicado la versión 1.7.2.5.

Se trata una actualización de seguridad para todas las versiones anteriores de Prestashop 1.7.

Actualmente se detectaron 2 vulnerabilidades que afectaban al backoffice (panel de administración) y una de ellas es crítica.

Más información sobre dichas vulnerabilidades aquí:

http://build.prestashop.com/news/prestashop-1-7-2-5-maintenance-release/

Información

Descargar Prestashop 1.7.2.5

https://www.prestashop.com/es/versiones-anteriores

Log de cambios

¿Se están colando rusos o chinos por el formulario de contacto en Prestashop?

Según información proveniente del foro de Prestashop, les seguía pasando incluso después de haber instalado el Capcha de Google en la tienda.

Según nos comenta el usuario FCapdevila de la comunidad de Prestashop, el problema es que su versión de Prestashop no estaba actualizada, por lo tanto ha tenido que aplicar el siguiente parche:

* Estas modificaciones ya van incluidas a partir de Prestashop 1.6.1.17

Toda la información en el siguiente enlace:

https://github.com/PrestaShop/PrestaShop/pull/8168/files

Editas los fichero:

/controllers/front/ContactController.php
/themes/TuPlantilla/contact-form.tpl

Y realizar la siguientes modificaciones (clic para ampliar imágenes).

Cuando se indica “+” significa añadir línea y cuando se indica “” significa quitar línea.

Fichero: /controllers/front/ContactController.php

ContactController.php

Fichero: /themes/TuPlantilla/contact-form.tpl

contact-form.tpl

No se os olvide limpiar la caché de Prestashop en la pestaña Parámetros Avanzados -> Rendimiento

Seguiremos informando de más novedades sobre este aspecto …

Añado: Recomendable cambiar también los emails destinatarios del formulario de contacto -> Administrar destinatarios del formulario de contacto

Añado 2: Esto no quita que no tengas que añadir el captcha de Google a tu tienda: Revisar enlace

* Actualización del artículo:

Añado 3: 
Según ha informado Prestashop:
http://build.prestashop.com/news/fighting-against-spamming/

    • Para Prestashop 1.7 las tiendas recibirán en breve una actualización del módulo correspondiente al formulario de contacto correspondiente a lo comentado en esta entrada respecto a la 1.6. Recordar que en Prestashop 1.7 el formulario de contacto es un módulo, por lo tanto, solo será necesario actualizar el módulo desde el panel de administración.
    • Por otro lado, se recomienda desinstalar el módulo “Enviar a un amigo / Send to a Friend” de Prestashop.
    • Además, para PS 1.6 (independientemente del parche comentado en el post actual que debe ser añadido si usáis Prestashop 1.6 con una versión inferior a Prestashop 1.6.1.17) se espera en la 1.6.1.19 una actualización para que Prestashop no envíe el mensaje de confirmación del envío del formulario de contacto al email ingresado en el mismo.

Hooks de la ficha del producto en Prestashop 1.7

En el año 2013 estuvimos comentando en un artículo algunos de los hooks disponibles en la ficha del producto para Prestashop 1.5, en esta ocasión vamos hablar sobre lo mismo pero aplicado a Prestashop 1.7 en base a la plantilla por defecto.

Solo vamos a intentar hablar de los hooks de visualización (los display, no los actions, referente a los actions en la ficha del producto lo explicaremos en otro post)

Al acceder al fichero:

/themes/classic/templates/catalog/product.tpl

Si buscamos la palabra “hook” encontraremos inicialmente dos referencias:

hook -> displayReassurance

displayReassurance

hook -> displayFooterProduct

displayFooterProduct

Que corresponde visualmente a lo que señalamos en rojo en la siguiente captura:

displayFooterProduct y displayReassurance
displayFooterProduct y displayReassurance

En el hook -> displayReassurance tenemos inicialmente instalado el módulo: blockreassurance (Información de seguridad y confianza para el cliente) que podemos ver en la misma captura.

Por otro lado, en está captura,  no vemos ningún módulo instalado en el hook -> displayFooterProduct, pero por ejemplo el módulo de ventas cruzadas (ps_crossselling) suele quedar anclado en ese hook o el típico de productos de la misma categoría.

Volvemos al fichero:

/themes/classic/templates/catalog/product.tpl

Y encontramos otro include:

Otro include

Al acceder al fichero:

/themes/classic/templates/catalog/_partials/product-additional-info.tpl

Vemos que tenemos disponible el hook -> displayProductAdditionalInfo

Hook -> displayProductAdditionalInfo

Un ejemplo, es que en este hook por defecto se esta imprimiendo el módulo de las redes sociales en una instalación limpia de Prestashop. Es decir, la zona situada debajo del botón de “Añadir al carrito” y encima del hook displayReassurance

displayProductAdditionalInfo

Si seguimos avanzando en el fichero:

/themes/classic/templates/catalog/product.tpl

Vamos a ver varios “includes

Por ejemplo, el referente a las miniaturas que aparecen debajo de la imagen grande del producto.

thumbnails
Include

Al acceder al fichero:

/themes/classic/templates/catalog/_partials/product-cover-thumbnails.tpl

Vemos que debajo de las “miniaturas” tenemos otro hook denominado: displayAfterProductThumbs.

displayAfterProductThumbs

Que se visualizara debajo de las miniaturas.

displayAfterProductThumbs

Volvemos al fichero:

/themes/classic/templates/catalog/product.tpl

Y encontramos otro include correspondiente el bloque de precios de la ficha del producto

Otro include

Al acceder al fichero:

/themes/classic/templates/catalog/_partials/product-prices.tpl

Nos encontramos el hook -> displayProductPriceBlock

displayProductPriceBlock
displayProductPriceBlock

PosData:

Los antiguos hooks displayProductTab  y displayProductTabContent de las pestañas “están “muertos” por el momento hasta que Prestashop decida añadirlos por defecto en las próximas variantes.

Tabs Prestashop 1.7

Include: /themes/classic/templates/catalog/_partials/product-details.tpl

De todos modos, yo pienso posiblemente lo puedan añadir en un futuro/presente por defecto, sino pues simplemente creáis vuestros hooks: Crear hooks en Prestashop

Documento válido hasta Prestashop 1.7.3.0 RC1