Jeśli trafiłeś tu, bo właśnie zobaczyłeś komunikat `Fatal error: Allowed memory size of 134217728 bytes exhausted`, to dobra wiadomość: dane są bezpieczne, a fix zajmie Ci kilka minut. Gorsza wiadomość – w większości przypadków samo zwiększenie limitu to plaster na objaw, a nie leczenie przyczyny. W tym poradniku pokażę Ci 4 metody podniesienia PHP memory limit w WordPress, konkretne wartości dla bloga, sklepu i sklepu WooCommerce, decyzję czy zwiększać czy optymalizować, listę wtyczek, które pożerają najwięcej RAM w 2026 roku, oraz porównanie domyślnych limitów na polskich hostingach. Skupiamy się na praktyce – każdy snippet jest gotowy do wklejenia, a każda liczba oparta na realnych sklepach, które obsługujemy.
Krótka odpowiedź
PHP memory limit w WordPress to maksymalna ilość RAM, jaką jeden skrypt PHP może zużyć podczas generowania strony. Najszybszy fix błędu Allowed memory size exhausted to dopisanie `define('WP_MEMORY_LIMIT', '512M');` w wp-config.php.
Dla WooCommerce celuj w 512M, dla bloga wystarczy 256M, a jeśli hosting blokuje zmianę – czas na migrację.
Usługi KC Mobile
Sprawdź naszą ofertę
Potrzebujesz pomocy specjalisty? Skorzystaj z naszych usług i rozwiń swój biznes online.
Czym jest PHP memory limit i dlaczego WordPress go potrzebuje
PHP memory limit to twardy sufit pamięci RAM, jaką pojedynczy proces PHP może zużyć podczas wykonywania skryptu. Wartość ustawiana jest w `php.ini` dyrektywą `memory_limit` i dotyczy każdego żądania osobno – jeśli limit to 256M, a stronę ładuje równocześnie 20 osób, teoretycznie potrzeba 20 × 256M = 5120M RAM na serwerze.
WordPress sam w sobie jest dość oszczędny – czysty rdzeń z domyślnym motywem zjada około 30-50 MB na żądanie. Problem zaczyna się, gdy dodasz 25 wtyczek, Elementora, WooCommerce i wtyczkę security z real-time scanning. Wtedy ten sam request potrafi zjeść 200-400 MB.
WordPress ma też własne, wewnętrzne stałe: `WP_MEMORY_LIMIT` (dla frontendu) oraz `WP_MAX_MEMORY_LIMIT` (dla panelu admina i crona). Jeśli PHP pozwala na 512M, a w `wp-config.php` masz `WP_MEMORY_LIMIT` ustawione na 64M, to WordPress sam się zdławi – niezależnie od hojności serwera.
Potrzebujesz profesjonalnej strony WordPress?
Tworzymy strony WordPress, które są szybkie, bezpieczne i zoptymalizowane pod SEO. Od 3000 zł.
Błąd Allowed memory size exhausted – co oznacza i czy stracisz dane
Komunikat `Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)` oznacza, że skrypt PHP próbował zaalokować więcej RAM niż pozwala `memory_limit`. PHP przerywa wykonanie, a przeglądarka pokazuje albo surowy błąd, albo biały ekran śmierci.
Dane w bazie są bezpieczne. Błąd zatrzymuje TYLKO aktualne żądanie – nie uszkadza bazy danych, nie kasuje plików, nie niszczy zamówień w WooCommerce. Jeśli błąd pojawił się podczas zapisywania posta, najwyżej stracisz ostatnie niezapisane zmiany.
Co dokładnie się wydarzyło? W 9 na 10 przypadków odpowiedź brzmi: jakaś wtyczka próbuje jednorazowo załadować zbyt wiele danych do pamięci (np. import 10 tys. produktów w WooCommerce, backup całej bazy, optymalizacja obrazków w tle). Więcej o powiązanych awariach znajdziesz w naszym poradniku biały ekran śmierci WordPress – diagnoza i naprawa.
Jak sprawdzić aktualny memory limit w WordPress (3 sposoby)
Zanim zaczniesz kombinować z kodem, sprawdź co masz aktualnie ustawione. Są trzy niezawodne sposoby.
Sposób 1: Site Health (wbudowany) Przejdź do `Narzędzia → Stan witryny → Informacje → Serwer`. Znajdziesz tam pola: - `PHP memory limit` – limit dla frontendu - `PHP max input vars` - `Wersja PHP`
Sposób 2: Plik info.php (najszybszy) Stwórz plik `info.php` w katalogu głównym WordPressa z zawartością ``. Otwórz go w przeglądarce – w sekcji `memory_limit` zobaczysz zarówno Local Value (co ustawia WordPress), jak i Master Value (co pozwala hosting). Po sprawdzeniu usuń plik – ujawnia on zbyt wiele informacji o serwerze.
Sposób 3: Query Monitor (dla diagnozy) Wtyczka Query Monitor pokazuje w pasku admina `Peak memory usage` dla każdego requestu. To jedyny sposób, żeby zobaczyć, ile RAM faktycznie zużywa konkretna podstrona. Filtruj po kolumnie Component, żeby wytropić winną wtyczkę.
Jak zwiększyć PHP memory limit – 4 metody krok po kroku
Metody różnią się zasięgiem i wymogami hostingowymi. Próbuj od góry – pierwsza działa w 80% przypadków.
Metoda 1: wp-config.php (zalecana) Połącz się przez FTP albo File Manager w panelu hostingu. Otwórz `wp-config.php` w katalogu głównym WordPressa. Przed linią `/* That's all, stop editing! Happy publishing. */` dodaj:
define('WP_MEMORY_LIMIT', '512M');
define('WP_MAX_MEMORY_LIMIT', '512M');Pierwsza dyrektywa ustawia limit dla frontendu, druga dla wp-admin. Zapisz plik i odśwież stronę.
Metoda 2: .htaccess (tylko Apache) Jeśli hosting używa Apache (większość shared hostingów w Polsce), dodaj na początku `.htaccess`:
php_value memory_limit 512MNa LiteSpeed i Nginx ta metoda NIE zadziała – serwer ją zignoruje lub zwróci błąd 500.
Metoda 3: php.ini / .user.ini W katalogu głównym WordPressa stwórz (lub edytuj) plik `.user.ini`:
memory_limit = 512M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300Zmiany wchodzą w życie po 5 minutach (PHP cache'uje `.user.ini`).
Metoda 4: Panel hostingowy W większości polskich hostingów znajdziesz sekcję typu `Ustawienia PHP` albo `PHP Selector`. W CyberFolks jest to `PHP` → `Ustawienia PHP` → suwak `memory_limit`. W cPanel: `MultiPHP INI Editor`. Ta metoda jest najbezpieczniejsza – nie ruszasz plików WordPressa.
Jakie wartości ustawić – rekomendacje per typ strony
Nie ma jednej magicznej liczby. Oto co sprawdza się u naszych klientów w 2026 roku:
| Typ strony | Rekomendowany limit | Komentarz |
|---|---|---|
| Blog WordPress (<50k uniq/mies) | 128M | Stock wystarczy, jeśli nie używasz 30 wtyczek |
| Firmowa strona + Elementor/Divi | 256M | Standard – builder page'a zjada sporo |
| Sklep WooCommerce <500 produktów | 256-384M | Komfort bez błędów przy zamówieniach |
| Sklep WooCommerce 500-5000 produktów | 512M | Import CSV potrzebuje zapasu |
| Sklep WooCommerce 5000+ produktów | 768M-1G | VPS zalecany, nie pchaj shared hostingu |
| LMS (LearnDash, TutorLMS) | 512M | Video encoding + progress tracking |
| Multisite 10+ sites | 512M-1G per site | Shared hosting odpada |
Uwaga: ustawienie 2G na shared hostingu to zazwyczaj iluzja. Serwer i tak ma twardy limit (np. 30 sekund execution time i 1GB RAM dla całego konta), więc zawyżony `memory_limit` tylko maskuje problem do następnego crashu. Więcej w naszym poradniku o optymalizacji WooCommerce.
Różnica między WP_MEMORY_LIMIT a WP_MAX_MEMORY_LIMIT
Te dwie stałe mylą nawet doświadczonych devów, a różnica jest istotna.
- `WP_MEMORY_LIMIT` – obowiązuje na frontendzie (strony, posty, wyniki wyszukiwania). Domyślnie 40M dla WordPressa i 64M dla WordPress Multisite.
- `WP_MAX_MEMORY_LIMIT` – obowiązuje w `/wp-admin/` oraz podczas zadań cron. Domyślnie 256M.
- `memory_limit` (PHP ini) – master cap. Jeśli PHP pozwala na 128M, a `WP_MAX_MEMORY_LIMIT` ma 512M, to i tak dostaniesz 128M. WordPress nie może przekroczyć PHP.
Praktyczny wniosek: jeśli błąd wyskakuje TYLKO w adminie (np. podczas aktualizacji wtyczek, importu produktów), zwiększ `WP_MAX_MEMORY_LIMIT`. Jeśli błąd jest na frontendzie – rusz `WP_MEMORY_LIMIT`. W obu przypadkach upewnij się, że PHP `memory_limit` jest ≥ ustawionej wartości w WordPressie.
Top 10 wtyczek, które najbardziej zżerają RAM w 2026
Na podstawie pomiarów Query Monitor z 50+ sklepów, którymi się opiekujemy:
1. Elementor Pro – 40-80 MB na page load (Flexbox container trochę pomaga, ale wciąż ciężki)
2. WooCommerce – 60-120 MB dla sklepów 1000+ produktów, szczególnie koszyk i checkout
3. WPML – 30-50 MB (string translation jest kosztowny)
4. Jetpack Full – 40-70 MB, zwłaszcza z włączonymi Related Posts i statystykami
5. Wordfence – 30-60 MB, real-time firewall trzyma dużo w pamięci
6. LearnDash / TutorLMS – 50-100 MB przy wyświetlaniu kursów z progress trackingiem
7. UpdraftPlus / BackupBuddy – podczas backupu +200 MB do +500 MB (jednorazowo)
8. Yoast SEO Premium – 15-25 MB, redirect manager i cornerstone content analysis
9. Popup Maker / OptinMonster – 20-30 MB na każdym page view
10. iThemes Security / Sucuri – 30-60 MB przy aktywnym skanowaniu
Złota zasada: jeśli Twoja strona używa 5 wtyczek z tej listy jednocześnie, nawet 512M może nie wystarczyć. Czasem lepiej zamienić płatną wtyczkę na Redis Object Cache i zredukować zapytania do bazy, niż podbijać RAM.
Kiedy zwiększać limit, a kiedy optymalizować – decision tree
Zanim klikniesz zwiększ do 1G, odpowiedz sobie na trzy pytania.
Krok 1: Jaki masz obecny limit?
- Poniżej 128M → podnieś do 256M i idź dalej. To poziom absurdalnie niski, hosting powinien dawać więcej.
- 128-256M i błąd przy podstawowych operacjach (pisanie posta, dashboard) → ZWIĘKSZ do 512M.
- 256M i błąd tylko przy specyficznych akcjach (import, backup, kupowanie w WC) → DIAGNOZUJ, nie podnoś.
Krok 2: Czy znasz źródło problemu?
Zainstaluj Query Monitor. Otwórz podstronę, która pada. Sprawdź Peak Memory + kolumnę Component w zakładce Queries. Jeśli jedna wtyczka zjada >40% RAM – to ona jest winna, nie hosting.
Krok 3: Czy zwiększenie pomogło na długo?
- Jeśli po podniesieniu limit znów się zapełnia w ciągu 2-3 tygodni – masz memory leak albo za dużo wtyczek. Limit to objaw, nie przyczyna.
- Jeśli limit 512M+ nie wystarcza regularnie – czas pomyśleć o migracji na VPS albo managed WordPress hosting. Zobacz nasz poradnik WordPress wolno się ładuje – diagnoza i naprawa.
PHP memory limit na polskich hostingach – macierz
Największy sekret branży: domyślne limity memory bardzo się różnią. Oto co znajdziesz bez grzebania w ustawieniach (stan na 2026):
| Hosting | Domyślny limit | Można zwiększyć? |
|---|---|---|
| CyberFolks Turbo | 512M | Tak, do 2G w panelu |
| CyberFolks Starter | 256M | Tak, do 1G |
| LH.pl Optimal | 256M | Tak, PHP Selector |
| Zenbox Standard | 256M | Tak |
| OVH Perso | 256M | Tak, w panelu |
| Hetzner managed (Cloudways) | 512M-1G | Tak, bez ograniczeń |
| nazwa.pl Home Standard | 128M | Częściowo, forsują upsell |
| home.pl Starter | 64M | Bardzo ograniczone |
Jeśli siedzisz na hostingu z 64-128M i nie możesz podnieść – nie walcz, migruj. Sam najczęściej polecam CyberFolks – pakiet Turbo startuje od 15 zł/mies i ma 512M z automatu, więc `Allowed memory size exhausted` po prostu nie pojawia się przy normalnym użytkowaniu. Mam tam prywatnie ponad 20 stron, w tym kilka sklepów WooCommerce, i ten błąd widziałem tylko raz – przy imporcie 30 tys. produktów jednym plikiem CSV (co i tak wymagałoby 1G+ wszędzie).
Jak wybrać hosting pod WordPress, opisałem szczegółowo w hosting WordPress – jak wybrać.
Potrzebujesz pomocy z WordPress?
Tworzymy i naprawiamy strony na WordPress. Optymalizacja prędkości, bezpieczeństwo, aktualizacje. 500+ zrealizowanych projektów.
Najczęściej zadawane pytania
Jaki memory limit jest zalecany dla WooCommerce?
Czy 256M wystarczy dla WordPress w 2026?
Gdzie najszybciej zwiększyć memory limit jeśli nie mam dostępu do wp-config?
Czy zwiększenie memory_limit spowalnia stronę?
Co jeśli hosting blokuje zmianę PHP memory limit?
Jak naprawić memory exhausted podczas importu w WooCommerce?
Czy Elementor wymaga więcej RAM niż inne buildery?
Czy przejście z shared na VPS rozwiązuje problem z memory limit na zawsze?
Potrzebujesz pomocy?
Potrzebujesz profesjonalnej strony WordPress?
Tworzymy strony WordPress, które są szybkie, bezpieczne i zoptymalizowane pod SEO. Od 3000 zł.