Aumentar lista de resultados de la búsqueda Ajax en Prestashop

Por defecto en Prestashop, la búsqueda ajax se encuentra limitada a mostrar 10 resultados. Con este manual de Prestashop cambiaremos el límite.

Búsqueda limitada
Búsqueda limitada

Recordamos que debemos que tener habilitada la búsqueda ajax, para que funcione dicha búsqueda, por defecto viene activada, pero sino la tenéis activada, debéis ir a la pestaña Preferencias -> Buscar  del vuestro panel de administración y señalar la opción llamada:

¿Activar AJAX?

Activar buscador ajax en Prestashop
Activar buscador ajax en Prestashop

Para que se puedan ver más de 10 resultados en la búsqueda ajax en Prestashop, tenemos que ir al fichero:

/modules/blocksearch/blocksearch-instantsearch.tpl

Donde buscamos la siguiente línea:

max: 10,

Cambiamos el valor “10” por el límite que tengamos pensado establecer.

Después, vamos al fichero:

/classes/Search.php

Buscamos esta línea:

ORDER BY position DESC LIMIT 10';

y cambiamos el 10“. Obviamente tiene que concordar con el valor que hemos cambiado en el paso anterior.

Lo ideal sería hacer un override de la clase “Search”, depende editarla directamente.

Hemos cambiado el valor de 10 a 11, y ahora nos muestra los 11 resultados que nos debería mostrar en el ejemplo, tal como mostramos en la siguiente captura:

Buscador mostrando 11 resultados
Buscador mostrando 11 resultados

Documento construido bajo Prestashop 1.5.4.1

* Actualización artículo 

Aumentar / limitar lista de resultados en el buscador de productos en Prestashop 1.7

Para limitar o aumentar la lista de resultados en el buscador de productos en Prestashop 1.7, podemos editar los ficheros:

  • ps_searchbar.js

Si el fichero “ps_searchbar.js” no viene sobrescrito en el directorio:
/themes/TuPlantilla/modules/ps_searchbar/ copiarlo del directorio:
/modules/ps_searchbar/ y pegarlo (y editar el que hemos pegado)

Si ya se encuentra sobrescrito lo abrimos directamente.

Buscamos la siguiente línea de código:

resultsPerPage: 10

Y la cambiamos por el limite que queremos establecer.

Línea indicada
  • Search.php

Cambiar también en la clase => /classes/Search.php dentro de la función ” public static function find” en esta parte de la instrucción SQL:

ORDER BY position DESC LIMIT 10′;

El valor 10 por el mismo número que hemos indicado en el otro fichero.

Respecto a editar la clase directamente, recordar que lo más optimo es crear un override de la misma (/override/classes/) y evitar editar el archivo origen directamente.

Si no ves los cambios, intenta:

  • Limpiar la caché del navegador por si las moscas.
  • Limpiar la caché de Prestashop (Parámetros Avanzados -> Rendimiento -> Borrar caché)

    Borrar caché

Documento actualizado para funcionar en Prestashop 1.7.3.3 y la versión “2.0.1” del módulo => “ps_searchbar”.