Tovább a tartalomhoz

Frissítések képességei

A mainwp-updates kategória 14 képessége: frissítések listázása, előnézet és megerősítés, webhelyenkénti frissítés, mellőzött frissítések és tiltások.

A mainwp-updates kategória 14 képessége a WordPress magjának, a bővítményeknek, a témáknak és a fordításoknak a frissítéseit kezeli a teljes hálózaton. Segítségükkel kilistázhatod az elérhető frissítéseket, előnézetet kérhetsz, végrehajthatod a frissítést, és kezelheted a mellőzött frissítéseket.

Megerősítés és frissítési tiltások (6.3-tól)

Szekció neve “Megerősítés és frissítési tiltások (6.3-tól)”

A run-updates-v1, az update-all-v1 és a négy update-site-* képesség vagy dry_run: true (előnézet), vagy confirm: true (végrehajtás) értéket kér. Ha egyik sincs a hívásban, a válasz mainwp_confirmation_required hiba, HTTP 400-zal. A két jelzőt ne állítsd egyszerre true-ra.

A helyes menet:

  1. Kérj előnézetet dry_run: true értékkel.
  2. Nézd át a visszaadott webhelyeket és a frissítési tervet.
  3. Küldd el ugyanazt a kijelölést confirm: true értékkel.

A közvetlen Abilities API-kérés ezeket a jelzőket használja. Az MCP-szerver külön, egyszeri megerősítő tokent használ, amely az MCP megerősítési folyamatához tartozik.

Az előnézet válaszában ezek a mezők vannak: dry_run, would_affect, count, warnings és errors. A megerősített, azonnali válasz dry_run: false értéket, skipped tömböt és summary.total_skipped számot ad. Mindig nézd meg az errors és a skipped tömböt is: a sikeres HTTP-válasz nem jelenti azt, hogy minden frissítés települt. A sorba állított válaszban feladatazonosító van, amellyel az állapot lekérdezhető (lásd a Kötegelt műveletek fejezetet).

Ezek a képességek tiszteletben tartják a webhelyszintű és a globális frissítési tiltásokat. A tiltás miatt blokkolt elemek kihagyottként (skipped) jelennek meg, a sorba állított feladatok pedig végrehajtáskor újra ellenőrzik a tiltásokat, a webhelyhozzáférést és a feladat tulajdonosának műveleti jogait. A fordítások frissítése a webhely fordításmellőzési beállítását is figyelembe veszi.

Frissítési tiltást az „ignore” képességekkel adhatsz hozzá. A webhely saját tiltásait az új mainwp/unignore-site-updates-v1 képesség távolítja el, előnézettel vagy megerősítéssel. A régi action: unignore és action: remove megoldások hibát adnak, és erre a képességre irányítanak.

Képesség Metódus Mire jó
mainwp/list-updates-v1 GET Elérhető frissítések az összes webhelyen
mainwp/get-site-updates-v1 GET Egy webhely elérhető frissítései
mainwp/run-updates-v1 POST Frissítések végrehajtása kijelölt webhelyeken
mainwp/update-all-v1 POST Minden elérhető frissítés végrehajtása
mainwp/update-site-core-v1 POST A WordPress magjának frissítése egy webhelyen
mainwp/update-site-plugins-v1 POST Bővítmények frissítése egy webhelyen
mainwp/update-site-themes-v1 POST Témák frissítése egy webhelyen
mainwp/update-site-translations-v1 POST Fordítások frissítése egy webhelyen
mainwp/list-ignored-updates-v1 GET Mellőzött frissítések listája
mainwp/set-ignored-updates-v1 POST Elem hozzáadása a webhely mellőzött frissítései közé
mainwp/ignore-site-core-v1 POST Magfrissítési tiltás hozzáadása
mainwp/ignore-site-plugins-v1 POST Bővítményfrissítési tiltások hozzáadása
mainwp/ignore-site-themes-v1 POST Témafrissítési tiltások hozzáadása
mainwp/unignore-site-updates-v1 POST Egy webhely saját frissítési tiltásainak előnézete vagy eltávolítása

Az elérhető frissítések az összes webhelyen. Csak olvas, GET.

