Přejít na obsah

Nastavení cookies

Zvolte, které druhy cookies povolíte. Svou volbu můžete kdykoli změnit přes Nastavení cookies v dolní části každé stránky. Prohlášení o ochraně osobních údajů

Nezbytné

Vždy zapnuté

Potřebné pro přihlášení, uchování košíku a zapamatování vašich voleb. Jsou vždy zapnuté.

Které cookies?
  • weboke_sessie, weboke_klant, weboke_remember: vaše relace a trvalé přihlášení
  • weboke_basket: váš košík
  • wkBtwIncl: zobrazení cen s DPH nebo bez DPH
  • wok_cookies: vaše volba cookies, 12 měsíců

Měří, která reklama vede k návštěvě nebo objednávce, abychom neplatili za reklamy, které nic nepřinášejí.

Které cookies?
  • Google Ads přes Google Tag Manager (_gcl_au, _gcl_aw), až 90 dní
  • OpenAI Ads, reklamy v ChatGPT
  • wok_aff: partner, který vás k nám doporučil (partnerský program), 60 dní

4,6

Země a jazyk

Každá země má vlastní web s cenami a DPH dané země.

Zobrazit

Verze PHP a jejich upgrady

Modul 8: Zálohy, testovací prostředí a aktualizace PHP · Doba čtení: 10 minut

Cíl lekce: Po této lekci budete umět bezpečně připravit, provést a v případě potřeby vrátit zpět upgrade PHP.

Klíčové pojmy: životní cyklus PHP (aktivní podpora, pouze bezpečnost, konec podpory), kompatibilita WordPressu, šablony a pluginů, zastaralé (deprecated), varování, fatální chyba, Stav webu, chybový log, testovací prostředí (staging), obnovení zálohy, nechat provést upgrade

Proč na verzích PHP záleží

WordPress, Vaše šablona a Vaše pluginy jsou napsané v PHP (lekce 1.2). Každý rok vychází nová verze PHP (8.3, 8.4, 8.5, ...). Každá verze je udržovaná po pevně danou dobu:

  • aktivní podpora: dva roky oprav chyb a bezpečnostních oprav;
  • pouze bezpečnost: poté ještě dva roky pouze bezpečnostní opravy;
  • konec podpory (end of life): žádné další opravy, ani u bezpečnostních děr.

Stav k 8. listopadu 2026 podle php.net:

VerzeBezpečnostní aktualizace doStav
8.1 a starší(uplynulo)Žádné další aktualizace
8.231. prosince 2026Pouze bezpečnost, blíží se konec
8.331. prosince 2027Pouze bezpečnost
8.431. prosince 2028Aktivní
8.531. prosince 2029Aktivní

Web na verzi bez aktualizací běží na softwaru se známými bezpečnostními dírami, které se už neopravují. Novější verze jsou navíc znatelně rychlejší (lekce 6.3). A wordpress.org doporučuje PHP 8.3 nebo vyšší (stav k listopadu 2026). Cílem je tedy udržovat krok každý rok, ne dělat jednou za pět let velký skok.

Proč může upgrade něco rozbít

Každá nová verze PHP něco mění. Funkce, které byly roky označené jako zastaralé (deprecated), se odstraňují a pravidla se zpřísňují. Několik známých příkladů:

  • PHP 8.0 odstranilo mimo jiné create_function() a each() a mnoho varování se změnilo na chyby;
  • PHP 8.2 označilo dynamické vytváření vlastností u objektů jako zastaralé, což se hojně vyskytuje ve starších pluginech.

Existují tři druhy hlášení a rozdíl mezi nimi je důležitý:

HlášeníVýznamDůsledek
Deprecated (zastaralé)„Toto ještě funguje, ale v příští verzi to zmizí“Nic viditelného, varování do budoucna
Warning nebo NoticeNěco úplně nesedíObvykle nic viditelného, někdy se nějaká část chová divně
Fatal errorPHP se zastavíBílá stránka nebo „kritická chyba“ (lekce 5.4)

