Zmieniasz menu w WordPressie, zapisujesz ustawienia motywu albo konfigurację wtyczki, a po odświeżeniu część zmian znika? Panel działa normalnie, nie pojawia się błąd 403 ani biała strona, ale WordPress jakby „nie pamiętał” zapisanych ustawień. Jedną z możliwych przyczyn jest limit max_input_vars.
Ten problem często pojawia się przy dużych formularzach w panelu WordPressa: rozbudowanym menu, builderze, motywie z wieloma opcjami, formularzu konfiguracyjnym wtyczki albo stronie z dużą liczbą pól. WordPress wysyła wtedy do serwera wiele danych jednocześnie. Jeśli limit po stronie PHP jest zbyt niski, część pól może nie zostać przetworzona. W tym artykule wyjaśniamy, czym jest max_input_vars, jak rozpoznać jego objawy i kiedy zwiększenie limitu może pomóc.
Czym jest max_input_vars?
max_input_vars to parametr PHP, który określa, ile zmiennych wejściowych może zostać przyjętych w jednym żądaniu. Mówiąc prościej: chodzi o liczbę pól, które formularz może jednocześnie wysłać do serwera. W panelu WordPressa wiele akcji działa właśnie jak formularz. Gdy zapisujesz menu, ustawienia motywu, konfigurację wtyczki albo rozbudowaną stronę ustawień, przeglądarka wysyła do serwera zestaw pól. Każda pozycja menu, każda opcja, każde zaznaczenie i każde ukryte pole może zwiększać liczbę przesyłanych zmiennych.
Jeśli tych pól jest więcej niż pozwala limit, serwer może nie przyjąć wszystkich danych. Efekt bywa mylący: WordPress nie musi pokazać wyraźnego błędu. Czasem wygląda to tak, jakby zapis się udał, ale po odświeżeniu część zmian znika. Właśnie dlatego problem z max_input_vars jest trudniejszy do zauważenia niż klasyczny błąd 500 czy 403. Strona może działać, panel może się ładować, przycisk „Zapisz” może reagować poprawnie, a mimo to część danych nie zostaje zapisana.
Po czym poznać problem z zapisem zmian w WordPressie?
Objawy zwykle nie są spektakularne. Najczęściej użytkownik widzi, że coś się nie zapisuje, ale nie dostaje jasnego komunikatu, dlaczego tak się dzieje.
Problem może wyglądać tak:
- po zapisaniu menu znikają ostatnie dodane pozycje
- kolejność pozycji w menu wraca do poprzedniego stanu
- zapisujesz ustawienia motywu, ale część opcji nie zostaje zapamiętana
- builder zapisuje stronę tylko częściowo
- konfiguracja wtyczki wraca do wcześniejszych wartości
- formularz ustawień zapisuje pierwsze pola, ale ignoruje dalsze
- problem pojawia się dopiero po rozbudowaniu menu lub formularza
- mniejsze zmiany zapisują się poprawnie, a większe już nie.
Charakterystyczne jest to, że problem często zaczyna się dopiero po przekroczeniu pewnej skali. Małe menu działa bez zarzutu. Kilka ustawień wtyczki zapisuje się normalnie. Dopiero większa liczba pozycji, pól albo opcji powoduje, że WordPress zaczyna zachowywać się niestabilnie. To ważny trop diagnostyczny. Jeśli zapis działa przy prostym formularzu, ale przestaje działać przy bardzo rozbudowanym, warto sprawdzić limit max_input_vars.
Kiedy podejrzewać max_input_vars?
Podejrzewaj max_input_vars, gdy:
- zapis wygląda na poprawny, ale część zmian znika
- problem dotyczy dużego menu, megamenu albo rozbudowanego formularza
- małe zmiany zapisują się normalnie
- nie widzisz błędu 403 ani 500
- po rozbudowie menu lub ustawień problem wraca
- po zapisie znikają głównie końcowe pola formularza
- problem pojawił się po dodaniu nowych opcji, języków, pozycji menu albo ustawień wtyczki.
To nie oznacza jeszcze, że limit na pewno jest przyczyną. Jest to jednak jeden z pierwszych parametrów, które warto sprawdzić, jeśli WordPress nie zapisuje wszystkich zmian, a problem dotyczy dużej liczby pól.
Dlaczego duże menu często się nie zapisuje?
Jednym z najczęstszych miejsc, w których widać problem z max_input_vars, jest menu WordPressa. Na pierwszy rzut oka menu wygląda prosto: lista pozycji, linki, etykiety i kolejność. Technicznie jednak każda pozycja menu składa się z wielu pól. WordPress zapisuje nie tylko nazwę pozycji, ale też adres, typ elementu, identyfikator, rodzica, kolejność, a czasem także dodatkowe ustawienia dodane przez motyw albo wtyczkę. Im większe menu, tym więcej danych trafia do jednego formularza.
Problem może pojawić się szczególnie wtedy, gdy:
- menu ma bardzo dużo pozycji
- menu ma wiele poziomów zagnieżdżenia
- motyw dodaje dodatkowe pola do każdej pozycji menu
- wtyczka rozszerza menu o ikony, klasy CSS, etykiety, obrazki albo ustawienia widoczności
- strona ma osobne menu dla różnych języków
- menu jest budowane jako duże megamenu.
W takiej sytuacji limit może zostać przekroczony szybciej, niż się wydaje. Użytkownik dodaje kolejną pozycję, klika „Zapisz menu”, WordPress wraca do panelu bez wyraźnego błędu, ale ostatnie zmiany nie zostają zachowane. Warto wtedy nie tylko zwiększyć limit, ale też przyjrzeć się samej strukturze menu. Rozbudowane menu może być problemem nie tylko dla panelu WordPressa, ale też dla użytkowników, którzy trudniej odnajdują najważniejsze podstrony. Czasem menu jest tak duże, że staje się trudne do utrzymania, wolniejsze i mniej czytelne. Wtedy warto rozważyć uproszczenie struktury, podział treści na bardziej logiczne sekcje albo ograniczenie dodatkowych pól dodawanych przez motyw lub wtyczki.
Motywy, buildery i rozbudowane formularze ustawień
max_input_vars nie dotyczy wyłącznie menu. Podobny problem może pojawić się wszędzie tam, gdzie WordPress zapisuje dużą liczbę pól naraz.
Dotyczy to szczególnie:
- motywów z rozbudowanym panelem opcji
- builderów stron
- wtyczek SEO z dużą liczbą ustawień
- wtyczek formularzy
- wtyczek wielojęzycznych
- konfiguratorów wyglądu
- megamenu
- paneli z wieloma checkboxami
- ustawień sklepu, dostawy, podatków albo integracji
- niestandardowych pól dodanych przez wtyczki.
Czasem problem pojawia się po aktualizacji motywu lub wtyczki, bo nowe wersje dodają kolejne pola konfiguracyjne. Czasem po prostu strona rośnie: dochodzą nowe podstrony, nowe kategorie, nowe języki, nowe elementy menu i nowe sekcje ustawień. Wtedy dotychczasowy limit, który wcześniej był wystarczający, zaczyna blokować zapis części danych.
Warto jednak uważać z prostą diagnozą: „to na pewno max_input_vars”. Jeśli builder nie zapisuje strony, przyczyną może być również konflikt wtyczki, błąd JavaScript, cache, blokada WAF, limit pamięci, timeout albo problem z REST API. Limit formularza jest jednym z możliwych tropów, ale nie jedynym.
Kiedy to nie jest max_input_vars tylko inny błąd WordPressa?
Problem z max_input_vars łatwo pomylić z innymi usterkami, bo objawy mogą być podobne: zmiany nie zapisują się poprawnie albo po odświeżeniu znikają. Różnica polega na tym, jak zachowuje się panel i czy WordPress pokazuje dodatkowy komunikat błędu.
Przy max_input_vars często:
- nie ma komunikatu 403
- nie ma błędu 500
- panel WordPressa nadal działa
- zapis wygląda na poprawny
- problem dotyczy głównie dużych formularzy
- mniejsze zmiany zapisują się normalnie
- znika część danych, często końcowe pola formularza
- problem nasila się wraz z rozbudową menu lub ustawień.
Jeśli widzisz konkretny błąd, warto rozszerzyć diagnozę.
Błąd 500 przy zapisie zmian może oznaczać problem po stronie serwera, PHP, wtyczki, motywu, limitu pamięci albo błędnej konfiguracji. Może pojawić się np. po kliknięciu „Zapisz”, podczas działania buildera albo przy zapytaniu do admin-ajax.php. W takim przypadku warto zacząć od logów błędów i sprawdzić podstawowe debugowanie WordPressa, zamiast od razu zakładać problem z max_input_vars.
Błąd 403 przy zapisie zwykle oznacza blokadę dostępu. Zapis może zostać zatrzymany przez WAF, ModSecurity, wtyczkę security, blokadę IP albo regułę w .htaccess. Wtedy użytkownik często widzi komunikat „Forbidden”, „Access denied” albo przerwaną akcję zapisu.
Błąd w edytorze blokowym albo builderze może wynikać z konfliktu JavaScript, niekompatybilnej wtyczki, błędu motywu, problemu z REST API albo cache. Objawy mogą być inne niż przy max_input_vars: przyciski nie reagują, edytor się nie ładuje, zapis zatrzymuje się w połowie albo w konsoli przeglądarki pojawiają się błędy.
Problem z cache wygląda jeszcze inaczej. Zmiany mogą być zapisane w panelu, ale nie widać ich od razu na stronie. Wtedy warto sprawdzić podgląd po zalogowaniu, wyczyścić cache strony, cache przeglądarki, cache CDN albo cache wtyczki optymalizacyjnej.
Warto też odróżnić max_input_vars od innych limitów PHP. Ten parametr nie odpowiada za wielkość przesyłanego pliku ani za maksymalny rozmiar uploadu. Jeśli problem dotyczy wgrywania zdjęć, plików lub importu dużego pliku, przyczyną mogą być inne ustawienia, np. upload_max_filesize, post_max_size albo memory_limit. Przy max_input_vars problem dotyczy przede wszystkim liczby pól w formularzu, a nie rozmiaru jednego pliku.
Najprostszy test jest praktyczny: sprawdź, czy mała zmiana zapisuje się poprawnie, a problem pojawia się dopiero przy dużym menu lub rozbudowanym formularzu. Jeśli tak, max_input_vars jest dobrym tropem do dalszej diagnozy. Jeśli zamiast tego pojawia się błąd 500, 403, problem z AJAX-em albo niedziałający edytor, trzeba szukać szerzej.
Czy zwiększenie limitu zawsze rozwiązuje problem?
Zwiększenie max_input_vars może pomóc, ale nie zawsze jest pełnym rozwiązaniem. Jeśli problem rzeczywiście wynika z tego, że formularz przesyła więcej pól, niż PHP może przyjąć, podniesienie limitu powinno poprawić zapis. Dotyczy to szczególnie dużych menu, rozbudowanych ustawień motywu i paneli z wieloma polami.
Nie warto jednak traktować tego parametru jako jedynego winowajcy. Jeżeli strona ma bardzo ciężki panel, wiele wtyczek, rozbudowany builder i ogromne formularze ustawień, samo podniesienie limitu może tylko odsunąć problem w czasie.
Warto zadać sobie kilka pytań:
- Czy menu naprawdę musi mieć tak dużo pozycji?
- Czy wszystkie dodatki do menu są potrzebne?
- Czy motyw nie przechowuje zbyt wielu ustawień w jednym formularzu?
- Czy wtyczki nie dublują funkcji?
- Czy konfiguracja strony nie jest nadmiernie rozbudowana?
- Czy problem nie pojawił się po instalacji konkretnej wtyczki?
Jeśli po każdym kolejnym rozbudowaniu menu musisz podnosić limit, problemem może być nie tylko konfiguracja PHP, ale też sama struktura strony. Warto wtedy uprościć menu, ograniczyć dodatki do pozycji menu albo sprawdzić, czy motyw lub wtyczka nie generują zbyt wielu pól. Zbyt duży limit nie powinien być pretekstem do ignorowania porządku w WordPressie. Jeśli panel robi się coraz cięższy, zapis trwa długo, a formularze mają setki lub tysiące pól, warto uporządkować konfigurację, a nie tylko zwiększać kolejne parametry.
Co sprawdzić przed zmianą parametrów PHP?
Zanim zmienisz max_input_vars, spróbuj ustalić, czy problem rzeczywiście pasuje do tego scenariusza. Dzięki temu unikniesz przypadkowych zmian w konfiguracji PHP.
Sprawdź:
- czy problem dotyczy tylko dużego menu lub rozbudowanego formularza
- czy mniejsze zmiany zapisują się poprawnie
- czy po zapisie znika tylko część danych
- czy w panelu pojawia się jakikolwiek komunikat błędu
- czy problem wystąpił po instalacji konkretnej wtyczki
- czy ostatnio był zmieniany motyw, builder albo wtyczka do menu
- czy problem występuje na jednym koncie użytkownika, czy na wszystkich
- czy na stronie działa cache, WAF, CDN albo wtyczka security
- czy w logach pojawia się informacja o przekroczeniu limitu zmiennych wejściowych.
Jeśli masz dostęp do konfiguracji PHP, możesz sprawdzić aktualną wartość max_input_vars. W panelu cyber_Folks parametry PHP można zmieniać zgodnie z instrukcją w pomocy: Jak zmienić parametry PHP?. W wybranych przypadkach parametr może być też ustawiany przez wpis w .htaccess, co opisuje materiał o budowie i najpopularniejszych wpisach pliku .htaccess.
Przy edycji .htaccess trzeba jednak zachować ostrożność. Nie każdy serwer obsługuje zmianę parametrów PHP przez wpisy typu php_value w .htaccess. Jeśli po takiej zmianie pojawi się błąd 500, należy cofnąć dodany wpis i skorzystać z ustawień PHP w panelu hostingu albo zgłosić sprawę do supportu.
Przed zmianą parametrów warto wykonać kopię zapasową lub przynajmniej upewnić się, że wiesz, jak wrócić do poprzednich ustawień. Jeśli problem dotyczy strony produkcyjnej, najlepiej testować większe zmiany w spokojniejszym czasie albo na kopii testowej.
Dobre ustawienia pomagają, ale porządek w panelu też ma znaczenie
max_input_vars to jeden z tych parametrów, o których większość użytkowników WordPressa nie myśli na co dzień. Problem pojawia się dopiero wtedy, gdy strona zaczyna się rozrastać: menu ma coraz więcej pozycji, motyw coraz więcej ustawień, a wtyczki coraz więcej pól konfiguracyjnych. Jeśli WordPress nie zapisuje wszystkich zmian, a problem dotyczy dużego menu, buildera albo rozbudowanego formularza ustawień, warto sprawdzić ten limit. Podniesienie max_input_vars może rozwiązać problem, ale nie powinno zastępować porządku w strukturze strony.
Dobrze utrzymany WordPress to nie tylko aktualizacje i kopie zapasowe. To także rozsądna liczba wtyczek, przejrzyste menu, uporządkowane ustawienia i hosting, który pozwala dostosować parametry PHP do potrzeb strony.
Jeśli chcesz łatwiej zarządzać stroną i jej konfiguracją, sprawdź hosting WordPress w cyber_Folks. Dobrze dobrane środowisko pozwala wygodniej dostosować parametry PHP, szybciej diagnozować problemy i bezpieczniej rozwijać WordPressa.
FAQ – WordPress nie zapisuje zmian i max_input_vars
max_input_vars to parametr PHP określający, ile zmiennych wejściowych może zostać przyjętych w jednym żądaniu. W praktyce wpływa na to, ile pól formularza może zostać przetworzonych podczas jednego zapisu.
Tak. Duże menu może zawierać bardzo wiele pól, szczególnie jeśli motyw lub wtyczki dodają dodatkowe opcje do każdej pozycji. Po przekroczeniu limitu część danych może nie zostać zapisana.
W niektórych przypadkach formularz może zostać wysłany, ale nie wszystkie dane zostaną przetworzone. Użytkownik widzi wtedy normalny powrót do panelu, ale po odświeżeniu część zmian znika.
Zwiększenie limitu może być potrzebne przy rozbudowanych stronach, ale powinno być wykonane świadomie. Warto najpierw upewnić się, że problem rzeczywiście dotyczy dużej liczby pól, a nie cache, konfliktu wtyczki, błędu JavaScript albo blokady bezpieczeństwa.
Nie ma jednej wartości dobrej dla każdej strony. Prosty WordPress może działać poprawnie na niższym limicie, a rozbudowana strona z megamenu, builderem i wieloma ustawieniami może wymagać wyższej wartości. Limit warto dopasować do konkretnego przypadku, zamiast zwiększać go bez końca.


Polecane dla Ciebie
Wersje WordPress w Polsce w lutym 2023
Wersja WordPress to jeden z elementów większego, cyklicznego badania. Jako jeden z wiodących operatorów hostingu stale monitorujemy ponad dwa miliony […]
Jak założyć sklep internetowy na WordPress + WooCommerce?
Aby uruchomić swój własny sklep na WooCommerce potrzebujesz domeny, hostingu, zainstalowanego WordPressa oraz wtyczki WooCommerce, która rozszerza stronę o funkcje sprzedażowe.
WordCamp Warszawa 2022 – relacja
Polski WordCamp powrócił po trzech latach przerwy! Warszawa na dwa dni (11-12 czerwca) stała się stolicą miłośników i sympatyków WordPressa […]
Szukasz dalej?