Prestashop

Optimizar la velocidad de carga en Prestashop

La velocidad de carga de una web se ha convertido en uno de los parámetros más importantes para el posicionamiento en buscadores, por ello vamos a ver en este artículo algunos puntos que como gestores de una tienda online debemos revisar para mejorar el tiempo de carga de nuestra tienda.

Si habéis llegado hasta aquí, probablemente ya hayáis comprobado la velocidad de carga de vuestra tienda, si no, es el momento de revisarla, para ello podemos usar la herramienta de Google: PageSpeed Insights.

Google PageSpeed

Tras introducir la URL de tu tienda, podrás ver un listado de las mejoras necesarias tanto para la navegación desde dispositivos móviles como para ordenadores.

Los principales motivos por los que una tienda online con Prestashop tenga una velocidad de carga lenta son los siguientes:

  • Mostrar contenidos cargados mediante enlaces externos.
  • No tener optimizados los CSS, JS ni HTML, deben estar minimizados y unificados.
  • No tener optimizadas las imágenes.
  • No tener habilitada la comprensión ni el tiempo de expiración de la caché.
  • Tener instalados módulos que no están siendo usados.
  • La plantilla no está optimizada.

Seguro que en Google PageSpeed te habrá mostrado algunos de estos avisos, por lo que vamos a configurar nuestro prestashop para solucionarlos.

Lo primero es configurar el rendimiento de nuestro Prestashop:

Configurar el rendimiento de nuestro Prestashop:

  1. Apartado de rendimiento de Prestahsop
  2. Modificación del archivo .htaccess

1. Apartado  de Rendimiento de Prestahsop

Nos dirigimos a nuestro gestor de prestashop o backoffice a:
Parametros avanzados –>Rendimiento

– En el apartado SMARTY, debemos marcar la opción: NUNCA RECOMPILAR LOS ARCHIVOS DE PLANTILLA.

Configuración de smarty

Esta opción afecta a la velocidad de la tienda directamente, sin embargo, también hay que contemplar en qué momento activamos esta opción ya que si se realiza algún cambio en algún archivo debemos activar FORZAR COMPILACIÓN para que se muestre.

También es recomendable si la tienda aún está terminándose de desarrollar o en una fase de cambios importantes poner la opción RECOMPILAR LAS PLANTILLAS CUANDO LOS ARCHIVOS SEAN MODIFICADOS y una vez finalizados marcar que nunca recompile.

Pero si en la tienda ya no se van realizar grandes cambios optamos por la primera opción para mejorar la velocidad, recordando que si se hacen modificaciones en los archivos .tpl, hay que recompilar.

A continuación dejaremos marcada la opción de caché de Prestahsop:

Caché prestashop

– En el apartado CCC (COMBINACIÓN, COMPRESIÓN Y CACHE), activaremos todas las opciones para que comprima todo el código (HTML, CSS y JS) en un archivo y cargue mucho más rápido. Con esta opción se solucionaría el aviso de Minimizar los archivos CSS, JS y HTML.

Minimizar HTML, CSS, JS

– En el apartado CIFRADO, activaremos el cifrado RJINDAEL. Si modificamos esta opción las cookies serán reiniciadas, este cifrado es más rápido.

Cifrado Rjindael– En el apartado Caché, activamos “uso de caché” y se nos mostrarán una serie de opciones:

Configuración cache prestashop

Podemos probar qué sistema de caché es mejor para nuestro prestahsop, ya que no hay uno indicado como el mejor, para ello podemos usar nuestro navegador web Chrome y ver nuestra tienda, una vez en ella, pulsamos el botón derecho de nuestro ratón y le damos a la opción INSPECCIONAR,y se nos dividirá la página en dos: la parte de nuestra tienda y el inspector. En él buscamos la opción NETWORK

Tiempo de descarga

En este ejemplo, en “time” hay un excelente tiempo de carga de una imagen JPEG, pero si aún así quisiéramos probar, o no fuera nuestro caso, escogeríamos otro sistema de caché, iríamos a nuestro gestor y editaríamos la configuración de:

Configuración de Memchache:

Memcache

Volveríamos a Chrome, actualizamos la página con F5 y volveríamos a consultar el inspector–>Network columna “time”.

Configuración de APC:

APC cache

Volveríamos a Chrome, actualizamos la página con F5 y volveríamos a consultar el inspector–>Network columna “time”.

Y quedarnos con el que mejor tiempo de descarga tenga.

