Skocz do zawartości

usuwanie znaków diakrytycznych z urli w .htaccess


b79

Rekomendowane odpowiedzi

witam,

mam problem, mam jakiś stary sklep zrobiony w smartach i mam go przerobić na czeską wersję.

php znam mniej wiecej w takim stopniu ze wiem jaki fragment kodu odpowiada za poszczególne rzeczy, natomiast samemu coś zmienić, napisać to już cięzko.

i mam taki problem ze urle robią się z czeskimi znakami przez co linki nie działają.

Czy ktoś podpowie co powinno być w .htacces zeby wszystkie linki byly bez tych znaków ?

w smartach bardzo ciezko mi cokolwiek znalezc, nie wiem jakiej funkcji szukac, jak trzeba wklepic jakis fragment kodu to dajcie znac to poszukam i wkleje odpowiednie wartosci. kiedyś znalazłem jakąś funkcje gdzie były wyszczególnione polskie znaki i potem była ich zamiana na normalne, ale jak dostosowałem do czeskich to niestety nie dało efektu, wiec uznałem że to nie ta funkcja :/

z góry dziekuje za pomoc

ps. od razu uprzedzam ze zmiana oprogramowania sklepu nie wchodzi w grę bo budżet na sklep równa się zero, i jak działał po polsku to po czesku też musi :)

SFM Filtry - wysokiej jakości filtry powietrza do systemów wentylacji i klimatyzacji.

W naszym sklepie internetowym filtry powietrza do wentylacji kupisz szybko, tanio i bezpiecznie.

centrale telefoniczne Siemens, Panasonic, Slican

Odnośnik do komentarza
Udostępnij na innych stronach

strona jest w UTF, wiec wszystkie teksty sobie przetłumaczyłem i jest OK, problem właśnie tylko z tymi urlami, a .htaccess tez jest troche zakrecony :)

oprócz 301 mam jeszcze

RewriteRule ^(error.html)$ index.php [L]

RewriteRule ^(vzduchove_filtry)\/szukaj\/$ index.php?cdStr=$1 [L]
RewriteRule ^(vzduchove_filtry)\/szukaj\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&logErr=$2 [L]
RewriteRule ^(vzduchove_filtry)\/(klasa_[a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&fclassStr=$2 [L]
RewriteRule ^(vzduchove_filtry)\/(klasa_[a-zA-Z0-9_-]*)\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&fclassStr=$2&logErr=$3 [L]
RewriteRule ^(vzduchove_filtry)\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&logErr=$3 [L]
RewriteRule ^(vzduchove_filtry)\/([a-zA-Z0-9_-]*)\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&catStr=$2&logErr=$4 [L]
RewriteRule ^(vzduchove_filtry)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&catStr=$2 [L]
RewriteRule ^(vzduchove_filtry)\/([a-zA-Z0-9_-]*_filtry)\/(klasa_[a-zA-Z0-9_-]*)\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&catStr=$2&fclassStr=$3&logErr=$5 [L]
RewriteRule ^(vzduchove_filtry)\/([a-zA-Z0-9_-]*_filtry)\/(klasa_[a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&catStr=$2&fclassStr=$3 [L]
RewriteRule ^(vzduchove_filtry)\/([a-zA-Z0-9_-]*_filtry)\/([a-zA-Z0-9_-]*)\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&catStr=$2&itemStr=$3&logErr=$5 [L]
RewriteRule ^([a-zA-Z0-9_-]*)\/(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&logErr=$3 [L]
RewriteRule ^(vzduchove_filtry)\/([a-zA-Z0-9_-]*_filtry)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&catStr=$2&itemStr=$3 [L]
RewriteRule ^(logerror)\/([a-zA-Z0-9_-]*)\/$ index.php?logErr=$2 [L]
RewriteRule ^([a-zA-Z0-9_-]*)\/([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1&add1ID=$2 [L]
RewriteRule ^([a-zA-Z0-9_-]*)\/$ index.php?cdStr=$1 [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.htm$ index.php [L]

SFM Filtry - wysokiej jakości filtry powietrza do systemów wentylacji i klimatyzacji.

W naszym sklepie internetowym filtry powietrza do wentylacji kupisz szybko, tanio i bezpiecznie.

centrale telefoniczne Siemens, Panasonic, Slican

Odnośnik do komentarza
Udostępnij na innych stronach

problem rozwiazany połowicznie, bo urle mozna kliknać, ale nadal wyswietlają się z tymi znakami :/

SFM Filtry - wysokiej jakości filtry powietrza do systemów wentylacji i klimatyzacji.

W naszym sklepie internetowym filtry powietrza do wentylacji kupisz szybko, tanio i bezpiecznie.

centrale telefoniczne Siemens, Panasonic, Slican

Odnośnik do komentarza
Udostępnij na innych stronach

Pisałem przedtem, że moje rozwiązanie sprawi, iż będą:

działały adresy z czeskimi znakami diakrytycznymi.

więcej z poziomu .htaccess nie da się zrobić. Jeśli takie rozwiązanie Cię nie satysfakcjonuje to musisz znaleźć w kodzie PHP funkcje odpowiedzialną za zamianę znaków diakrytycznych na ich odpowiedniki z alfabetu łacińskiego i dodać reguły dla czeskiego albo komuś to zlecić.

Na emeryturze po SEO zajmuję się R&D.

Odnośnik do komentarza
Udostępnij na innych stronach

@Veal dziękuje za pomoc, to i tak sporo, bo przynajmniej linki działają.

poszukam w takim razie jeszcze raz w kodzie może znajde :)

SFM Filtry - wysokiej jakości filtry powietrza do systemów wentylacji i klimatyzacji.

W naszym sklepie internetowym filtry powietrza do wentylacji kupisz szybko, tanio i bezpiecznie.

centrale telefoniczne Siemens, Panasonic, Slican

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności