Poradnik naprawy

Jak zaktualizować PHP na hostingu WordPress

8 lutego 2026 Zaktualizowano 19 kwi 2026

Uruchamianie przestarzałej wersji PHP to jeden z największych błędów wydajnościowych i bezpieczeństwa, jakie możesz popełnić w witrynie WordPress. PHP to język napędzający WordPress, a każda nowa wersja przynosi mierzalne ulepszenia szybkości, łatki bezpieczeństwa i nowe funkcje języka, na których polegają wtyczki i motywy. Jeśli Twój hosting nadal działa na PHP 7.4 lub nawet PHP 8.0, tracisz wydajność i narażasz witrynę na znane luki, które nigdy nie zostaną załatane.

Dlaczego wersja PHP ma znaczenie dla WordPress

PHP to nie tylko szczegół działający w tle. Bezpośrednio wpływa na to, jak szybko ładują się Twoje strony, ile pamięci zużywa serwer i czy Twoje wtyczki w ogóle mogą działać. Każde duże wydanie PHP zawiera wewnętrzne optymalizacje silnika Zend Engine (środowiska uruchomieniowego wykonującego kod PHP), a optymalizacje te kumulują się z czasem. Witryna WordPress działająca na PHP 8.3 obsługuje więcej żądań na sekundę, używa mniej pamięci na żądanie i reaguje szybciej niż ta sama witryna na PHP 7.4.

Oprócz wydajności jest też aspekt bezpieczeństwa. PHP 7.4 oficjalnie osiągnął koniec wsparcia (EOL) w listopadzie 2022. PHP 8.0 osiągnął EOL w listopadzie 2023. PHP 8.1 osiągnął EOL w grudniu 2025. Gdy wersja osiąga EOL, zespół PHP całkowicie przestaje wydawać łatki bezpieczeństwa. Jeśli w wersji EOL zostanie odkryta krytyczna luka, nigdy nie zostanie naprawiona. Twój hostingodawca może niektóre łatki przenieść wstecz, ale nie należy na tym polegać.

Porównanie wersji PHP: wydajność i funkcje

Poniżej praktyczny przegląd głównych wersji PHP, które spotkasz na hostingu WordPress:

  • PHP 7.4 (EOL listopad 2022): Ostatnie wydanie linii PHP 7.x. W swoim czasie była to solidna wersja, ale brakuje jej typowanych właściwości, typów unii, fiberów i wzrostu wydajności PHP 8.x. WordPress 6.4+ oficjalnie zaleca PHP 8.0 lub nowszy. Wiele nowszych wtyczek całkowicie porzuciło wsparcie dla PHP 7.4.
  • PHP 8.0 (EOL listopad 2023): Wprowadził kompilator JIT (Just-In-Time), nazwane argumenty, typy unii, wyrażenia match i operatory nullsafe. Kompilator JIT nie poprawia dramatycznie typowych obciążeń WordPress (które są związane z I/O, a nie z CPU), ale ogólne optymalizacje silnika dają wzrost szybkości o 5-10% w porównaniu z PHP 7.4.
  • PHP 8.1 (EOL grudzień 2025): Dodał fibers (używane przez nowsze biblioteki asynchroniczne), enumy, właściwości readonly i typy przecięć. Rdzeń WordPress ma pełne wsparcie. Większość dobrze utrzymywanych wtyczek działa świetnie na 8.1.
  • PHP 8.2 (Poprawki bezpieczeństwa do grudnia 2026): Wprowadził klasy readonly, oznaczył dynamiczne właściwości jako przestarzałe (co spowodowało generowanie ostrzeżeń przez niektóre starsze wtyczki) i ulepszył generator liczb losowych. To dobra wersja docelowa, jeśli chcesz stabilności z trwającym wsparciem bezpieczeństwa.
  • PHP 8.3 (Aktywne wsparcie do grudnia 2026, poprawki bezpieczeństwa do grudnia 2027): Dodał typowane stałe klas, funkcję json_validate() oraz różne ulepszenia wydajności. To obecnie zalecana wersja dla nowych instalacji WordPress, ponieważ ma najdłuższy pozostały okres wsparcia i najlepszą wydajność.

Testy wydajności: jak naprawdę wyglądają liczby

