Prejsť na obsah

Nastavenia súborov cookie

Vyberte, aké druhy súborov cookie povolíte. Svoj výber môžete kedykoľvek zmeniť cez Nastavenia súborov cookie v dolnej časti každej stránky. Vyhlásenie o ochrane osobných údajov

Nevyhnutné

Vždy zapnuté

Potrebné na prihlásenie, uchovanie košíka a zapamätanie vašich volieb. Sú vždy zapnuté.

Ktoré súbory cookie?
  • weboke_sessie, weboke_klant, weboke_remember: vaša relácia a trvalé prihlásenie
  • weboke_basket: váš košík
  • wkBtwIncl: zobrazovanie cien s DPH alebo bez DPH
  • wok_cookies: váš výber súborov cookie, 12 mesiacov

Merajú, ktorá reklama vedie k návšteve alebo objednávke, aby sme neplatili za reklamy, ktoré nič neprinášajú.

Ktoré súbory cookie?
  • Google Ads cez Google Tag Manager (_gcl_au, _gcl_aw), najviac 90 dní
  • OpenAI Ads, reklamy v ChatGPT
  • wok_aff: ktorý partner vás k nám odporučil (partnerský program), 60 dní

4,6

Krajina a jazyk

Každá krajina má vlastný web s cenami a DPH danej krajiny.

Zobraziť

Verzie PHP a upgrady

Modul 8: Zálohy, testovacie prostredie a aktualizácie PHP · Čas čítania: 10 minút

Cieľ lekcie: Po tejto lekcii dokážete bezpečne pripraviť, vykonať a v prípade potreby vrátiť späť upgrade verzie PHP.

Kľúčové pojmy: životný cyklus PHP (aktívna podpora, len bezpečnosť, koniec podpory), kompatibilita WordPressu, témy a pluginov, zastarané (deprecated), upozornenie, fatálna chyba, Zdravie webovej stránky, chybový log, testovacie prostredie (staging), obnovenie, nechať upgrade vykonať

Prečo na verziách PHP záleží

WordPress, vaša téma a vaše pluginy sú napísané v PHP (lekcia 1.2). Z PHP vychádza každý rok nová verzia (8.3, 8.4, 8.5, ...). Každá verzia je udržiavaná počas pevne stanoveného obdobia:

  • aktívna podpora: dva roky opráv chýb a bezpečnostných opráv;
  • len bezpečnosť: potom ešte dva roky len bezpečnostné opravy;
  • koniec podpory (end of life): žiadne opravy, ani pre bezpečnostné diery.

Stav k 8. novembru 2026, podľa php.net:

VerziaBezpečnostné aktualizácie doStav
8.1 a staršie(skončilo)Žiadne aktualizácie
8.231. decembra 2026Len bezpečnosť, blíži sa koniec
8.331. decembra 2027Len bezpečnosť
8.431. decembra 2028Aktívna
8.531. decembra 2029Aktívna

Stránka na verzii bez aktualizácií beží na softvéri so známymi bezpečnostnými dierami, ktoré sa už neopravujú. Okrem toho sú novšie verzie citeľne rýchlejšie (lekcia 6.3). A wordpress.org odporúča PHP 8.3 alebo vyššie (stav november 2026). Cieľom je teda držať krok každý rok, nie robiť veľký skok raz za päť rokov.

Prečo môže upgrade niečo pokaziť

Každá nová verzia PHP niečo mení. Funkcie, ktoré boli už roky označené ako zastarané (deprecated), sa odstraňujú a pravidlá sa sprísňujú. Niekoľko známych príkladov:

  • PHP 8.0 okrem iného odstránilo create_function() a each(), a mnohé upozornenia sa stali chybami;
  • PHP 8.2 označilo dynamické vytváranie vlastností na objektoch ako zastarané, čo je v starších pluginoch veľmi časté.

Existujú tri druhy hlásení a rozdiel medzi nimi je dôležitý:

HlásenieVýznamDôsledok
Deprecated (zastarané)„Toto ešte funguje, ale v nasledujúcej verzii to zmizne“Nič viditeľné, len upozornenie do budúcnosti
Warning alebo NoticeNiečo nie je úplne v poriadkuVäčšinou nič viditeľné, občas sa niečo správa čudne
Fatal errorPHP sa zastavíBiela stránka alebo „kritická chyba“ (lekcia 5.4)

