Variácie alebo menu sa neukladajú: zvýšte max_input_vars
Upravujete produkt s veľkým počtom variácií, alebo veľké menu vo WordPresse, a kliknete na Aktualizovať. Nezobrazí sa žiadna chybová správa, ale po obnovení stránky časť vašich zmien chýba: posledné variácie majú svoju starú cenu, alebo v spodnej časti menu chýbajú položky. Príčinou je takmer vždy nastavenie PHP max_input_vars.
Čo je max_input_vars?
Pri ukladaní odošle váš prehliadač všetky polia formulára na server naraz. Pri variabilnom produkte je to na variáciu veľa polí: cena, sklad, SKU, hmotnosť a ďalšie. Pri veľkom menu obsahuje každá položka menu niekoľko polí. PHP príjme na jeden požiadavok len určitý počet polí: to je max_input_vars. Samotné PHP má štandardne nastavenú hodnotu 1000. Ak príde viac polí, PHP zvyšné polia vynechá bez upozornenia. WordPress a WooCommerce potom uložia len to, čo bolo prijaté.
WooCommerce zobrazuje v administrácii 15 variácií na stránku, aby toto obmedzenie zmiernil. Pri veľkom počte atribútov a polí sa aj tak môžete dostať na hranicu.
Zistenie aktuálnej hodnoty
- Vo WooCommerce: WooCommerce > Status, pri položke PHP Max Input Vars.
- V DirectAdmin: Select PHP version, karta Options, pri položke
max_input_vars.
Zvýšenie max_input_vars vo WebOké
- Prihláste sa do DirectAdmin: v Môj WebOké prejdite na Moje produkty a pri vašom hostingovom balíku kliknite na DirectAdmin.
- V časti Extra Programy kliknite na Select PHP version.
- Skontrolujte, či je vybraná verzia, ktorú vaša stránka používa. Možnosti nastavujete pre jednotlivé verzie PHP.
- Prejdite na kartu Options, kliknite na hodnotu za položkou
max_input_varsa vyberte vyššiu hodnotu, napríklad3000alebo5000. - Zmena sa uloží okamžite a platí pre všetky stránky vo vašom balíku s danou verziou PHP.
Ak je verzia PHP nastavená na native, nemôžete v časti Options nič upraviť. V takom prípade najprv vyberte pevnú verziu. Vysvetlenie so screenshotmi nájdete v článku Možnosti PHP: upload_max_filesize, memory_limit a max_execution_time a v článku Zmena verzie PHP a nastavení PHP (a čo robiť pri chybách po upgrade).
Nechcete to hľadať sami? AI asistent v Môj WebOké vám dokáže upraviť max_input_vars pre verziu PHP, ktorú váš balík používa. Najprv uvidíte, čo sa zmení, a sami to schválite.
Kontrola, či to funguje
- Skontrolujte v časti WooCommerce > Status, či je zobrazená nová hodnota.
- Stále sa zobrazuje stará hodnota? Skontrolujte, či sa vo vašom súbore
.htaccessnenachádza stará riadkaphp_value max_input_vars, alebo či nie je v časti PHP nastavenia v DirectAdmin nastavená vlastná hodnota pre vašu doménu. Tie majú prednosť. Pozrite si PHP nastavenia v DirectAdmin alebo Select PHP version: aký je rozdiel? - Upravte produkt alebo menu znova, uložte zmeny a po obnovení stránky skontrolujte, či sa všetko zachovalo. To, čo sa už stratilo, musíte zadať znova.
Ďalšie čítanie
- Príručka PHP: max_input_vars (po anglicky)