W rzeczywistych testach WordPress (testowanych ze standardową instalacją WooCommerce, 20 aktywnymi wtyczkami i motywem takim jak Astra) różnice między wersjami PHP są znaczące:

  • PHP 7.4: Obsługuje około 90-100 żądań na sekundę, ze średnim czasem odpowiedzi około 250 ms.
  • PHP 8.0: Obsługuje około 100-115 żądań na sekundę, średni czas odpowiedzi około 220 ms.
  • PHP 8.1: Obsługuje około 110-120 żądań na sekundę, średni czas odpowiedzi około 210 ms.
  • PHP 8.2: Obsługuje około 115-125 żądań na sekundę, średni czas odpowiedzi około 200 ms.
  • PHP 8.3: Obsługuje około 120-135 żądań na sekundę, średni czas odpowiedzi około 190 ms.

Liczby te różnią się w zależności od środowiska hostingowego, ale trend jest spójny: każda wersja PHP jest mierzalnie szybsza od poprzedniej. Aktualizacja z PHP 7.4 do 8.3 zwykle daje poprawę o 25-35% w żądaniach na sekundę.

Przed aktualizacją: lista kontrolna przed upgradem

  1. Wykonaj pełną kopię zapasową: Wykonaj kopię zapasową zarówno bazy danych, jak i plików. Użyj UpdraftPlus, BackWPup lub wbudowanego narzędzia do tworzenia kopii zapasowych Twojego hostingu. Nie pomijaj tego kroku. Jeśli coś pójdzie nie tak, musisz móc przywrócić witrynę w ciągu kilku minut.
  2. Sprawdź kompatybilność wtyczek i motywów: Zainstaluj wtyczkę "PHP Compatibility Checker" od WP Engine. Skanuje ona Twoje wtyczki i pliki motywów pod kątem wywołań funkcji, które są przestarzałe lub usunięte w nowszych wersjach PHP. Zwróć uwagę na wyniki "ERROR", ponieważ powodują one błędy krytyczne. Wyniki "WARNING" zwykle wyzwalają tylko ostrzeżenia o przestarzałości, które nie psują funkcjonalności.
  3. Przejrzyj przewodniki migracji PHP: Oficjalna dokumentacja PHP publikuje przewodniki migracji dla każdej wersji (php.net/migration80, php.net/migration81, itd.). Wymieniają one każdą zmianę łamiącą zgodność. Nie musisz czytać całego przewodnika, ale przejrzyj sekcję "Backward Incompatible Changes".
  4. Użyj środowiska staging: Jeśli Twój hostingodawca oferuje staging (Kinsta, WP Engine, SiteGround i większość hostów zarządzanych to robi), sklonuj swoją witrynę produkcyjną do stagingu i przetestuj aktualizację PHP tam najpierw. To absolutnie najważniejszy krok, aby uniknąć przestojów.
  5. Najpierw zaktualizuj wszystkie wtyczki i motywy: Przed zmianą wersji PHP upewnij się, że każda wtyczka i motyw działa w najnowszej wersji. Programiści regularnie wydają aktualizacje dodające kompatybilność z nowszymi wersjami PHP.

Jak zmienić wersję PHP

Hosting cPanel (większość hostingów współdzielonych)

  1. Zaloguj się do panelu cPanel.
  2. Poszukaj "Select PHP Version" (CloudLinux) lub "MultiPHP Manager" (natywny cPanel). Nazwa zależy od konfiguracji Twojego hostingodawcy.
  3. Jeśli używasz MultiPHP Manager, wybierz swoją domenę z listy, wybierz nową wersję PHP z menu rozwijanego i kliknij "Apply".
  4. Jeśli używasz Select PHP Version, zobaczysz bieżącą wersję u góry. Kliknij menu rozwijane, wybierz nową wersję i potwierdź. Ten interfejs pozwala również włączać lub wyłączać poszczególne rozszerzenia PHP.

Hosting Plesk

  1. Zaloguj się do Plesk i przejdź do Websites & Domains.
  2. Kliknij domenę, którą chcesz zaktualizować.
  3. Kliknij PHP Settings (lub "PHP Version" w zależności od wersji Plesk).
  4. Wybierz nową wersję PHP z menu rozwijanego i kliknij "Apply" lub "OK".
  5. Plesk pozwala również skonfigurować ustawienia PHP na tej samej stronie (memory_limit, max_execution_time, itd.).

Zarządzany hosting WordPress

Zarządzane hosty zwykle ułatwiają przełączanie wersji PHP:

  • Kinsta: Przejdź do Sites, wybierz swoją witrynę, kliknij Tools, znajdź "PHP Engine" i wybierz nową wersję.
  • WP Engine: Przejdź do Sites, wybierz swoje środowisko, kliknij Overview i znajdź ustawienie wersji PHP. WP Engine ma również wbudowany PHP Compatibility Checker w swoim panelu.
  • SiteGround: Przejdź do Site Tools, a następnie do PHP Manager w sekcji Devs. W razie potrzeby możesz ustawić wersję PHP per katalog.
  • Cloudways: Przejdź do Server Management, Settings & Packages, a następnie do zakładki Packages. Zmień wersję PHP tam (to wpływa na cały serwer).