Samotný WordPress väčšinou drží krok s novými verziami PHP celkom dobre. Riziko spočíva v starých pluginoch a témach, najmä ak dlho neboli aktualizované alebo ide o zákazkové riešenie.

Zistenie aktuálnej verzie

  • Vo WordPresse: Nástroje > Zdravie webovej stránky, karta Info, pod Server: verzia PHP. Zdravie webovej stránky vás upozorní aj vtedy, keď je vaša verzia zastaraná.
  • V paneli hostingu: pri DirectAdmin s CloudLinux v položke Select PHP version (za aktuálnou verziou je uvedené „(current)“).
  • Niekedy to prezradí server v hlavičke X-Powered-By: PHP/8.3.x. Lepšie je, keď tam nie je (lekcia 7.4), ale ak tam je, rýchlo to zistíte.

Pozor: u mnohých poskytovateľov hostingu platí verzia PHP pre celý balík, teda pre všetky stránky v ňom. Stará stránka v tom istom balíku vás môže brzdiť. To je ďalší dôvod, prečo staré stránky upratať alebo im dať vlastný balík.

Upgrade krok za krokom

  1. Najprv aktualizujte. Aktualizujte WordPress, vašu tému a všetky pluginy na aktuálnej verzii PHP. Veľká časť problémov sa tým vyrieši už vopred, pretože autori prispôsobujú svoj kód novým verziám PHP.
  2. Pozrite sa, čo hovoria vaše pluginy. Na stránke pluginu na wordpress.org je uvedená požadovaná verzia PHP; v zozname zmien (changelog) často nájdete „compatible with PHP 8.x“. Plugin, ktorý už roky nebol aktualizovaný (lekcia 5.3), je kandidátom na nahradenie.
  3. Vytvoriť zálohu (lekcia 8.1).
  4. Otestovať v testovacom prostredí (lekcia 8.3). Ak vám hosting umožňuje nastaviť inú verziu PHP pre jednotlivé stránky, nastavte testovacie prostredie na novú verziu. Ak to nejde (jedna verzia pre celý balík), otestujte v testovacom prostredí v inom balíku, lokálne, alebo si vyberte pokojný okamih na produkcii so starou verziou pripravenou na obnovenie.
  5. Prepnutie: vyberte novú verziu vo svojom paneli. Pri DirectAdmin s CloudLinux ju vyberiete v Select PHP version a kliknete na Apply; bez Apply sa nič nezmení.
  6. Okamžitá kontrola: otvorte svoju stránku a prekliknite sa cez niekoľko stránok, vrátane administrácie, formulára a (pri obchode) pokladne. Pozrite sa do chybového logu (lekcia 5.4), či tam nie sú nové riadky PHP Fatal error.
  7. Rozšírenia a nastavenia: u niektorých poskytovateľov hostingu sú rozšírenia PHP a voľby (ako memory_limit) viazané na verziu. Po prepnutí skontrolujte, či sú pri novej verzii nastavené správne.

Keď sa niečo pokazí

  • Fatálna chyba: vráťte sa k starej verzii (u väčšiny poskytovateľov hostingu to ide hneď), aby vaša stránka opäť fungovala. V chybovom logu nájdite, ktorý plugin alebo téma to spôsobili (cesta je uvedená v chybovom hlásení), aktualizujte ich, nahraďte ich alebo požiadajte autora o riešenie. Potom to skúste znova.
  • Len hlásenia deprecated: nie je dôvod vracať sa späť. Je to však upozornenie: pri nasledujúcej verzii sa z toho môže stať chyba. Poznačte si, o ktorý plugin ide.
  • Zákazkové riešenie, ktoré prestalo fungovať: stará stránka vytvorená webovým vývojárom môže obsahovať kód, ktorý už nikto neudržiava. Vtedy musí tento kód upraviť niekto, kto rozumie PHP. Niektorí poskytovatelia hostingu, vrátane WebOké, ponúkajú, že to za vás urobia.

Nenechávajte stránku „natrvalo“ na starej verzii len preto, že jeden plugin nestíha. To je len odkladanie problému, ktorý sa každým rokom zväčšuje.

Väčšia istota vopred

Pre tých, ktorí chcú ísť ďalej: pomocou PHP_CodeSniffer a pravidiel PHPCompatibilityWP môžete nechať skontrolovať kód svojich pluginov a tém na veci, ktoré nebudú fungovať v novšej verzii PHP, bez nutnosti stránku spúšťať. Nájde to veľa, ale nie všetko. Testovanie v testovacom prostredí zostáva potrebné.

