A+ A A-

Ordenación de productos en Prestashop (tocando código)

byMDI blog prestashop desplegables de ordenacion y paginacion listado funcional portada

Si manejas Prestashop para tiendas propias o de clientes, ya conocerás las fórmulas habituales de ordenación general, en el menú Preferencias / Productos. Obviamente, esa forma de ordenación afecta a todo el site, en todos los listados.... y no siempre es lo que queremos.

 

Recientemente se dió el caso de un cliente que deseaba mostrar, en la página del fabricante, los productos ordenados en función de su fecha de entrada en el catálogo. Dado que el resto del site tenía una ordenación en función de la "posición dentro de la categoría", aquí necesitábamos hacer algo "extra" para que las páginas de fabricante se ordenasen de forma distinta.

En este caso, daba la casualidad de que en portada teníamos un listado de todos los fabricantes principales, un botón de acceso directo a la página "manufacturers.php" para cada uno de ellos. Así que la solución era fácil y sencilla, sin tocar código. Bastaba con añadir varios comandos mediante GET, al link de cada uno de los botones. Es decir... si actualmente los links a la página del fabricante eran algo como:

www.tiendaonline.es/1_fabricante

Ahora pasarían a ser:

www.tiendaonline.es/1_fabricante?orderby=date_add&orderway=desc

Es decir, que en vez de listar de forma estándar, le obligo a enseñarme el listado de productos en función de la "date_add" (fecha de entrada al sistema" y de forma "desc" (nuevos primero).

byMDI blog prestashop desplegables de ordenacion y paginacion listado funcional

(click en la imagen para ver más grande)

 

Aunque pudiera parecer trivial, este tipo de ordenación tiene un impacto directo sobre las ventas, al mostrar siempre en primer lugar lo más novedoso, lo último, de cada una de las marcas, llevando al final del listado a los productos más obsoletos, fuera de temporada o simplemente sin stock, que aún mantenemos por SEO o por algun otro motivo.

Adicionalmente, creímos que era buena idea también ofrecer ese tipo de ordenamiento para el resto de listados, de forma que pudiera ser el propio usuario el que lo eligiese en los desplegables "Ordenar por" que se ofrecen siempre en la cabecera o al pié de los listados de producto (depende de la template, pero normalmente están siempre arriba de todo, debajo del título de la página y sobre los listados. Para esto basta con modificar la subtemplate /themes/tu_template/product-sort.tpl que se encarga de ese trocito de código y añadir un par de líneas, de esta forma (aprox, línea 52):

<option value="date_add:desc"{if $orderby eq 'date_add' && $orderway eq 'desc'} selected="selected"{/if}>{l s='En Catálogo: +Nuevos'}</option>
<option value="date_add:asc"{if $orderby eq 'date_add' && $orderway eq 'asc'} selected="selected"{/if}>{l s='En Catálogo: +Antiguos'}</option>

Esto añade una mayor y más conveniente funcionalidad al desplegable de ordenación, un tanto parco en opciones.

byMDI blog prestashop desplegables de ordenacion y paginacion

Y esto me llevó a listar todos los modos de ordenación, para tenerlos "a mano" para futuras ocasiones:

· price: ordenamiento por precio

· name: ordenameinto alfabético

· quantity: ordenamiento en función de las cantidades del stock

· reference: ordenamiento alfanúmerico en función de la referencia

· date_add: ordenamiento en función de la fecha de adición de un producto al catálogo

· date_upd: ordenamient en función de la fecha de actualización de un producto en el catálogo

· manufacturer_name: ordenamiento alfanumérico en función del nombre del fabricante o marca

Como ves, es algo muy fácil y sencillo de hacer, tanto si es simplemente mejorando un link en un menú, como si es tocando el código de la plantilla para que dar mas opciones o hacer que sea la opción por defecto de una template concreta encargada de listar productos.

 

NOTA: esto está probado para la versión 1.6 de PS, pero es igualmente válido para cualquier otra versión.
AGRADECIMIENTO: la idea básica para este pequeño hack la obtuve (como casi siempre) en el foro de Prestasho, en concreto de este hilo: https://www.prestashop.com/forums/topic/154574-solvedsort-byorder-by-product-reference/

A lo largo de estos años, y desde 1.999, he tenido la increíble suerte de trabajar y colaborar con los equipos de muchas de las mejores empresas de mi entorno, desarrollando sus proyectos de presencia corporativa en web, proyectos de comercio electrónico, portales turísticos o sesiones de formación. De todos ellos he obtenido conocimientos y vivencias impagables que acaban cristalizando en amistades personales, aunque sus empresas hayan desaparecido. Porque el único compromiso profesional válido es el compromiso personal.

Para Caixanova y Caixagalicia (ahora Abanca) realicé los proyectos de Novaxove, Play Novaxove, Atalaya del Emprendedor y Escuela de NegociosPara el Concello de Arteixo he realizado el portal de Turismo Arteixo (ArteixoAtlantico)Soy socio fundador de la Asociación Nacional del Arma de España, para quien hice además el website corporativoDuna es mi agencia 3.0 de referencia. Tengo el inmenso placer de que confíen en mí para todos sus desarrollos webPara Estrella Galicia he realizado todas las webs de Rivera Investiments, filial de internacionalización del grupo Estrella GaliciaPara Gameworks pude realizar uno de los primeros y más exitosos blogs de videojuegos de EspañaEn la Escuela de Negocios IFFE he dado clases como profesor de Analítica WebPara la Fundación Caixanova (ahora Afundacion) realicé el portal corporativo bilingüe de la FundaciónPara Ofipro (Softnix) he realizado varias versiones de su web corporativa y de soporte a clientesPara el Concello de Oleiros, fabriqué su primera web institucional totalmente realizada en tecnología FlashAdemás de la remodelación de su logotipo, realicé la primera web corporativa del Palacio de la OperaDurante muchos años, realicé cientos de CDs multimedia para congresos de todo tipo en PalexcoPara el Real Club Náutico de A Coruña he realizado la web corporativa y campañas de SEO y posicionamiento SEMTMC CANCELA es el líder español en soluciones de Triturado, para los que realicé su website corporativo

Login or Register

LOG IN