Częste błędy po aktualizacji PHP

Jeśli Twoja witryna wyświetla błędy po aktualizacji PHP, nie panikuj. Oto najczęstsze problemy i ich rozwiązania:

Fatal Error: Uncaught Error (funkcja nie znaleziona)

Dzieje się tak, gdy wtyczka lub motyw używa funkcji PHP, która została usunięta w nowej wersji. Częste przykłady to create_function() (usunięte w PHP 8.0), each() (usunięte w PHP 8.0) i funkcje mysql_* (usunięte od PHP 7.0). Rozwiązaniem jest aktualizacja wtyczki lub motywu powodującego błąd. Sprawdź komunikat błędu pod kątem ścieżki pliku, aby zidentyfikować odpowiedzialną wtyczkę.

Ostrzeżenia o przestarzałości wypełniają Twój dziennik błędów

PHP 8.2 oznaczył dynamiczne właściwości (ustawianie niezadeklarowanych właściwości na obiektach) jako przestarzałe, co spowodowało zalew ostrzeżeń o przestarzałości w wielu starszych wtyczkach. Ostrzeżenia te nie psują witryny, ale mogą ją spowolnić, jeśli rejestrowanie błędów jest rozbudowane. Zaktualizuj dotknięte wtyczki lub, jeśli wtyczka została porzucona, rozważ zastąpienie jej alternatywą.

White Screen of Death

Całkowicie pusty ekran zwykle oznacza, że występuje błąd krytyczny, ale wyświetlanie błędów jest wyłączone. Tymczasowo włącz wyświetlanie błędów, dodając to do wp-config.php:

define('WP_DEBUG', true);
define('WP_DEBUG_DISPLAY', true);
define('WP_DEBUG_LOG', true);

Sprawdź błąd, napraw go, a następnie wyłącz tryb debug w produkcji.

Błędy typów i ściślejsze sprawdzanie typów

PHP 8.x jest bardziej rygorystyczny w obsłudze typów. Przekazywanie null do funkcji wewnętrznych oczekujących stringa (jak strlen(null)) generuje teraz ostrzeżenie o przestarzałości lub TypeError. Często pojawia się to w słabo zaprogramowanych wtyczkach, które nie sprawdzają wartości null przed przekazaniem ich do funkcji string.

Niezbędne ustawienia php.ini dla WordPress

Po aktualizacji PHP przejrzyj te kluczowe ustawienia php.ini. Zwykle możesz je edytować przez panel kontrolny hostingu lub tworząc niestandardowy plik php.ini lub .user.ini w katalogu głównym WordPress:

; Limit pamięci - WordPress zaleca minimum 256M
memory_limit = 256M

; Maksymalny rozmiar uploadu
upload_max_filesize = 64M
post_max_size = 64M

; Czas wykonywania - zwiększ przy wolnych importach lub dużych operacjach
max_execution_time = 300

; Zmienne wejściowe - zwiększ przy złożonych formularzach lub wielu polach niestandardowych
max_input_vars = 3000

; Raportowanie błędów - wyłącz display_errors w produkcji
display_errors = Off
log_errors = On
error_log = /path/to/php-error.log

Konfiguracja OPcache dla najlepszej wydajności

OPcache przechowuje wstępnie skompilowany bajtkod PHP w pamięci współdzielonej, dzięki czemu silnik PHP nie musi parsować i kompilować tych samych skryptów przy każdym żądaniu. Jest domyślnie włączony u większości hostingodawców, ale domyślne ustawienia są często zbyt zachowawcze dla WordPress. Oto zalecane ustawienia OPcache:

opcache.enable = 1
opcache.memory_consumption = 256
opcache.interned_strings_buffer = 16
opcache.max_accelerated_files = 10000
opcache.revalidate_freq = 60
opcache.validate_timestamps = 1
opcache.save_comments = 1
opcache.enable_file_override = 1

Ustawienie opcache.max_accelerated_files powinno być wyższe niż całkowita liczba plików PHP w Twojej instalacji WordPress. Typowa witryna WordPress z 20 wtyczkami ma około 5000-8000 plików PHP. Ustawienie tego na 10 000 daje wystarczająco miejsca. opcache.revalidate_freq kontroluje, jak często OPcache sprawdza, czy pliki źródłowe się zmieniły. W produkcji 60 sekund to dobry kompromis. Ustaw na 0 w środowiskach deweloperskich, aby zmiany były natychmiast wychwytywane.

