Problema con buscador Prestashop 1.4

Tras la actualización de versión de PHP de nuestros servidores algunas tiendas prestashop en la versión 1.4 han visto como su buscador ha dejado de funcionar correctamente.

Para solucionar esta incidencia se debe actualizar Prestashop a la versión 1.5 o aplicar este parche:

En el fichero classes/Search.php debemos quitar o comentar el siguiente código:

 foreach ($words AS $key => $word)
 if (!empty($word) AND strlen($word) >= (int)Configuration::get('PS_SEARCH_MINWORDLEN'))
 {
 $word = str_replace('%', '\\%', $word);
 $word = str_replace('_', '\\_', $word);
 $intersectArray[] = 'SELECT id_product
 FROM '._DB_PREFIX_.'search_word sw
 LEFT JOIN '._DB_PREFIX_.'search_index si ON sw.id_word = si.id_word
 WHERE sw.id_lang = '.(int)$id_lang.'
 AND sw.word LIKE
 '.($word[0] == '-'
 ? ' \''.pSQL(Tools::substr($word, 1, PS_SEARCH_MAX_WORD_LENGTH)).'%\''
 : '\''.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).'%\''
 );
 if ($word[0] != '-')
 $scoreArray[] = 'sw.word LIKE \''.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).'%\'';
 }
 else
 unset($words[$key]);


Y en su lugar incluir este otro:


$intersectArray[] = 'SELECT distinct p.id_product FROM ps_product p LEFT JOIN ps_product_lang pl ON (p.id_product = pl.id_product AND pl.id_lang = '.(int)$id_lang.') WHERE pl.name LIKE \'%'.pSQL($expr).'%\'';


Con esto debe estar solucionado el problema.

¿Fue útil la respuesta?

 Imprimir éste Artículo

Leer también

Instalar plantilla prestashop 1.5

Para instalar los themes en prestashop 1.5 tenemos varias maneras, aqui vamos a explicar la...

Recuperar o cambiar contraseña backoffice Prestashop

Cambiar o recuperar la contraseña del backoffice no es una tarea complicada, a...

Exportar Catálogo Prestashop 1.5 sin módulos

Desde la versión 1.5 tenemos una menra sencilla de exportar el catálogo sin...

Añadir productos en Prestashop

Hola a todos,En este pequeño minitutorial vamos a explicar como añadir un producto...

Importación de categorías y subcategorias Prestashop

En las últimas versiones de prestashop se ha encontrado un bug que afecta a la...