Hey! Hola que tal amigos de Junior a Senior el día de hoy les vengo con un nuevo tutorial, el cual consta de ordenar los atributos o características de nuestros productos en Prestashop, ya que he notado que en versiones actuales y versiones anteriores a la 1.7 han tenido el mismo error.

Y el error es el siguiente que mostramos en la imagen.

En este tutorial te enseñaremos a solucionar esto para que tus productos se ordenen de forma correcta.

El primer paso sería ir a nuestros archivos y acceder al siguiente archivo: classes/product.php

El siguiente paso es buscar la siguiente linea de codigo y comentarla: ORDER BY ag.`position` ASC, a.`position` ASC, agl.`name` ASC’;

Y como tercer paso sustituirla por la siguiente linea: ORDER BY ag.`position` ASC, pac.`id_product_attribute`, a.`position` ASC, agl.`name` ASC’;

Actualizado:

ORDER BY attribute_name ASC, a.`position` ASC, agl.`name` desc’;

Y con esto estaríamos resolviendo este problema y haciendo que nuestros productos se ordenen de forma correcta.

Espero les haya servido de algo esta breve información, si tienen dudas u otras maneras de hacerlo pueden mostrárnoslo en los comentarios, esto ayudara a qué todos crezcamos y resolvamos nuestros problemas de forma rápida y sencilla.

Comments

  1. Gracias por el consejo, actualmente estoy usando prestashop 1.7.8.3
    Tengo entendido que hay que sustituir la línea :

    ORDER BY ag.`position` ASC, a.`position` ASC, agl.`name` ASC’;

    Mediante la siguiente línea :

    ORDER BY ag.`position` ASC, pac.`id_product_attribute`, a.`position` ASC, agl.`name` ASC’;

    pero no entiendo qué hacer con la siguiente línea.

    ORDER BY attribute_name ASC, a.`position` ASC, agl.`name` desc’;

    ¿Puede decirme dónde debe añadirse?

    Gracias de antemano y por favor, disculpen mi español
    Sinceramente

    1. Hola qué tal Zimex en este caso tienes que dirigirte a la siguiente ruta: classes/product.php la carpeta classes se encuentra en raíz.

      1. Una vez localices este archivo lo abres con tu editor de texto.
      2. Una vez abierto el archivo buscas lo siguiente (ctrl + f): ORDER BY ag.`position` ASC, a.`position` ASC, agl.`name` ASC’;
      3. Una vez localizada la linea la sustituiremos por: ORDER BY attribute_name ASC, a.`position` ASC, agl.`name` desc’;
      4. Esta linea lo que hará es ordenar nuestros atributos de forma correcta en nuestro sitio web.
      (Ejemplo: 1, 2, 3.5, 4, 5.1, 6, etc.)

      De igual forma si tienes más dudas o aún no te ha funcionado, con gusto podemos ayudarte, que para esto esta esta gran comunidad.

      Saludos.

      1. Hola y gracias por su capacidad de respuesta y sus precisas explicaciones. Ahora el código funciona muy bien, los atributos están correctamente ordenados.
        Gracias de nuevo y buena suerte.
        Saludos desde Francia.

        1. Hola Zimex, que bueno que el tutorial te fue de ayuda :).

          Saludos desde México.

  2. Hola!
    He cambiado ORDER BY ag.`position` ASC, a.`position` ASC, agl.`name` ASC’; por ORDER BY attribute_name ASC, a.`position` ASC, agl.`name` desc’; como indicas pero al actualizar el archivo en el FTP me saca de prestashop y me aparece un mensaje de error inesperado, no se si puedes echarme una mano!

    Gracias!!!

Leave a reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You may also like