Terminál
curl -u 'admin:xxxx' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/list-updates-v1/run'
Név Típus Kötelező Alapérték Leírás
site_ids_or_domains tömb nem [] Szűrés meghatározott webhelyekre
types tömb nem [] Szűrő: core, plugins, themes, translations
page egész nem 1 Oldalszám
per_page egész nem 50 Elemek oldalanként (legfeljebb 200)

A válasz az updates tömb (site_id, site_url, site_name, type, slug, name, current_version, new_version), a summary (típusonkénti darabszámok: core, plugins, themes, translations, total) és a lapozási adatok.

Egy webhely elérhető frissítései. GET.

Terminál
curl -G -u 'admin:xxxx' \
--data-urlencode 'input_json={"site_id_or_domain":1}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/get-site-updates-v1/run'
Név Típus Kötelező Alapérték Leírás
site_id_or_domain egész vagy szöveg igen Webhelyazonosító vagy tartomány
types tömb nem [] Szűrő: core, plugins, themes, translations

A válasz tartalmazza a webhely adatait, az updates tömböt, a summary összesítőt, és a rollback_items objektumot (plugins, themes).

Frissítéseket hajt végre a webhelyeken. A 200-nál több webhelyet érintő műveletek háttérfeladatként futnak. POST.

Terminál
# Egy bővítményfrissítés előnézete kijelölt webhelyeken
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"site_ids_or_domains":[1,2,3],"types":["plugins"],"specific_items":["akismet/akismet.php"],"dry_run":true}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/run-updates-v1/run'
# Ugyanaz a kijelölés végrehajtva az előnézet átnézése után
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"site_ids_or_domains":[1,2,3],"types":["plugins"],"specific_items":["akismet/akismet.php"],"confirm":true}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/run-updates-v1/run'
Név Típus Kötelező Alapérték Leírás
site_ids_or_domains tömb nem [] A frissítendő webhelyek; üresen mindegyik, amelyen van frissítés
types tömb nem [] Frissítéstípusok: core, plugins, themes, translations
specific_items tömb nem [] Meghatározott elemek azonosítói
dry_run logikai előnézethez false true: előnézet; ne kombináld a confirm jelzővel
confirm logikai végrehajtáshoz false true: végrehajtás az előnézet átnézése után

Az azonnali, megerősített válasz:

{
"dry_run": false,
"updated": [
{
"site_id": 1,
"site_url": "https://site1.example.com",
"site_name": "1. webhely",
"type": "plugin",
"slug": "akismet/akismet.php",
"name": "Akismet",
"old_version": "5.3",
"new_version": "5.3.1"
}
],
"errors": [],
"summary": {
"total_updated": 1,
"total_errors": 0,
"sites_updated": 1,
"total_skipped": 0
},
"skipped": []
}

Az összes elérhető frissítés végrehajtása a webhelyeken, beleértve a WordPress magját is. Termelési környezetben óvatosan használd, és előbb próbáld ki tesztwebhelyen. POST.

Terminál
# Minden frissítés az összes webhelyen
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"confirm":true}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/update-all-v1/run'
Név Típus Kötelező Alapérték Leírás
site_ids_or_domains tömb nem [] A frissítendő webhelyek; üresen az összes
dry_run logikai előnézethez false true: előnézet
confirm logikai végrehajtáshoz false true: végrehajtás

A válasz szerkezete megegyezik a run-updates-v1 válaszáéval.

A négy webhelyszintű képesség mindegyike POST, és ugyanazt a dry_run / confirm párost várja.

Képesség Mit frissít Bemenet Válasz
mainwp/update-site-core-v1 A WordPress magját site_id_or_domain updated (egy objektum: type: core, slug: wordpress, old_version, new_version), skipped, summary.total_skipped
mainwp/update-site-plugins-v1 A bővítményeket site_id_or_domain, slugs (nem kötelező; üresen az összes) updated, errors, skipped, summary
mainwp/update-site-themes-v1 A témákat site_id_or_domain, slugs (nem kötelező; üresen az összes) updated, errors, skipped, summary
mainwp/update-site-translations-v1 A fordításokat site_id_or_domain, slugs (nem kötelező; üresen az összes elérhető) updated, errors, skipped, summary