2.Modificar nuestro archivo .htaccess

Lo primero es revisar que tenemos activadas las URL amigables, vamos a: Preferencias –> SEO+ URLs

URL amigables en Prestashop

Una vez confirmado, y en caso de no tenerlas las activaríamos, nos vamos a la carpeta que contiene nuestro Prestashop y en su raíz nos encontraremos con el archivo .htaccess

En el archivo debemos incluir la fecha de caducidad para los archivos del tipo: javascript, imágenes, css y texto. Copiamos y pegamos el siguiente código.

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/vnd.microsoft.icon "access plus 1 year"
ExpiresByType application/font-woff "access plus 1 year"
ExpiresByType application/x-font-woff "access plus 1 year"
ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
ExpiresByType font/opentype "access plus 1 year"
ExpiresByType font/ttf "access plus 1 year"
ExpiresByType font/otf "access plus 1 year"
ExpiresByType application/x-font-ttf "access plus 1 year"
ExpiresByType application/x-font-otf "access plus 1 year"
</IfModule>

Después añadiremos también el siguiente código en el archivo .htaccess para la compresión de prestashop mediante el llamado mod deflate.

FileETag INode MTime Size
<IfModule mod_deflate.c>
   <IfModule mod_filter.c>
      AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/x-javascript
   </IfModule>
</IfModule>

En caso de que al modificar el archivo .htaccess vieramos que nuestro prestahsop no hace correctamente la redirección, volveríamos a Preferencias –> SEO + URLs y desactivamos y activamos las URls amigables para que regenere el .htaccess

Eliminar contenidos cargados mediante enlaces externos:

Otro de los avisos que nos podía mostrar Google PageSpeed, era que se están mostrando recursos como; imágenes, fuentes, css, módulos, etc., enlazados a recursos externos a nuestra web. Por ejemplo, redes sociales, chats, etc. La única posibilidad es eliminarlo si no es posible cargarlos desde nuestra propia web.

Por ejemplo,si usamos un banco de contenidos y utilizamos una imagen, como éstos funcionan almacenando las imágenes que queramos en nuestra sesión y nos dan un enlace para ponérselo a nuestras imágenes, estaríamos cargando esa imagen desde otro servidor,otro sitio externo a nuestra web. Cada vez que nuestra tienda quiere mostrar esa imagen, llama a ese banco de contenidos, por eso decimos que es un recurso que carga externamente. Si Google PageSpeed nos muestra este aviso, deberíamos coger esas imágenes, optimizarlas y subirlas a nuestro servidor y prestashop para que cargue internamente y mucho más rápido.

Optimizar imágenes:

Nos refierimos a la reducción de peso de nuestras imágenes sin pérdidas de calidad visual. Existen multitud de herramientas gratuitas para ello por ejemplo RIOT, también por supuesto podemos usar herramientas de pago como Photoshop o Firework.

Módulos instalados sin uso:

Es bastante habitual que cuando se instalen las plantillas o prestashop se empiecen a instalar módulos por si nos hicieran falta. En sí es un error porque ahora, que Google PageSpeed nos avisa que tenemos una tienda lenta, tenemos que revisarlos y desinstalar todos aquellos que no estén en uso.

Por ejemplo, los módulos de estadísticas de prestahsop, si nosotros usamos otros sistemas de estadística como google analytics, no necesitamos estos módulos, se deberían desinstalar.

Para ello vamos a Módulos y Servicios — > Módulos

Buscamos el que queremos quitar y desinstalamos:

Módulos Prestahsop

También se da el caso de HOOKs que no están siendo mostrados por la plantilla que usamos y que contiene módulos, que por lo cuál no se están usando. Es importante no solo desactivar, sino desinstalar.

Siempre estarán ahí si quieres instalarlos en el futuro pero no afectarán a la carga de la tienda.

Limpieza de Prestahsop:

Es importante hacer una copia de seguridad antes de nada, para ello vamos a: Parámetros Avanzados –> Copia BD

Debe realizarse por un usuario avanzado para tras hacer la copia, editar en la Base de datos las tablas, por ejemplo referentes a estadísticas.

Con estas pautas esperamos haberos ayudado para mejorar la velocidad de carga de vuestra tienda con Prestashop pero si no fueran suficientes, podéis consultarnos por nuestros Clouds Optimizados para Prestashop  a través de nuestro sistemas de tickets si ya eres cliente o a través de nuestro formulario de contacto si aún no lo eres.

Subir productos a nuestra tienda online con PrestaShop

