Od WordPressu 3.7 je možné automaticky aktualizovat jádro, pluginy i šablony. V tomto návodu si ukážeme a vysvětlíme, jak tyto aktualizace spravovat a jak fungují. Zároveň si ukážeme několik příkladů nastavení automatických aktualizací ve WordPressu.
Výchozí nastavení automatických aktualizací
Ve výchozím nastavení je od WordPressu verze 3.7 nastavena automatická aktualizace při nových, menších bezpečnostních aktualizacích. Jednou z takových je i aktualizace 4.2.1., která opravuje zranitelnost Zero Day XSS.
Menší aktualizace WordPressu jsou označeny v pořadí třetím číslem. Pokud máte nainstalovaný WordPress 4.2, pak aktualizace na 4.2.1 je považována za malou (těmto verzím se říká minoritní nebo také vedlejší) a ve výchozím nastavení dojde k automatické aktualizaci. Nicméně vyjde-li WordPress 4.3 budete na něj muset ve výchozím nastavení aktualizovat ručně, těmto verzím se říká hlavní.
Poznámka: Jestli používáte verzovací systém, tak WordPress automatické aktualizace sám deaktivuje. V současné době WordPress hledá Subversion, Git, Mercurial nebo Bazaar.
Jak aktivovat automatické aktualizace hlavních verzí WordPressu
Pokud chcete, aby byl WordPress automaticky aktualizován i na hlavní verzi, musíte si otevřít wp-config.php a přidat do něj následující řádku:
define('WP_AUTO_UPDATE_CORE', true);
Jak aktivovat automatické aktualizace pluginů
Jestliže chcete, aby WordPress automaticky aktualizoval všechny instalované pluginy, musíte si otevřít functions.php aktuální šablony a přidat do něj následující řádku:
add_filter( 'auto_update_plugin', '__return_true' );
Jak aktivovat automatické aktualizace šablon
Pokud chcete aktualizovat automaticky nainstalované šablony, musíte si otevřít functions.php aktuální šablony a přidat do něj následující řádku:
add_filter( 'auto_update_theme', '__return_true' );
Poznámka: Aktualizace šablon bude fungovat pouze, pokud se šablona nachází v oficiálním repozitáři.
Deaktivace aktualizací jádra WordPressu, ale povolení aktualizace šablon a pluginů
Funkce můžete libovolně kombinovat. Přejete-li si deaktivovat aktualizace jádra WordPressu, ale stále nechat probíhat automatické aktualizace šablon a pluginů, vložte do wp-config.php následující řádek:
define( 'WP_AUTO_UPDATE_CORE', false );
A do functions.php aktuální šablony vložte:
add_filter( 'auto_update_plugin', '__return_true' );
add_filter( 'auto_update_theme', '__return_true' );
Jak deaktivovat automatické aktualizace
Pokud z nějakého důvodu nechcete, aby se WordPress automaticky aktualizoval, můžete všechny aktualizace zakázat následujícím kódem vloženým do wp-config.php.
define( 'AUTOMATIC_UPDATER_DISABLED', true );
Takto zakážete aktualizace jádra, pluginů i šablon bez ohledu na další nastavení.
Osobně však doporučuji vždy aktualizovat na nejnovější verze pluginů, šablon i samotného WordPress jádra.
Zdravím,
v článku máte chybu, kód “add_filter( ‘auto_update_plugin’, ‘__return_true’ );” se rozhodně nesmí přidávat do wp-config.php
Hned po vložení mi to shodilo web (PHP chybová hláška).
A také viz oficiální dokumentace WordPressu:
“Do not add add_filter() calls in wp-config.php – causes conflicts with WP-CLI and possibly other problems.”
Díky za upozornění, tam samozřejmě mělo být functions.php šablony. Článek jsem upravil.
Ahoj,
lze nějak dosáhnout toho aby byl jeden konkrétní plugin při automatické aktualizaci vynechán?
Ahoj,
lze ho upravit tak, že změníš jeho verzi na nějaké vysoké číslo. Při kontrole aktualizace to pak najde nižší a nenabídne možnost aktualizovat.
Zdravím,
netušíte někdo proč se mi najednou jeden web začal aktualizovat na alpha verze WP? Nejsem si vědom, že bych to někde zapínal, ale najednou se mi aktualizuje na divné apha verze a píše “You are using a development version of WordPress. You can update to the latest nightly build automatically:”
Webu to zjevně nijak nevadí, ale přeci jen se mi nechce jen na night buildech.
Díky
Ahoj,
mě se to teda nestalo, ale hlásilo to více uživatelů. Jakou verzi ten WP má? 4.7.4? Tak nějak si pořád myslím, že chyba byla na straně WordPress.org
Jojo 4.7.4 a cpe tam 4.7.5-alpha-40547. A do toho Wordfence řve, že Unknown WordPress core version: 4.7.5-alpha-40547. Ale taky mi to připadá jako chyba WordPressu, protože do nastavení webu jsem nešahal mnoho měsíců. Naštěstí to je spíš nepodstatný web, tak uvidíme, jestli se to srovná samo.
Dá se zabránit aktualizacím nějakého konkrétního pluginu? I ručním…
Ano, můžete buď upravit verzi pluginu na vyšší než je aktuálně vydaná nebo využít nějaký plugin, například https://wordpress.org/plugins/stops-core-theme-and-plugin-updates/