WordPress sám obvykle drží krok s novými verzemi PHP dobře. Riziko spočívá ve starých pluginech a šablonách, zejména pokud dlouho nebyly aktualizované nebo jde o zakázkové řešení.

Jak zjistit svoji aktuální verzi

  • Ve WordPressu: Nástroje > Stav webu, záložka Informace, pod Server: verze PHP. Stav webu Vás také upozorní, pokud je Vaše verze zastaralá.
  • Ve Vašem hostingovém panelu: v DirectAdmin s CloudLinux v položce Select PHP version (s „(current)“ za aktuální verzí).
  • Někdy to server prozradí v hlavičce X-Powered-By: PHP/8.3.x. Lépe ne (lekce 7.4), ale pokud tam je, snadno to zjistíte.

Pozor: u mnoha hosterů platí verze PHP pro celý balíček, tedy pro všechny weby v něm. Starý web ve stejném balíčku Vám tak může bránit v upgradu. To je další důvod, proč staré weby uklidit nebo jim dát vlastní balíček.

Upgrade krok za krokem

  1. Nejprve aktualizujte. Aktualizujte WordPress, Vaši šablonu a všechny pluginy na aktuální verzi PHP. Velká část problémů tím zmizí, protože tvůrci přizpůsobují svůj kód novým verzím PHP.
  2. Podívejte se, co říkají Vaše pluginy. Na stránce pluginu na wordpress.org je uvedená požadovaná verze PHP; v changelogu často „compatible with PHP 8.x“. Plugin, který už roky nebyl aktualizovaný (lekce 5.3), je kandidátem na nahrazení.
  3. Vytvořte zálohu (lekce 8.1).
  4. Otestujte v testovacím prostředí (staging) (lekce 8.3). Pokud Vám hoster umožní nastavit jinou verzi PHP pro každý web, nastavte testovací prostředí na novou verzi. Pokud to nejde (jedna verze pro celý balíček), otestujte v testovacím prostředí v jiném balíčku, lokálně, nebo vyberte klidný okamžik na produkci se starou verzí připravenou k obnovení.
  5. Přepnutí: vyberte novou verzi ve svém panelu. V DirectAdmin s CloudLinux ji vyberete v Select PHP version a kliknete na Apply; bez Apply se nic nezmění.
  6. Okamžitě zkontrolujte: otevřete svůj web a proklikejte několik stránek, včetně administrace, formuláře a (u obchodu) pokladny. Podívejte se do chybového logu (lekce 5.4) na nové řádky PHP Fatal error.
  7. Rozšíření a nastavení: u některých hosterů jsou PHP rozšíření a volby (jako memory_limit) vázané na verzi. Po přepnutí zkontrolujte, zda jsou u nové verze nastavené správně.

Když se něco pokazí

  • Fatální chyba: vraťte starou verzi (u většiny hosterů to jde okamžitě), aby web zase fungoval. V chybovém logu najděte, který plugin nebo šablona to byla (cesta je uvedená v chybovém hlášení), aktualizujte ji, nahraďte ji nebo požádejte autora o řešení. Poté to zkuste znovu.
  • Pouze hlášení deprecated: žádný důvod k návratu. Je to ale varování: u příští verze se z toho může stát chyba. Poznamenejte si, o který plugin jde.
  • Zakázkové řešení, které přestalo fungovat: starý web vytvořený webovým vývojářem může obsahovat kód, který už nikdo neudržuje. Pak je potřeba, aby ho upravil někdo, kdo rozumí PHP. Někteří hosteři, včetně WebOké, nabízejí, že to za Vás udělají.

Neponechávejte web „navždy“ na staré verzi jen proto, že jeden plugin nestíhá. To je jen odklad problému, který se každým rokem zvětšuje.

Větší jistota předem

Pro ty, kdo chtějí jít dál: pomocí PHP_CodeSniffer a pravidel PHPCompatibilityWP můžete nechat zkontrolovat kód svých pluginů a šablon na věci, které nebudou fungovat v novější verzi PHP, aniž byste web museli spouštět. Najde to mnoho, ale ne vše. Testování v testovacím prostředí (staging) je stále potřeba.