En este artículo vamos a ver como subir un producto a nuestra tienda on-line, con PrestaShop,  y su configuración básica. ¡Empezamos!

Vamos al menú lateral izquierdo del gestor: Catálogo –> Productos

Menú lateral

Veremos el listado de los productos que ya tengamos, para crear uno nuevo vamos al botón de añadir nuevo:

Añadir nuevo

Y rellenamos los campos de la pestaña INFORMACIÓN:

Pestaña de información

Nombre: Este nombre será el visible en las miniaturas, es importante que contemples distintas nomenclaturas para no poner siempre por ejemplo: Pantalon chino. Mejor poner Pantalón easy Model. Por ejemplo o el modelo marca algo que sea diferenciador de los demaás pantalones chinos que vayas a subir.
Referencia: es importante para la gestión de los productos un identificador único.
Activado: Si si queremos que ya se pueda ver públicamente.
Visible: Toda la tienda:
Opciones: marcar las que nos iteresen.
Condición: Nuevo (pondrá una marca en el producto)
Descripción Corta: Pondremos una breve descripción.
Descripción: Es una descripción más extensa que aparecería en la pestaña “Más información” de la ficha del producto.
Etiquetas: Para ayudar a las busquedas en google, yahoo, etc, para SEO, es bueno poner aquí palabras por las que se buscaría en los buscadores. Por ejemplo: Pantalón chino algodón, etc.

Siguiente pestaña PRECIO:

Pestaña Precios

Rellenamos el precio si lo tenemos con IVA y guardamos.

Precio con IVASi tuviéramos el precio sin IVA, lo pondríamos en la casilla sin IVA y automáticamente se rellena la casilla de recio con IVA, aplicándole un 21% de IVA si ya lo tienes configurado así en la tienda.
También podemos indicar un producto rebajado. Para ello, marcaríamos la casilla descuento o rebajas y configuraríamos el descuento un poco más bajo.

Configurar descuentos

Recordar siempre darle a guardar y permanecer a cada sección o se perderían los cambios.
Una vez dado al botón de añadir precio especifico puedes configurar muchas opciones, pero la general es que se aplique a todo el mundo y para que se active hay que ponerle la fecha de comienzo y fin, así como la opción de “Aplicar un descuento” que puede ser en porcentajes, es lo más habitual, o en euros:

Configurar descuentos 2

Y guardar.

Siguiente pestaña ASOCIACIONES:
En “Asociar categorias” desplegamos y buscamos la categoría a la que pertenece:

Pestaña de asociaciones

Si marcamos la primera categoría (la padre), el producto aparecerá en la home como destacado, sino, sólo aparecerá en la sección marcada.
También tenemos la opción “accesorios” que se mostraría en la ficha de productos como los productos relacionados, por ejemplo a un pantalón puedes mostrar cinturones, solo habría que buscarlo y listo. También si te interesa comercialmente indicar el fabricante.

Asociación de otros productos

Siguiente sección COMBINACIONES:

Combinaciones

En este apartado configuramos los distintos colores, tallas etc, que pueda tener un producto. Para ello, nosotros previamente hemos configurado en Catálogo–> Atributos de productos , las posibilidades a escoger.
Señalamos los atributos, le damos al botón AÑADIR y se mostrarán al lado:

Combinaciones

En esta pestaña podríamos configurar un precio distinto si tuviésemos dos colores y uno de ellos, por ejemplo, tuviera otro precio. Rellenamos también el campo de Cantidad por defecto, para que prestashop también pueda ayudarnos a controlar el stock.
Y pulsamos el botón GENERAR COMBINACIONES, puede tardar un momento en hacer el listado, pero finalmente te lo muestra ya configurado.

Le damos a Guardar y permanecer:

Combinaciones

Finalmente le damos a la siguiente pestaña IMÁGENES:

Imágenes de productos

Pulsamos el botón añadir y buscamos la imagen que queremos que muestre. Y una vez seleccionado se muestra en la lista, hay que pulsar el botón SUBIR ARCHIVOS:

Subir imágenes en prestashop

Podemos añadir tantas como queramos y ponerlas en un orden preciso.
Tras darle a subir, parece no hacer nada pero está subiéndolas, espera un momento y se te mostrará el mensaje de que se ha subido correctamente y verás el listado de las imágenes.

Listado de imágenes de productos en prestashop