Jak sprawdzić, jakiej wersji PHP wymagają Twoje wtyczki

Nie wszystkie wtyczki podają minimalną wersję PHP, ale te dobre tak. Oto jak to sprawdzić:

  • Strona wtyczki na WordPress.org: Przewiń w dół do pola "Requires PHP" na pasku bocznym. Jeśli wtyczka wymienia "7.4", a Ty działasz na 8.3, powinno to działać dobrze w większości przypadków, ponieważ wskazuje to minimum, a nie maksimum.
  • readme.txt wtyczki: Otwórz plik readme.txt wtyczki (w wp-content/plugins/plugin-name/readme.txt) i poszukaj nagłówka "Requires PHP".
  • Kod źródłowy wtyczki: Główny plik wtyczki (plik z nagłówkiem Plugin Name) czasami zawiera komentarz nagłówka "Requires PHP", który WordPress odczytuje.
  • Changelog i notatki wydania: Sprawdź changelog wtyczki pod kątem wzmianek o wymaganiach wersji PHP, zwłaszcza jeśli aktualizujesz kilka głównych wersji.

Procedura rollback, jeśli coś się zepsuje

Jeśli Twoja witryna zepsuje się po aktualizacji PHP i nie możesz szybko rozwiązać problemu, natychmiast wróć do poprzedniej wersji PHP. Oto procedura:

  1. Zmień wersję PHP z powrotem: Użyj tej samej metody cPanel, Plesk lub panelu hostingowego, której użyłeś do aktualizacji. Przełączanie z powrotem działa u większości hostów w ciągu kilku sekund.
  2. Sprawdź, czy Twoja witryna działa: Załaduj witrynę w przeglądarce i sprawdź panel administracyjny. Wszystko powinno wrócić do normy.
  3. Zbadaj problem: Teraz, gdy Twoja witryna jest ponownie stabilna, przejrzyj dzienniki błędów, aby zidentyfikować problematyczną wtyczkę lub motyw. Zaktualizuj lub znajdź alternatywę.
  4. Spróbuj ponownie: Po rozwiązaniu problemu kompatybilności spróbuj aktualizacji PHP ponownie, najpierw na stagingu, a potem na produkcji.

Jeśli nie możesz wrócić przez panel hostingowy (np. jeśli jesteś zablokowany w cPanel), zwykle możesz skontaktować się ze wsparciem swojego hostingodawcy, a oni zmienią dla Ciebie wersję PHP w ciągu kilku minut.

Po aktualizacji: weryfikacja po upgrade

  1. Odwiedź stronę główną witryny i kilka stron wewnętrznych. Zwróć uwagę na problemy wizualne, zepsute układy lub komunikaty błędów.
  2. Przetestuj krytyczną funkcjonalność: formularze kontaktowe, kasę WooCommerce (jeśli dotyczy), logowanie i rejestrację, wyszukiwanie i wszelkie niestandardowe funkcje.
  3. Sprawdź panel administracyjny WordPress pod kątem ostrzeżeń wtyczek lub powiadomień o aktualizacjach.
  4. Otwórz wp-content/debug.log (jeśli WP_DEBUG_LOG jest włączone) i poszukaj nowych błędów PHP lub ostrzeżeń o przestarzałości.
  5. Monitoruj dziennik błędów PHP swojego serwera przez co najmniej 24-48 godzin. Niektóre problemy pojawiają się tylko w określonych warunkach (niektóre szablony stron, zadania cron, wywołania API).
  6. Wyczyść wszystkie pamięci podręczne (cache stron, cache obiektów, OPcache), aby zostały odbudowane z nową wersją PHP.

Zweryfikuj swoją wersję PHP za pomocą InspectWP

Uruchom nowy skan InspectWP po aktualizacji. Sekcja hostingu pokazuje wykrytą wersję PHP z nagłówka serwera. Jeśli wersja się nie zmieniła, Twój hostingodawca może buforować stary handler PHP. Wyczyść pamięć podręczną serwera, poczekaj kilka minut i przeskanuj ponownie. InspectWP również oznacza przestarzałe wersje PHP w sekcji bezpieczeństwa, dzięki czemu możesz potwierdzić, że ostrzeżenie zostało rozwiązane po aktualizacji.

Sprawdź teraz swoją stronę WordPress

InspectWP analizuje Twoją stronę WordPress pod kątem bezpieczeństwa, problemów SEO, zgodności z RODO i wydajności — za darmo.

Przeanalizuj stronę za darmo