A WordPress automatikus frissítés funkciójának kikapcsolása

A háttérben lefutó automatikus frissítéseket a WordPress 3.7 fejlesztői vezették be biztonsági és kényelmi szempontoktól vezérelve. Alapértelmezett esetben csak a karbantartási és biztonsági frissítések, valamint a nyelvi fájlok frissítése van engedélyezve. De nem csak a rendszer, hanem a nyelvi fájlok, bővítmények is frissülhetnek anélkül, hogy foglalkoznánk velük.

Ez olyan szempontból nagyon rossz, hogy adott esetben megboríthatja az egész oldal működését. Vegyük csak ezt a példát: kész káoszt okozna egy éles weboldalon, ha a leírt esetben nem kontrollálnánk a frissítést.

Szerencsére gondoltak erre a fejlesztők, és adnak lehetőséget a funkció kikapcsolására. Sőt! Választhatunk is, hogy mit akarunk automatikusan frissíteni, és mit nem.

Az észrevétlenül lefutó automatikus frissítéseknek 4 fajtája van:

  1. WordPress frissítés
  2. Bővítmény frissítés
  3. Kinézet frissítés
  4. Nyelvi fájlok frissítése

1. WordPress frissítés

Három altípusa van:

  • Fejlesztői frissítések
  • Kisebb frissítések (ilyenek a karbantartó és biztonsági frissítések, pl.: 3.7 verzióról 3.7.1-re való frissítés)
  • WordPress főverzió frissítések (pl.: 3.6(.x) verzióról 3.7(.x) verzióra)

Alapértelmezés szerint csak a kisebb frissítések, illetve a nyelvi fájlok frissítése van engedélyezve.

WP_AUTO_UPDATE_CORE

A főverzió-frissítés és a fejlesztői verziók automatikus frissítéséhez meg kell ismerkednünk a WP_AUTO_UPDATE_CORE funkcióval. 3 módon lehet beállítani, mindhárom beállítás esetén más tulajdonsággal fog rendelkezni ez a funkció.

  • Ha az értéke true – a fejlesztői, kisebb és főverziók automatikus frissítése engedélyezve lesz.
  • Ha az értéke false – a fejlesztői, kisebb és főverziók automatikus frissítése nem lesz engedélyezve.
  • Ha az értéke minor – akkor a kisebb automatikus frissítések engedélyezve lesznek, míg a főverziók, és fejlesztői verziók frissítései nem fognak automatikusan lefutni.

Ha ki szeretnéd válogatni, hogy milyen automatikus frissítéseket engedélyezel, és mit nem, akkor 3 ún. filtert is segítségül hívhatsz:

  • allow_dev_auto_core_updates
  • allow_minor_auto_core_updates
  • allow_major_auto_core_updates

Ezeket a __return_true vagy __return_false értékekkel tudod engedélyezni vagy tiltani.

Példák:

A fejlesztői verziók automatikus frissítéseinek engedélyezése:
#1-es kód (a kinézet functions.php fájljába kell tenni)

A kisebb frissítések automatikus lefutásának tiltása:
#2-es kód (a kinézet functions.php fájljába kell tenni)

A nagyobb frissítések automatikus lefutásának engedélyezése:
#3-as kód (a kinézet functions.php fájljába kell tenni) vagy #3B kód wp-config.php fájlban való elhelyezésével

2-3. Bővítmény és kinézet frissítés

Alapértelmezésben ezek automatikus lefuttatása ki van kapcsolva. Az engedélyezésükhoz a auto_update_$type filtert kell használni. A $type részt lehet vagy “plugin” vagy “theme” szóval helyettesíteni.

Példák:

A bővítmények automatikus frissítésének engedélyezése:
#4-es kód (a kinézet functions.php fájljába kell tenni)

A kinézetek automatikus frissítésének engedélyezése:
#5-ös kód (a kinézet functions.php fájljába kell tenni)

4. Fordítások frissítése

Hasonlóan a kisebb frissítésekhez, ez a funkció is alapértelmezett esetben engedélyezve van.

A nyelvi fájlok automatikus frissítésnek tiltása:
#6-os kód (a kinézet functions.php fájljába kell tenni)

Az automatikus frissítések funkció kikapcsolása

A WordPress fejlesztőinek tudatos és átgondolt döntése volt, hogy az új verzióba betették az automatikus frissítést a karbantartó, biztonsági frissítésekkel, illetve a nyelvi fájlokat illetően. Szerintük ez a funkció garantálja, hogy a weboldal naprakész és biztonságos legyen, ezért nem javasolják ennek a funkciónak a kikapcsolását. Ezzel szemben én azt mondom, hogy kapcsoljuk ki ezt a funkciót, és amikor megjelenik új verzió, akkor az eddig megszokott módon végezzük el a frissítést. Így elkerülhetjük azt, hogy – extrém esetben – tudtunk nélkül összeomlik a weboldalunk. Illetve így garantált, hogy a frissítés előtt tudunk biztonsági mentést készíteni a weboldalunk aktuális állapotáról.

Fő frissítések automatikus lefutásának kikapcsolása
A auto_update_$type filterrel tudjuk állítani. Ha a $type szót kicseréljük erre: “core”.

Az alap WordPress frissítések (ld. 1-es pont felül) kikapcsolása:
#7-es kód (a kinézet functions.php fájljába kell tenni)

Minden automatikus frissítés kikapcsolása

Ez minden fajtáját kikapcsolja az automatikus frissítéseknek. Beleértve a WordPress, bővítmények, kinézetek, nyelvi fájlok automatikus frissítését is.

Két módon (bármelyiket választod, a végeredmény ugyanaz lesz: nem fog lefutni egy automatikus frissítés sem) az összes automatikus frissítést deaktiválni:

wp-config.php fájlban el kell helyezni ezt a sort:
#8-as kód (én ezt használom)

Megj.: Ha a kódban ezen felül el van helyezve a “WP_AUTO_UPDATE_CORE” kód ezzel az értékkel: “minor”, akkor ez felül fogja írni a 8-as kódot, és le fognak futni a kisebb frissítések. Ezt pl. cPaneles szerver automatikusan is beleírhatja wp-config.php fájlba! Ekkor ilyen megjegyzés van mellette:

“This setting is required to make sure that WordPress updates can be properly managed in WordPress Toolkit. Remove this line if this WordPress website is not managed by WordPress Toolkit anymore.”

A kinézet functions.php fájljába kell elhelyezni ezt a kódot, ahogy minden – jelen cikkben elérhető – “add_filter” kezdetű kódot:
#9-es kód

Mire figyelj nagyon?
Egy funkcióhoz ne adj több, egymásnak ellent mondó utasítást.

Nem fog lefutni az automatikus frissítés, ha:

  • WP_AUTO_UPDATE_CORE értéke hamis (false)
  • DISALLOW_FILE_MODS értéke igaz (true)
  • AUTOMATIC_UPDATER_DISABLED értéke igaz
  • Ha nem fut a tárhelyen a cron funkció.

További infók:

“A WordPress automatikus frissítés funkciójának kikapcsolása” bejegyzéshez 2 hozzászólás

  1. Nagyon jó a cikk leírása, részletes alapos de javasolnék egyszeribb megoldást mint a forráskódot hackelgetni

    javaslom a Easy Updates Manager bővítményt inkább erre a célra.
    Persze ez csak egy javaslat. Nekem bevált mivel vannak olyan bővítmények amik frissítése kritikus ezzel pedig kezelni tiltani tudom mi az aminek engedélyezett a frissítése és mi az aminek TILOS.

    Hasznos egyedileg testre szabott sablonok és bővítmények esetében egyaránt.

  2. Köszönöm a kiegészítést! A bővítményt hallomásból ismerem, már meg szerettem volna nézni, csak nem jutottam még odáig.

    Ui.: A cikk írásakor (~5 éve) szerintem még nem is létezett az Easy Updates Manager bővítmény. 🙂

Szólj hozzá!

A honlap cookie-kat használ. Részletek

A hatályos jogszabályok alapján kötelező tájékoztatni a látogatókat, hogy a weboldal ún. cookie-kat használ és tárol a számítógépen. Ha ezt nem szeretnéd, akkor a böngésződ megfelelő beállításait használva tiltsd le a cookie-k tárolását, vagy zárd be a weboldalt. Mik azok a cookie-k? Hogyan tudod tiltani a tárolásukat? Hogyan kezelem a személyes adatokat? Mindenre választ ad a részletes adatvédelmi és cookie tájékoztatóm.

Bezárás