Marca la que quieras para la portada, y ordenarlas arrastrando en la columna posición al orden en que quieras que se muestren.
Luego le damos a guardar y ya puedes ver tu ficha de producto perfectamente configurada.

Cómo configurar PrestaShop para enviar correos mediante SMTP

En lugar de usar la función php mail para que PrestaShop envíe correo, podemos usar de forma recomendable el envío por SMTP. Hacerlo es muy fácil y ayudará a que tu correo llegue al buzón de entrada en lugar de al buzón de spam.

 

En aquihaydominios.com os damos libertad para crear las cuentas de correos que necesitéis con vuestro dominio, si aún no la tienes revisa este otro post sobre Cómo crear una cuenta de correo en tu panel de control Plesk, para revisar ese correo además de por webmail tienes la posibilidad de configurarlo en tu móvil(windows phone, android, etc.) y en tus otras cuentas de correo de gmail o thunderbird.

Usaremos a modo de ejemplo info@tudominio.com usar para que Prestashop envíe correos.

Así que…  ¡empezamos!

1. Nos registramos en nuestro panel de gestión de PrestaShop.

Panel de gestión

2. Hacemos clic en: Párametros Avanzados –> Correo electrónico

Menú

3. En el área CORREO ELECTRÓNICO, veremos que por defecto viene marcada la opción:
“Usar la función mail() de PHP. Recomendado en la mayoría de los casos”
Marcaremos la opción:
“Establecer mis propios parámetros SMTP. Solo para usuarios AVANZADOS”

Selección SMTP

Veremos que se despliega otra área también llamada CORREO ELECTRÓNICO donde tenemos que poner los datos de nuestra cuenta de correos.

Panel

Rellenamos los campos con la información que tenemos de nuestro proveedor de servicios de correo, en este caso los de aquihaydominios.com son:

  • Dominio para los emails: No es necesario rellenarlo
  • Servidor SMTP: localhost (Aunque por defecto te salga smtp o alguna otra cosa, bórralo ya que nuestras cuentas usan mail. Si tu cuenta no fuera de aquihaydominios.com tendrás que consultarlo con tu proveedor de hosting)
  • Nombre de usuario SMTP: dirección de email, por ejemplo: info@tudominio.com
  • Contraseña: La misma que hayas usado para crear la cuenta de correo
  • Cifrado: Ninguno
  • Puerto: 587 (habitualmente usan 25, esto depende de tu buzón de correo, si has creado tu cuenta en el panel Plesk de aquihaydominios.com, tienes que poner 587)

Quedaría así:

prestashop-smtp-configurar

 

Recuerda GUARDAR

 

Una vez tenemos configurado nuestro correo por SMTP, debemos hacer una prueba, debajo de nuestra configuración, existe otro área: COMPRUEBE LA CONFIGURACIÓN DE SU EMAIL

Recuerda que “info@tudominio.com” es quien envía el correo a “otraCuenta@gmail.com” por lo que debes rellenar el campo “Enviar un mail de prueba a”  con la otra cuenta de correo: “otraCuenta@gmail.com” y dale al botón de “enviar un correo electrónico de prueba”

Enviar correo prueba

Debe llegarte a tu otraCuenta@gmail.com un correo de prueba.

Si te llega el aviso es que todo está bien configurado para que tu PrestaShop envíe correo electrónico como si desde info@tudominio.com fuera.

Recuerda que para que además te lleguen las alertas de pedidos debes tener tu módulo mailalert configurado.

Si no te llega nada en un tiempo prudencial revisa con tu proveedor de correo los datos configurados.

Cómo cambiar la imagen no disponible de PrestaShop

Hace tiempo, en versiones anteriores de PrestaShop, si querías cambiar la imagen no disponible de los productos debías preparar todos los tamaños y subirlo por FTP. Ahora, la cosa ha cambiado y para mejor, ya solo tienes que hacer lo siguiente:

  1. Ve a Localización y en pulsa en Modificar en el idioma de la imagen que quieras subir. Como sabrás, podrás tener una imagen de no disponible en cada idioma. Es lógico, por si queremos incluir algún texto.
  2. Haz clic en “Añadir archivo” donde pone “Imagen para mostrar en enlaces rotos” y listo!

U_yzlsk5q5SHV9PQNoHpayrMbQ_2Zh0BCk8uqVopGGA

Cómo crear páginas CMS en PrestaShop

PrestaShop nos da la posibilidad de crear una serie de contenidos que no cambiarán con frecuencia pero que es necesario y bueno tener en nuestra tienda.