V praxi: ako to vyzerá v paneli

Ako príklad používame DirectAdmin s CloudLinux. V cPanel sa to často volá MultiPHP Manager alebo Select PHP Version, v Plesk PHP Settings.

  1. Otvorte Select PHP version (pod Extra Programma's).
  2. Kliknite na verziu pri PHP version, vyberte novú verziu a kliknite na Apply.
  3. Skontrolujte karty Extensions a Options pre novú verziu.
  4. Skontrolujte svoju stránku a chybový log. Ak niečo nefunguje, vyberte starú verziu a Apply.

Zhrnutie

  • Každá verzia PHP dostáva dva roky aktívnej podpory a dva roky len bezpečnostnej podpory; potom už žiadne opravy. K 8. novembru 2026 verzia 8.1 už nedostáva nič a 8.2 ešte do konca roka 2026.
  • Upgrade najčastejšie pokazí staré pluginy a témy; deprecated je upozornenie, fatálna chyba zastaví stránku.
  • Poradie: aktualizovať všetko, skontrolovať pluginy, záloha, otestovať v testovacom prostredí, prepnúť, okamžite skontrolovať.
  • Ak sa niečo pokazí, vráťte starú verziu, nájdite vinníka v chybovom logu a vyriešte to; nezostávajte trvalo na starej verzii.
  • U mnohých poskytovateľov hostingu platí verzia pre celý balík; upracte staré stránky.

Kvíz

1. Čo znamená, že verzia PHP dostáva „len bezpečnosť“?



2. Po upgrade PHP sú v chybovom logu len hlásenia „Deprecated“. Čo urobíte?



3. Aké je správne poradie pri upgrade PHP?



4. Máte dve stránky v jednom balíku. Nová zvláda PHP 8.4, stará sa zastaví nad PHP 7.4. Aký je problém a riešenie?



Úloha

Úloha A8.4: Je vaša verzia PHP ešte podporovaná? Pozrite sa v Nástroje > Zdravie webovej stránky (karta Info, Server), ktorú verziu PHP vaša stránka používa, a zadajte ju spolu s vašou doménou. Program porovná verziu so zoznamom podporovaných verzií na php.net: zelená pri aktívnej podpore, oranžová pri len bezpečnosti, červená ak už nedostáva žiadne aktualizácie. Ak váš server zobrazuje verziu v hlavičke X-Powered-By, program skontroluje aj to, či sa zhoduje s tým, čo ste zadali (a upozorní vás, že túto hlavičku je lepšie skryť, lekcia 7.4).

Úloha A8.4: Je vaša verzia PHP ešte podporovaná?



Čo vyplníte a čo nájdeme, neukladáme. Váš prehliadač si pamätá vaše odpovede a to, či ste úlohu splnili. Po prihlásení si v sekcii Moje kurzy uchovávame iba to, že úloha bola (takmer) správne vyriešená; aj to tam môžete odstrániť.

Úloha D8.4: Plán aktualizácie. Napíšte plán upgrade vašej stránky na najnovšiu verziu PHP, ktorú ponúka váš poskytovateľ hostingu. Vyplňte: aktuálnu a cieľovú verziu, ktoré pluginy a témy máte a či podporujú cieľovú verziu (vrátane toho, kde ste si to prečítali), kde budete testovať (testovacie prostredie, iný balík, lokálne), ako sa viete vrátiť späť a kedy to urobíte. Ak môžete, vykonajte to a poznačte si, čo sa objavilo v chybovom logu.

Úloha D8.4: Plán aktualizácie

Túto úlohu vykonávate sami, nikto ju nekontroluje. Odškrtnite, čo ste urobili, a označte úlohu ako splnenú.



Vaše zaškrtnutia a poznámky zostávajú iba v tomto prehliadači, nikam ich neposielame. Po prihlásení si v sekcii Moje kurzy uchovávame iba to, že ste úlohu splnili.

Čítajte ďalej

Tieto články popisujú postup v paneloch WebOké; v iných paneloch to funguje podobne.

Chvíľu strpenia…

Nastavte svoje domény

Pri každej doméne nastavte nameservery, prepojenie s hostingom a to, kto bude jej vlastníkom.

Načítavajú sa vaše domény…