V praxi: jak to vypadá v panelu

Jako příklad používáme DirectAdmin s CloudLinux. V cPanelu se to často jmenuje MultiPHP Manager nebo Select PHP Version, v Plesku PHP Settings.

  1. Otevřete Select PHP version (pod Extra Programy).
  2. Klikněte na verzi u PHP version, vyberte novou verzi a klikněte na Apply.
  3. Zkontrolujte záložky Extensions a Options pro novou verzi.
  4. Zkontrolujte svůj web a chybový log. Pokud něco nefunguje, vyberte starou verzi a Apply.

Shrnutí

  • Každá verze PHP dostává dva roky aktivní podpory a dva roky pouze bezpečnostních oprav, poté už žádné opravy. K 8. listopadu 2026 verze 8.1 už nedostává nic a 8.2 ještě do konce roku 2026.
  • Upgrade láme hlavně staré pluginy a šablony; deprecated je varování, fatální chyba web zastaví.
  • Pořadí: aktualizovat vše, zkontrolovat pluginy, záloha, otestovat v testovacím prostředí (staging), přepnout, hned zkontrolovat.
  • Pokud se něco pokazí, vraťte starou verzi, najděte viníka v chybovém logu a vyřešte to; nezůstávejte trvale na staré verzi.
  • U mnoha hosterů platí verze pro celý balíček; staré weby uklízejte.

Kvíz

1. Co znamená, že verze PHP dostává „pouze bezpečnost“?



2. Po upgradu PHP jsou v chybovém logu jen hlášení „Deprecated“. Co uděláte?



3. Jaké je správné pořadí pro upgrade PHP?



4. Máte dva weby v jednom balíčku. Nový zvládá PHP 8.4, starý skončí nad PHP 7.4. V čem je problém a jaké je řešení?



Úkol

Úkol A8.4: Je Vaše verze PHP ještě podporovaná? V Nástroje > Stav webu (záložka Informace, Server) zjistěte, kterou verzi PHP Váš web používá, a zadejte ji spolu se svou doménou. Program porovná verzi se seznamem podporovaných verzí z php.net: zeleně při aktivní podpoře, oranžově při pouze bezpečnosti, červeně pokud už nepřicházejí žádné aktualizace. Pokud Váš server ukazuje verzi v hlavičce X-Powered-By, program zkontroluje také, zda odpovídá tomu, co jste zadali (a upozorní Vás, že je lepší tuto hlavičku skrýt, lekce 7.4).

Úkol A8.4: Je Vaše verze PHP ještě podporovaná?



Co vyplníte a co zjistíme, neukládáme. Váš prohlížeč si pamatuje Vaše odpovědi a to, zda jste úkol splnili. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol měli (téměř) správně; i to tam můžete odstranit.

Úkol D8.4: Plán upgradu. Napište plán upgradu svého webu na nejnovější verzi PHP, kterou nabízí Váš hoster. Vyplňte: aktuální a cílovou verzi, jaké máte pluginy a šablony a zda podporují cílovou verzi (s odkazem, kde jste to zjistili), kde budete testovat (testovací prostředí, jiný balíček, lokálně), jak se dá vrátit zpět a kdy to provedete. Pokud můžete, proveďte to a poznamenejte si, co se objevilo v chybovém logu.

Úkol D8.4: Plán upgradu

Tento úkol provádíte sami; nikdo ho nekontroluje. Odškrtněte, co jste udělali, a označte úkol jako splněný.



Vaše zaškrtnutí a poznámky zůstávají pouze v tomto prohlížeči; nikam je neposíláme. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol splnili.

Další čtení

Tyto články popisují kroky v panelech WebOké; v jiných panelech fungují obdobně.

Chvíli strpení…

Nastavení vašich domén

U každé domény nastavte jmenné servery, propojení s hostingem a to, kdo bude držitelem.

Načítání vašich domén…