Hívás REST-en
Az LW Site Manager képességeinek hívása a WordPress Abilities REST API-ján: végpontok, HTTP-metódus, bemenet, válaszok és hibák.
A képességeket a WordPress saját Abilities REST API-ja futtatja (WordPress 6.9-től). Az LW Site Manager adja a tartalmukat.
| Végpont | Metódus | Mit ad |
|---|---|---|
/wp-json/wp-abilities/v1/abilities |
GET | A képességek listája. Szűrők: category, namespace, page, per_page. Lapozás: X-WP-Total, X-WP-TotalPages fejléc. |
/wp-json/wp-abilities/v1/abilities/{név} |
GET | Egy képesség leírása: label, description, category, input_schema, output_schema, meta. |
/wp-json/wp-abilities/v1/abilities/{név}/run |
GET, POST, DELETE | Futtatás |
/wp-json/wp-abilities/v1/categories |
GET | Kategóriák |
Hitelesítés
Szekció neve “Hitelesítés”WordPress-alkalmazásjelszó HTTP Basic hitelesítéssel (-u "admin:xxxx xxxx xxxx xxxx xxxx xxxx"), böngészőből a bejelentkezési süti és az X-WP-Nonce fejléc. REST-en a képesség saját jogosultsága dönt, nem kell hozzá adminisztrátor.
Melyik HTTP-metódus?
Szekció neve “Melyik HTTP-metódus?”A metódust a képesség jelölése határozza meg (ez a WordPress szabálya):
| A képesség | Metódus | Bemenet |
|---|---|---|
olvasó (readonly) |
GET | input query-paraméterben: ?input[id]=12 |
| romboló és idempotens | DELETE | input query-paraméterben |
| minden más | POST | JSON-törzs input kulccsal: {"input": {…}} |
A 189 REST-en látható képességből 66 GET, 100 POST és 23 DELETE. A metódus nem mindig az, amit várnál: az activate-plugin, a set-homepage és az optimize-database DELETE-tel fut, a WooCommerce wc-delete-* törlései POST-tal. A kategória-oldalak táblázatai minden képességnél megadják a metódust. Rossz metódusra 405 rest_ability_invalid_method jön.
Egy képesség leírása
Szekció neve “Egy képesség leírása”curl -u "admin:xxxx xxxx xxxx xxxx xxxx xxxx" "https://pelda.hu/wp-json/wp-abilities/v1/abilities/site-manager/get-post-meta"{ "name": "site-manager/get-post-meta", "label": "Get Post Meta", "description": "Get meta data for a post or page", "category": "meta", "input_schema": { "type": "object", "default": {}, "properties": { "post_id": { "type": "integer", "description": "Post or Page ID" }, "key": { "type": "string", "description": "Specific meta key to retrieve (optional, returns all if not specified)" }, "include_private": { "type": "boolean", "default": false, "description": "Include private meta keys (starting with _)" } }, "required": [ "post_id" ] }, "meta": { "annotations": { "readonly": true, "destructive": false, "idempotent": true }, "show_in_rest": true, "mcp": { "public": true, "type": "tool" } } }A meta.annotations mutatja, melyik metódus kell. A címke és a leírás magyar oldalon is angol.
Válaszok
Szekció neve “Válaszok”- Siker:
{ "success": true, "message": "…", … }, utána az adatok. - Lista:
{ "<kulcs>": [ … ], "total", "total_pages", "limit", "offset", "has_more" }. - Hiba:
{ "code": "…", "message": "…", "data": { "status": 4xx } }.
Hitelesítés nélkül:
{ "code": "rest_ability_cannot_execute", "message": "Sajnos, nincs jogosultság ennek a képességnek a használatához.", "data": { "status": 401 } }A tesztoldalon a /abilities lista 237 képességet adott: 189 site-manager/*, a többi a WordPress-é, a WooCommerce-é és más LW-bővítményeké. Valódi hívások: Példák.