Példa meghatározott bővítmények frissítésére:

Terminál
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"site_id_or_domain":1,"slugs":["akismet/akismet.php"],"confirm":true}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/update-site-plugins-v1/run'

Ha a slugs tömböt kihagyod, az összes bővítmény frissül. Mindegyik képesség esetén érdemes előbb dry_run: true értékkel előnézetet kérni.

A mellőzöttként megjelölt frissítések listája. GET. Két nem kötelező bemenete van: page (alapérték 1) és per_page (alapérték 50). A válasz az ignored tömb (site_id, site_url, site_name, type, slug, name, ignored_version) és a total.

Elemet ad egy webhely mellőzött frissítései közé. A 6.3-tól itt csak az ignore művelet használható, a tiltás eltávolítására az unignore-site-updates-v1 való. POST.

Terminál
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"action":"ignore","site_id_or_domain":1,"type":"plugin","slug":"woocommerce/woocommerce.php"}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/set-ignored-updates-v1/run'
Név Típus Kötelező Leírás
action szöveg igen ignore; az unignore a 6.3-ban el van utasítva
site_id_or_domain egész vagy szöveg igen Webhelyazonosító vagy tartomány
type szöveg igen core, plugin vagy theme
slug szöveg igen Az elem azonosítója (a magnál wordpress)

A válasz: success, action, site_id, type, slug.

Ezek a képességek tiltást adnak egy webhely frissítéseire. A tiltás eltávolítására mindegyiknél az unignore-site-updates-v1 való. Mind POST, és a site_id_or_domain mellett az action mezőt várják, amely a 6.3-ban csak add lehet (a remove el van utasítva).

Képesség Mit tilt További bemenet Válasz
mainwp/ignore-site-core-v1 A webhely magfrissítéseit nincs success, message, ignored_count
mainwp/ignore-site-plugins-v1 A megadott bővítmények frissítéseit slugs (kötelező) success, message, ignored_count
mainwp/ignore-site-themes-v1 A megadott témák frissítéseit slugs (kötelező) success, message, ignored_count
Terminál
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"site_id_or_domain":1,"action":"add","slugs":["akismet/akismet.php"]}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/ignore-site-plugins-v1/run'

Egy webhely saját frissítési tiltásainak előnézete vagy eltávolítása. A tiltás eltávolítása után az elem jogosulttá válhat a későbbi frissítési futásokra, a sorba állítottakra is, de ez a képesség maga nem telepíti a frissítést. POST.

Terminál
# Egy bővítmény webhelyszintű tiltása eltávolításának előnézete
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"site_id_or_domain":1,"type":"plugin","slugs":["akismet/akismet.php"],"dry_run":true}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/unignore-site-updates-v1/run'
# A tiltás eltávolítása az előnézet átnézése után
curl -X POST -u 'admin:xxxx' \
-H 'Content-Type: application/json' \
-d '{"input":{"site_id_or_domain":1,"type":"plugin","slugs":["akismet/akismet.php"],"confirm":true}}' \
'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/unignore-site-updates-v1/run'
Név Típus Kötelező Leírás
site_id_or_domain egész vagy szöveg igen Engedélyezett webhely azonosítója vagy tartománya
type szöveg igen core, plugin vagy theme
slugs szövegek tömbje bővítménynél és témánál Nem üres elemlista; a magnál figyelmen kívül marad
dry_run logikai előnézethez true: a tiltások megtekintése módosítás nélkül
confirm logikai végrehajtáshoz true: a webhely saját tiltásainak eltávolítása

Az előnézet válasza a would_affect.holds listát, a darabszámot, a figyelmeztetéseket és a hibákat adja. Ha egy tiltás bejegyzésében a still_held_by mező szerepel, az azt jelzi, hogy egy globális vagy az egész webhelyre szóló tiltás továbbra is érvényben marad. A végrehajtás válasza:

{
"dry_run": false,
"removed": ["akismet/akismet.php"],
"not_held": [],
"count": 1
}

A globális tiltások és az egész webhelyre szóló mellőzési jelzők változatlanok maradnak. A webhelyhozzáférés és a frissítések mellőzéséhez, illetve visszaállításához tartozó jogosultság itt is érvényes.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások