wdrożenia PrestaShop

Problem z wyszukiwarką "ł"

  • 2 Odpowiedzi
  • 3273 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline klosow

  • Nowy
  • *
  • 4
  • 0
Problem z wyszukiwarką "ł"
« dnia: Luty 22, 2012, 09:31:57 am »
Witam,

Zainstalowałem PrestaShop w wersji 1.4.7 i mam problem w działaniem wyszukiwarki.
Nie działa wyszukiwanie wyrazów zawierających literę ł lub Ł.
Gdy zamiast nich wpiszę l lub L wszystko jest dobrze.
Nie można wyszukiwać hasła: "sŁownik", ale "sLownik" już działa.
Pozostałe litery ą, ę, ć nie stanowią problemu i wyszukiwane są z ogonkami i bez.

Presta tworząc indeks wyrazów do wyszukiwarki obcina ogonki (znaki akcentów) i w bazie wszystkie wyrazy są bez nich.
Gdy wyłączyłem ten system, indeks wyrazów miał polskie znaki i wyszukiwanie działało tylko dla wyrazów z ogonkami ("slownik" już nie działało, za to "słownik" - tak).

Tymczasowy adres sklepu na którym można przetestować ten problem:
http://m-partner.home.pl/public/prestashop/
na localhost i na PS1.4.6, PS1.5.0.3 problem identyczny.

Z góry dziękuję za pomoc. To moja pierwsza instalacja PrestaShop i może nie znam jakiegoś tricku ;-)

*

Offline klosow

  • Nowy
  • *
  • 4
  • 0
[ROZWIĄZANIE] Problem z wyszukiwarką "ł"
« Odpowiedź #1 dnia: Luty 22, 2012, 10:24:05 pm »
Problem rozwiązany.

W pliku Search.php trzeba w miejscu:
$word = str_replace('%', '\\%', $word);
$word = str_replace('_', '\\_', $word);
dodać:
$word = preg_replace('/[\x{0142}\x{0141}]/u','l', $word);

MySQL przy porównywania napisów z ustawionym "utf8_general_ci" obcina polskie ogonki wszędzie oprócz przy Ł i ł.
Powyższa linia robi to na poziomie skryptu sklepu.
Mam nadzieję, że komuś się przyda.

*

Offline Inarus

  • Nowy
  • *
  • 2
  • 0
Odp: Problem z wyszukiwarką "ł"
« Odpowiedź #2 dnia: Maj 05, 2012, 03:33:07 pm »
O tego właśnie szukałem :) działa super :)