No solo nos referimos a los contenidos básicos y estándares de “Condiciones de Compra” o “Políticas de Privacidad”, sino también a crear contenidos de ayuda al cliente que quiere conocer los costes previos del transporte, aprender cómo se compra on-line y por supuesto a los contenidos en los que contamos al cliente Quienes Somos, Cómo llegamos hasta aquí, Cuál es la filosofía de nuestra empresa y todos aquellos contenidos informativos que creemos que el cliente puede necesitar para conocernos mejor.

Así que para crear un contenido CMS en PrestaShop, accedemos a nuestro panel de gestión y vamos a:

Preferencias > CMS y hacemos clic.

CMS en Prestashop

Y veremos la pantalla dividida en Categoría y en Contenidos, generalmente no necesitaremos modificar la categoría así que nos iremos a la zona de contenido y haremos clic en el icono de añadir uno nuevo:

Crear Nuevo ContenidoSe nos abre la siguiente pantalla:

Pasos para crear contenido

Y veremos los pasos a seguir:

1 – Introducir el título de la página que verá el cliente.
2 – Si quieres crear una ruta en concreto, tienes que escribir aquí el nombre de la página en minúsculas, sin acentos, sin espacios y con guiones separando las palabras. Sino tomará por defecto el título que pongas. Si no tienes conocimientos avanzados de este tema, te recomiendo que dejes que PrestaShop la ponga por defecto.
Ruta amigable3 – Aquí escribiremos el contenido de nuestra página.
Funciona como cualquier editor de texto, tienes una serie de iconos con las mismas funciones que los de cualquier editor de texto como word. Si pasas el ratón por encima te muestra su función: negrita, cursiva, subrayado, alineación a la izquierda, centrado o derecha, etc.
EditorTextoPara aplicar cualquiera de estos iconos, seleccionamos el texto y pulsamos el icono correspondiente.

También tenemos la posibilidad de poner un enlace:

– Seleccionamos el texto
– hacemos clic sobre el icono enlazar
Poner un link– Y rellenamos el campo de la dirección a donde queremos que vaya:
Campos a rellenar para link

En este ejemplo, en el campo URL, pondríamos la ruta, por ejemplo: http://facebook.com

Otra opción que necesitamos es meter imágenes, el último icono es para ello, así que colocamos el ratón dónde vayamos a querer la imagen y luego hacemos clic en el botón de la imagen:

Incluir una imagen

Y se nos abre esta pantalla:

Buscar imagen

En Descripción de la imagen ponemos la respuesta a ¿qué es la imagen? de manera breve.
Las dimensiones salen por defecto y tienes la posibilidad de editarlo luego de manera visual.

Le damos al icono carpeta para buscar la imagen, mostrará las miniaturas de las imágenes que ya están arriba, en tu alojamiento. La selecciona y automáticamente te la escribirá en el campo URL.
Si no la tienes previamente subida, al darle al icono de la carpeta y ver todas las imágenes ya subidas, tendrás que hacer clic en el icono de subir/añadir archivo y se mostrará la siguiente ventana:

Subir archivo

Arrastra tu archivo hasta esta ventana y pulsa luego el botón regresar a la lista, volverás a la pantalla de las imágenes en miniatura, la seleccionas y PrestaShop anota automáticamente la ruta, le das a Ok y listo, verás la foto en tu contenido.

Si quieres editar el tamaño de la imagen, solo tendrás que hacer clic con el ratón en alguno de los selectores o cuadraditos de la imagen y mantener pulsado mientras arrastras para que se haga más pequeño o más grande.

EditarTamaño

Si quieres alinear la imagen seleccionala con un clic de ratón sobre ella y luego utiliza los mismos botones que para alinear el texto:Alinear Imagen

Ten presente que siempre toma de referencia el lugar dónde inicialmente pusiste el ratón para poner la imagen.

En cualquier caso que haya que editar en modo avanzado se puede ver el código desde el mismo gestor y hacer las correcciones necesarias, pero esto ya es para usurarios avanzados, pues si se edita lo que no hay que editar, puede inutilizar el contenido e incluso dañar la imagen de la web o su funcionalidad.

Una vez que hemos terminado el contenido, nos quedan opciones por ver de:

Pasos para crear contenido

4 – Si tenemos una web multilingüe, escogemos el idioma en el que vamos a poner el contenido.

5 – Si queremos que los motores de búsqueda revisen y anoten éste contenido, lo pondremos en sí. Si no lo dejamos como está.

