Press "Enter" to skip to content

wgranie tłumaczeń do sklepu i błąd z ustawieniem max_input_vars [Aktualizacja]

Admin 1

1. błąd z tłumaczeniami związany z parametrem max_input_vars

Zapewne podczas użytkowania sklepu natrafiłeś na dość niekomfortową sytuację związaną z tłumaczeniami.

Dla przykładu wchodzimy w dział:

Lokalizacja » Tłumaczenia »  Modyfikuj tłumaczenia » Tłumaczenie zainstalowanych modułów » Wybór szablonu » Język polski »  Modyfikuj:

Następnie widzimy rubryki do wypełnienia. Po skrupulatnej pracy związanej z wprowadzeniem tekstów – następuje problem z zapisaniem, a nasze dane które wprowadziliśmy są utracone

Uwaga, Twoja konfiguracja PHP ogranicza maksymalną ilość pól przesyłanych za pomocą formularza
1000 dla max_input_vars.
Poproś swojego usługodawcę hostingu o zwiększenie tego limitu do przynajmniej 2173, albo będziesz musiał edytować pliki tłumaczenia.

Jest to niewątpliwie jedna z poważniejszych uchybień projektowych Presta Shop. W zasadzie nie można jej poprawić programistycznie.  Jest jednak parę dróg wyjścia z tej sytuacji.

2. Własnoręczna zmiana ustawień serwera

Jeżeli dysponujemy serwerem VPS – z możliwością zalogowania się do linii komend systemu operacyjnego (zazwyczaj opartego o Linux) należy w zasadzie zmodyfikować 1 parametr w konfiguracji i go zrestartować.

Polecamy tutaj blog (linuxporady.pl) o tematyce około dotyczącej Linuxa, gdzie można znaleźć inne artykułu na temat serwerów VPS.

Najpierw znajdujemy plik konfiguracyjny. Wgrywamy na serwer do katalogu głównego sklepu plik o nazwie:

O zawartości:

Uruchamiamy go wchodząc pod adres:

http://nazwasklepu.pl/php_info.php

w nazwasklepu.pl podaj Twoją domenę

Odczytujemy linijkę: „Loaded Configuration File

Jeśli masz serwer w wersji PHP5, twoja ścieżka może być inna np: /etc/php5/apache2/php.ini

Aby zmienić ustawienia w konfiguracji logujemy się na konto root:

Tworzymy kopię pliku:

Edytujemy go:

Znajdujemy wystąpienie naszego ustawienia poprzez skrót CTRL + W

Zamieniamy wystapienie w linii:

Na większe – np. poprzez dopisanie zera:

Uwaga, jeśli na początku tego wiersza znajduje się średnik np: ;max_input_vars = 1000 to zwiększając wartość pola dodatkowo usuwamy ten średnik. Stanowi on komentarz i jeśli jest użyty ta linijka kodu jest pomijana.

Zapisujemy plik skrótem CTRL + O

Wyłączamy edytor sktótem CTRL + X

Wczytujemy nową konfigurację:

Upewniamy się, że nowa konfiguracja jest wczytana ponownie wchodząc na adres:

http://nazwasklepu.pl/php_info.php

I znajdując wartość pola max_input_vars

Jeśli wszystko się zgadza kasujemy ten plik php z serwera.

Uwaga! Usunięcie tego pliku jest ekstremalnie ważne z powodów bezpieczeństwa.

3. Modyfikacja ustawień serwera przez jego administratora

Jeśli nie dysponujemy dostępem do serwera opisanym w punkcie powyżej – należy zgłosić ten problem u administratora podsyłając tekst tego błędu lub każąc zwiększyć limit max_input_vars do określonego w błędzie poziomu.

Niekiedy taka możliwość jest dostępna wręcz z panelu zarządzania hostingiem (serwerem). Należy tutaj to wyjaśnić z BOK naszego dostawcy.

4. Wgranie tłumaczeń na klonie sklepu

a) rozwiązanie problemu:

Jeśli wszystkie nasze powyższe wysiłki spełzną na niczym – jest rozwiązanie które zawsze się sprawdzi.

  1. Należy utworzyć klon (zainstalować idealną kopię) sklepu na serwerze gdzie nie ma tego limitu.
  2. Wygenerować tłumaczenia
  3. Przegrać na docelowy serwer zmienione pliki.

b) serwer do instalacji klona sklepu:

W tym celu może posłużyć np. darmowy serwer WAMP (Windows Apache MySQL Phpmyadmin) który instalujemy na naszym komputerze.

Możemy także wykorzystać np. darmowe testowe okresy na serwisach hostingowych, gdzie nie ma tego limitu.

Dla zaawansowanych użytkowników polecamy instalację darmowego serwera LAMP (Windows Apache MySQL Phpmyadmin) na dowolnej dystrybucji Linuxa. Następnie instalację na nim sklepu.

Poniższe artykuły z wyżej wspomnianego bloga mogą się okazać przydatne:

http://linuxporady.pl/zestaw-podstawowych-pakietow-dla-serwera-www-np-opartego-o-vps/

http://linuxporady.pl/najprostrze-tworzenie-wirtualnego-hosta-vhosta-na-serwerze-lamp-lub-np/

c) na co zwrócić uwagę podczas tworzenia kopii sklepu:

W naszym przypadku nie będzie potrzebna wierna – idealna kopia sklepu. Podczas kopiowania plików z serwera możemy pominąć poniższe foldery:

Ważne aby pliki miały określone uprawnienia zapisu. Szczególnie foldery:

Jednak baza danych musi być w całości odtworzona. Musimy mieć pełną listę modułów jak ze sklepu docelowego.

d) wykonanie tłumaczeń i kopiowanie plików

Gdy już mamy środowisko gdzie wygenerujemy tłumaczenia – wchodzimy do sekcji tak jak opisano na początku artykułu:

Lokalizacja » Tłumaczenia »  Modyfikuj tłumaczenia » Tłumaczenie zainstalowanych modułów » Wybór szablonu » Język polski »  Modyfikuj:

Wprowadzamy kilka testowych tłumaczeń i sprawdzamy czy błąd się nie pojawił. Jeśli działa to bez zarzutu – wprowadzamy wszystkie tłumaczenia.

Po zapisaniu plików zmienione pliki to przeważnie:

Lub inny symbol języka – jak nie dotyczy on polskiego np. de.php

Inny zasadniczy plik, który może ulec zmianie podczas tej operacji to:

Jest on modyfikowany w przypadku tłumaczenia stron szablonu. Np. opisanego w tym artykule.

5. Podsumowanie

Jak widać jest wiele dróg rozwiązania tego dość nieprzyjemnego problemu. Jeśli pokazane tutaj wskazówki wykraczają poza Twoje możliwości lub kompetencje – zapraszamy do kontaktu z naszym zespołem celem pomocy przy tym zagadnieniu. Prosimy o kontakt w komentarzach lub za pomocą danych kontaktowych.

Przy okazji niezmiennie przypominamy o wykonywaniu kopii bezpieczeństwa (plików i bazy danych) przed wszelkimi tego typu manipulacjami na sklepie.

Share This:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.