6 – Lo pondremos en SÍ, para que el contenido quede publicado.

7 – Guardar y previsualizar, no te sacará de la pantalla de edición pero guardará los cambios y te mostrará como queda el contenido. Y Guardar, guardará todo, te sacará de edición. Son botones independientes, puedes darle al que quieras, siempre quedará guardado el contenido.

Para finalizar siempre podrás volver a editar desde Preferencias > CMS y haciendo clic sobre el contenido.

Cualquier duda, ¡consultanos en los comentarios!

Solución a problemas de seguridad en PrestaShop con securitypatch

Recientemente PrestaShop ha anunciado unos problemas de seguridad que son importantes corregir. Para ello se requiere una actualización de seguridad de PrestaShop al menos a la última versión de la rama. Es decir, si tienes un PrestaShop 1.4 debes actualizarlo a la 1.4.11.1, si tienes un PrestaShop 1.5 a la 1.5.6.3. Las versiones 1.6 están todas corregidas desde la versión 1.6.0.14.

Hay otra opción muy simple que es instalar el módulo oficial de PrestaShop securitypatch

Podéis ampliar información en el blog de PrestaShop, en el artículo: Actualización de seguridad por PrestaShop

Cualquier duda por supuesto, puedes preguntar en los comentarios 🙂

PrestaShop 1.6 no muestra los atributos tras actualizar

Si has actualizado PrestaShop a PrestaShop 1.6 y no se muestran los atributos o combinaciones, puede ser por varios motivos. Te enseñamos a solucionar algunos casos.

Si además de no mostrarse los atributos, cuando vas a un producto que tiene atributos, se ven los atributos pero no los valores y al intentar crear un atributo nuevo te da el error “Unknown column ‘position’ in ‘field listla solución pasa por crear el campo position en ps_attributeps_attribute_group. Puedes hacerlo desde phpmyadmin con:

-- Crear campo position en PrestaShop con MySql
ALTER TABLE `ps_attribute_group` ADD `position` TINYINT(3) NOT NULL DEFAULT '1' ;
ALTER TABLE `ps_attribute` ADD `position` TINYINT(3) NOT NULL DEFAULT '1' ;

Por otro lado, asegúrate que en classes/helper/HelperList.php la siguiente línea usa Tootls::getValue en lugar de getIsset:

//classes/helper/HelperList.php
$position_group_identifier = Tools::getIsset($this->position_group_identifier) ? Tools::getValue($this->position_group_identifier) : $this->position_group_identifier;

Dependiendo de tu versión, puede que ya lo tengas implementado, si no es necesario que lo cambies.

Por último, asegúrate que Configuration::get(‘PS_COMBINATION_FEATURE_ACTIVE‘) devuelve 1 o true. Para ello desde phpmyadmin nuevamente puedes lanzar:

-- Consultar tabla configuration en PrestaShop con MySql
SELECT * FROM `ps_configuration` where name = 'PS_COMBINATION_FEATURE_ACTIVE'

Añadir pack de productos al carrito cuando no hay stock en PrestaShop 1.5

En algunas de las versiones más recientes de PrestaShop 1.5, se ha detectado un error cuando se tienen creados paquetes de productos o packs,  y si se tiene activado el permitir la compra de productos sin stock. Es decir, por un lado, queremos permitir que aunque no haya stock, nos puedan pedir un producto y por otro lado tenemos packs o paquetes de productos. Cuando es un producto simple, se puede añadir correctamente al carrito, pero cuando es un paquete, te puede estar ocurriendo que no te permite añadirlo al carrito porque uno de los productos que forman el paquete, no tiene stock.

Para solucionarlo tenemos que editar el fichero: classes/Pack.php. Recuerda que en lugar de editarlo directamente, podrás hacer uso del override, pero esto es para usuarios avanzados y hablaremos en otros artículos sobre ete tema.

Una vez abierto el fichero classes/Pack.php

Busca este código:

foreach ($items as $item) {
if (Product::getQuantity($item->id) < $item->pack_quantity || (Product::getQuantity($item->id) < $item->pack_quantity && !$item->isAvailableWhenOutOfStock((int)$item->out_of_stock)))
return false;
}
return true;

Y sustitúyelo por este otro:

foreach ($items as $item) {
if (Product::getQuantity($item->id) < $item->pack_quantity && !$item->isAvailableWhenOutOfStock((int)$item->out_of_stock))
return false;
}
return true;

Con este simple cambio ¡ya debería funcionar!