Preskoči na vsebino

Referenca zmožnosti

Zmožnosti so atomska dejanja, ki jih lahko Gratis AI Agent prikliče v vaši WordPress namestitvi. Vsaka zmožnost je registriran PHP razred, ki izpostavi JSON shemo — agent to shemo prebere med izvajanjem, da razume, kateri parametri so zahtevani in kaj zmožnost vrne.

Ta stran dokumentira vse zmožnosti, ki so vključene v Gratis AI Agent v1.9.0.


Vrste objav po meri

Te zmožnosti upravljajo vrste objav po meri (CPT), registrirane prek agenta. Registracije so shranjene v tabelo možnosti WordPress, zato preživijo deaktivacijo in ponovno aktivacijo plugin-a.

register_post_type

Registrira novo vrsto objave po meri.

Parametri

ParameterTypeRequiredDescription
slugstringYesKljuč vrste objave (največ 20 znakov, brez velikih črk, brez presledkov)
singular_labelstringYesČloveku berljivo edninsko ime, npr. Portfolio Item
plural_labelstringYesČloveku berljivo množinsko ime, npr. Portfolio Items
publicbooleanNoAli je vrsta objave javno dostopna. Privzeto true
supportsarrayNoFunkcije za podporo: title, editor, thumbnail, excerpt, comments, revisions, custom-fields. Privzeto ["title","editor"]
has_archivebooleanNoAli je omogočena arhivska stran vrste objave. Privzeto false
menu_iconstringNoRazred Dashicons ali URL za ikono administratorskega menija. Privzeto "dashicons-admin-post"
rewrite_slugstringNoURL slug za vrsto objave. Privzeto je slug

Primer

{
"slug": "portfolio",
"singular_label": "Portfolio Item",
"plural_label": "Portfolio Items",
"public": true,
"supports": ["title", "editor", "thumbnail"],
"has_archive": true,
"menu_icon": "dashicons-portfolio"
}

Vrne { "success": true, "slug": "portfolio" }


list_post_types

Vrne vse vrste objav po meri, ki jih je registriral agent.

Parametri — brez

Vrne

{
"post_types": [
{
"slug": "portfolio",
"singular_label": "Portfolio Item",
"plural_label": "Portfolio Items",
"public": true
}
]
}

delete_post_type

Odregistrira vrsto objave po meri, ki jo je predhodno registriral agent. Obstoječe objave te vrste ostanejo v podatkovni zbirki, vendar niso več dostopne prek vrste objave.

Parametri

ParameterTypeRequiredDescription
slugstringYesKljuč vrste objave za odstranitev

Vrne { "success": true, "slug": "portfolio" }


Taksonomije po meri

Te zmožnosti upravljajo taksonomije po meri. Tako kot CPT-ji so registracije taksonomij shranjene.

register_taxonomy

Registrira novo taksonomijo po meri.

Parametri

ParameterTypeRequiredDescription
slugstringYesKljuč taksonomije (največ 32 znakov)
singular_labelstringYesČloveku berljivo edninsko ime, npr. Project Category
plural_labelstringYesČloveku berljivo množinsko ime, npr. Project Categories
post_typesarrayYesSlugi vrst objav, na katere naj bo ta taksonomija pripeta
hierarchicalbooleanNotrue za slog kategorij, false za slog oznak. Privzeto true
publicbooleanNoAli so izrazi javno dostopni. Privzeto true
rewrite_slugstringNoURL slug za taksonomijo. Privzeto je slug

Primer

{
"slug": "project-category",
"singular_label": "Project Category",
"plural_label": "Project Categories",
"post_types": ["portfolio"],
"hierarchical": true
}

Vrne { "success": true, "slug": "project-category" }


list_taxonomies

Vrne vse taksonomije po meri, ki jih je registriral agent.

Parametri — brez

Vrne

{
"taxonomies": [
{
"slug": "project-category",
"singular_label": "Project Category",
"post_types": ["portfolio"],
"hierarchical": true
}
]
}

delete_taxonomy

Odregistrira taksonomijo po meri, ki jo je predhodno registriral agent.

Parametri

ParameterTypeRequiredDescription
slugstringYesKljuč taksonomije za odstranitev

Vrne { "success": true, "slug": "project-category" }


Oblikovalski sistem

Zmožnosti oblikovalskega sistema spreminjajo vizualno predstavitev WordPress site-a — od CSS po meri do vzorcev blokov in logotipa site-a.

inject_custom_css

Doda CSS v <head> site-a prek wp_add_inline_style. CSS je shranjen v možnosti gratis_ai_agent_custom_css in se čisto odstrani iz čakalne vrste, ko je zmožnost ponastavljena.

Parametri

ParameterTypeRequiredDescription
cssstringYesVeljaven CSS za vbrizganje
labelstringNoČloveku berljiva oznaka za ta blok CSS, uporabljena v dnevnikih za odpravljanje napak. Privzeto "agent-injected"
replacebooleanNoČe je true, zamenja ves predhodno vbrizgan CSS. Privzeto false (doda)

Primer

{
"css": ":root { --primary: #1a1a2e; --accent: #e94560; } body { font-family: 'Inter', sans-serif; }",
"label": "brand-colours",
"replace": false
}

Vrne { "success": true, "bytes": 96 }


add_block_pattern

Registrira ponovno uporaben vzorec blokov v knjižnici vzorcev WordPress.

Parametri

ParameterTypeRequiredDescription
slugstringYesIdentifikator vzorca, npr. gratis/hero-dark
titlestringYesČloveku berljivo ime vzorca, prikazano v urejevalniku
contentstringYesSerializirana oznaka blokov (HTML) za vzorec
categoriesarrayNoSlugi kategorij vzorca, npr. ["featured", "hero"]
descriptionstringNoKratek opis, prikazan v izbirniku vzorcev
keywordsarrayNoIskalne ključne besede

Vrne { "success": true, "slug": "gratis/hero-dark" }


list_block_patterns

Navede vse vzorce blokov, ki jih je registriral agent.

Parametri — brez

Vrne

{
"patterns": [
{
"slug": "gratis/hero-dark",
"title": "Dark Hero",
"categories": ["hero"]
}
]
}

Nastavi logotip WordPress strani na podani ID priloge ali URL oddaljene slike. Ko je naveden URL, se slika prenese in uvozi v Media Library.

Parametri

ParameterTypeRequiredDescription
attachment_idintegerNoID obstoječe priloge Media Library
urlstringNoURL oddaljene slike za uvoz in nastavitev kot logotip

Naveden mora biti eden od attachment_id ali url.

Vrne { "success": true, "attachment_id": 42 }


apply_theme_json_preset

Uporabi imenovano prednastavitev barv/tipografije za theme.json aktivne teme (ali global-styles). Prednastavitve so skrbno pripravljeni paketi, ki jih vzdržuje ekipa Gratis AI Agent.

Parametri

ParameterTypeRequiredDescription
presetstringYesIme prednastavitve, npr. minimal-dark, warm-editorial, corporate-blue
mergebooleanNoČe je true, združi z obstoječimi vrednostmi namesto zamenjave. Privzeto false

Razpoložljive prednastavitve

PresetDescription
minimal-darkSkoraj črno ozadje, belo besedilo, ena poudarjena barva
warm-editorialToplo skoraj belo ozadje, serifni naslovi, zemeljske poudarjene barve
corporate-blueMornarsko modra in bela paleta s profesionalno tipografijo
vibrant-startupŽivahni prelivi, zaobljeni koti, moderna sans-serif pisava
classic-blogNevtralne sive barve, udobna višina vrstice, tradicionalni razmiki postavitve

Vrne { "success": true, "preset": "minimal-dark" }


Global Styles

Zmožnosti Global Styles berejo in zapisujejo vrednosti theme.json prek WordPress Global Styles API ter vplivajo na vse bloke in predloge na celotnem spletnem mestu.

get_global_styles

Vrne trenutno konfiguracijo globalnih slogov.

Parametri

ParameterTypeRequiredDescription
pathstringNoJSON kazalec na določeno vrednost, npr. /color/palette ali /typography/fontSizes. Če je izpuščeno, vrne celoten objekt.

Vrne celoten objekt globalnih slogov ali vrednost na path.


set_global_styles

Posodobi eno ali več vrednosti v konfiguraciji globalnih slogov.

Parametri

ParameterTypeRequiredDescription
pathstringYesJSON kazalec na vrednost za nastavitev, npr. /color/palette
valueanyYesNova vrednost

Primer — dodaj barvo v paleto

{
"path": "/color/palette",
"value": [
{ "slug": "primary", "color": "#1a1a2e", "name": "Primary" },
{ "slug": "accent", "color": "#e94560", "name": "Accent" }
]
}

Vrne { "success": true, "path": "/color/palette" }


reset_global_styles

Ponastavi vse spremembe globalnih slogov, ki jih je uporabil agent, in obnovi privzete nastavitve teme.

Parametri — brez

Vrne { "success": true }


Zmožnosti navigacijskega menija ustvarjajo in upravljajo WordPress navigacijske menije ter njihove elemente.

create_menu

Ustvari nov WordPress navigacijski meni.

Parametri

ParameterTypeRequiredDescription
namestringYesIme menija, npr. Primary Navigation
locationstringNoLokacija teme, ki se dodeli temu meniju, npr. primary

Vrne { "success": true, "menu_id": 7 }


update_menu

Preimenuje meni ali ga znova dodeli lokaciji teme.

Parametri

ParameterTypeRequiredDescription
menu_idintegerYesID menija za posodobitev
namestringNoNovo ime menija
locationstringNoLokacija teme za dodelitev ali ponovno dodelitev

Vrne { "success": true, "menu_id": 7 }


add_menu_item

Doda element v obstoječi navigacijski meni.

Parametri

ParameterTypeRequiredDescription
menu_idintegerYesID ciljnega menija
typestringYesVrsta elementa: custom, post_type ali taxonomy
titlestringNoOznaka za element menija (obvezna za vrsto custom)
urlstringNoURL za elemente custom
object_idintegerNoID objave ali ID izraza za elemente post_type/taxonomy
parent_idintegerNoID elementa menija, pod katerega se ugnezdi ta element
positionintegerNoNičelno indeksiran položaj v meniju

Vrne { "success": true, "item_id": 12 }


remove_menu_item

Odstrani element iz navigacijskega menija.

Parametri

ParameterTypeRequiredDescription
item_idintegerYesID elementa menija za odstranitev

Vrne { "success": true, "item_id": 12 }


list_menus

Navede vse WordPress navigacijske menije, vključno z njihovimi dodeljenimi lokacijami teme.

Parametri — brez

Vrne

{
"menus": [
{
"menu_id": 7,
"name": "Primary Navigation",
"location": "primary",
"item_count": 5
}
]
}

Upravljanje možnosti

Zmožnosti možnosti berejo in zapisujejo WordPress možnosti prek get_option / update_option. Vgrajen varnostni seznam blokiranih možnosti preprečuje nenamerno spreminjanje kritičnih nastavitev.

get_option

Prebere WordPress možnost.

Parametri

ParameterTypeRequiredDescription
option_namestringYesKljuč možnosti, npr. blogname

Vrne { "option_name": "blogname", "value": "My Site" }

Vrne napako, če je option_name na varnostnem seznamu blokiranih možnosti.


set_option

Zapiše WordPress možnost.

Parametri

ParameterTypeRequiredDescription
option_namestringYesKljuč možnosti
valueanyYesNova vrednost (samodejno serializirana za polja/objekte)
autoloadstringNo"yes" ali "no". Privzeto ohrani obstoječo nastavitev autoload

Vrne napako, če je option_name na varnostnem seznamu blokiranih.

Vrne { "success": true, "option_name": "blogname" }


delete_option

Izbriše možnost WordPress.

Parametri

ParameterVrstaObveznoOpis
option_namestringDaKljuč možnosti za izbris

Vrne napako, če je option_name na varnostnem seznamu blokiranih.

Vrne { "success": true, "option_name": "my_custom_option" }


list_options

Prikaže seznam možnosti WordPress, ki se ujemajo z vzorcem.

Parametri

ParameterVrstaObveznoOpis
patternstringNeVzorec SQL LIKE za filtriranje imen možnosti, npr. gratis_%. Če je izpuščen, vrne vse možnosti (uporabljajte previdno pri velikih podatkovnih bazah).
limitintegerNeNajvečje število rezultatov. Privzeto 50, največ 500

Vrne

{
"options": [
{ "option_name": "gratis_ai_agent_version", "autoload": "yes" }
],
"total": 1
}

Upravljanje vsebine

Zmožnosti upravljanja vsebine ustvarjajo in urejajo WordPress prispevke in strani. ID-ji prispevkov se vrnejo, da se lahko nadaljnji koraki v načrtih z več zmožnostmi sklicujejo na ustvarjeno vsebino.

create_post

Ustvari nov WordPress prispevek, stran ali vnos vrste objave po meri.

Parametri

ParameterVrstaObveznoOpis
titlestringDaNaslov prispevka
contentstringNeTelo prispevka — sprejme navadno besedilo, HTML ali serializirano oznako blokov
statusstringNedraft, publish, pending, private. Privzeto draft
post_typestringNeKljuč vrste objave, npr. post, page ali kateri koli registriran CPT. Privzeto post
excerptstringNeKratek povzetek, prikazan v arhivih in rezultatih iskanja
categoriesarrayNePolje imen ali ID-jev kategorij za dodelitev
tagsarrayNePolje imen ali ID-jev oznak za dodelitev
authorintegerNeID uporabnika WordPress, ki naj bo nastavljen kot avtor prispevka. Privzeto je trenutni uporabnik
datestringNeDatum objave v formatu ISO 8601, npr. 2026-05-01T09:00:00
page_templatestringNeDatoteka predloge, ki se dodeli temu prispevku ali strani, npr. page-full-width.php. Smiselno le, kadar je post_type page ali CPT, ki podpira predloge strani.

Primer

{
"title": "Welcome to Our New Site",
"content": "<!-- wp:paragraph --><p>Hello world!</p><!-- /wp:paragraph -->",
"status": "publish",
"post_type": "page",
"page_template": "page-full-width.php"
}

Vrne { "success": true, "post_id": 42, "permalink": "https://example.com/welcome/" }


update_post

Posodobi obstoječ WordPress prispevek ali stran.

Parametri

ParameterVrstaObveznoOpis
post_idintegerDaID prispevka za posodobitev
titlestringNeNov naslov prispevka
contentstringNeNovo telo prispevka
statusstringNeNovo stanje: draft, publish, pending, private
excerptstringNeNov izvleček
categoriesarrayNeZamenja celoten seznam kategorij s tem poljem imen ali ID-jev
tagsarrayNeZamenja celoten seznam oznak s tem poljem imen ali ID-jev
page_templatestringNeNova datoteka predloge, ki se dodeli temu prispevku ali strani, npr. page-full-width.php. Posredujte prazen niz, da odstranite dodelitev predloge in se vrnete na privzeto nastavitev theme.

Primer — spremenite predlogo po ustvarjanju

{
"post_id": 42,
"page_template": "page-full-width.php"
}

Vrne { "success": true, "post_id": 42 }


batch_create_posts

Ustvari več prispevkov v enem klicu zmožnosti, s čimer zmanjša število povratnih zahtev med izdelavo strani ali množičnim uvozom vsebine. Prispevki se ustvarijo zaporedno; če eden ne uspe, se drugi nadaljujejo, napaka pa je navedena v polju rezultatov.

Parametri

ParameterVrstaObveznoOpis
postsarrayDaPolje objektov prispevkov, pri čemer vsak sprejme enake parametre kot create_post
stop_on_errorbooleanNeČe je true, ustavi obdelavo po prvi napaki. Privzeto false

Primer

{
"posts": [
{
"title": "About Us",
"post_type": "page",
"status": "publish",
"page_template": "page-full-width.php"
},
{
"title": "Services",
"post_type": "page",
"status": "publish"
},
{
"title": "Contact",
"post_type": "page",
"status": "publish"
}
]
}

Vrne

{
"created": 3,
"failed": 0,
"results": [
{ "success": true, "post_id": 42, "title": "About Us" },
{ "success": true, "post_id": 43, "title": "Services" },
{ "success": true, "post_id": 44, "title": "Contact" }
]
}

set_featured_image

Dodeli prikazno sliko (sličico prispevka) obstoječemu prispevku ali strani. Sprejme ID obstoječe priloge iz Media Library ali URL oddaljene slike; ko je naveden URL, se slika samodejno prenese in uvozi.

Parametri

ParameterVrstaObveznoOpis
post_idintegerDaID prispevka ali strani za posodobitev
attachment_idintegerNeID obstoječe priloge iz Media Library
urlstringNeURL oddaljene slike za uvoz in nastavitev kot prikazna slika
alt_textstringNeNadomestno besedilo, ki se uporabi za prilogo, če je uvožena iz URL-ja

Naveden mora biti eden od attachment_id ali url.

Vrne { "success": true, "post_id": 42, "attachment_id": 17 }


create_contact_form

Ustvari kontaktni obrazec z aktivnim vtičnikom za obrazce (Contact Form 7, WPForms, Fluent Forms ali Gravity Forms, odvisno od tega, kateri je nameščen). Vrne shortcode, ki ga je mogoče vdelati v kateri koli prispevek ali stran.

Parametri

ParameterTypeRequiredDescription
titlestringYesIme obrazca, prikazano v skrbništvu plugin za obrazce
fieldsarrayYesUrejen seznam polj obrazca (glejte objekt polja spodaj)
recipientstringNoE-poštni naslov za prejem oddaj. Privzeto je e-poštni naslov skrbnika WordPress
subjectstringNoVrstica z zadevo e-pošte. Podpira označbi mesta [your-name] in [your-subject] pri uporabi Contact Form 7
confirmation_messagestringNoSporočilo, prikazano po uspešni oddaji. Privzeto: "Thank you for your message. We'll be in touch soon."

Objekt polja

KeyTypeRequiredDescription
namestringYesNotranje ime polja / strojni ključ
labelstringYesČloveku berljiva oznaka, prikazana na obrazcu
typestringYestext, email, tel, textarea, select, checkbox, radio, file, date
requiredbooleanNoAli mora biti polje izpolnjeno pred oddajo. Privzeto false
optionsarrayNoMožnosti za polja select, checkbox in radio
placeholderstringNoBesedilo označbe mesta za vnose besedilne vrste

Primer

{
"title": "Restaurant Booking Enquiry",
"fields": [
{ "name": "your-name", "label": "Name", "type": "text", "required": true },
{ "name": "your-email", "label": "Email", "type": "email", "required": true },
{ "name": "party-size", "label": "Party size", "type": "select", "options": ["1–2", "3–5", "6–10", "10+"] },
{ "name": "your-message", "label": "Special requests", "type": "textarea", "required": false }
],
"recipient": "[email protected]",
"subject": "New booking enquiry from [your-name]"
}

Vrne

{
"success": true,
"form_id": 3,
"shortcode": "[contact-form-7 id=\"3\" title=\"Restaurant Booking Enquiry\"]"
}

Vizualni pregled

Zmožnosti Vizualnega pregleda agentu omogočajo zajem posnetkov zaslona živih strani in njihovo analizo, kar omogoča avtonomen pregled zasnove, primerjave pred/po in preverjanja vizualnih regresij brez potrebe po kakršni koli razširitvi brskalnika.

capture_screenshot

Zajame posnetek zaslona strani WordPress na danem URL-ju z uporabo strežniškega brezglavega brskalnika. Slika se shrani v Media Library in vrne se CDN URL.

Parametri

ParameterTypeRequiredDescription
urlstringYesPolni URL strani za posnetek zaslona, npr. https://example.com/about/
widthintegerNoŠirina vidnega polja v slikovnih pikah. Privzeto 1280
heightintegerNoVišina vidnega polja v slikovnih pikah. Privzeto 800
full_pagebooleanNoZajem celotne pomične strani namesto samo vidnega polja. Privzeto false
delay_msintegerNoMilisekunde čakanja po nalaganju strani pred zajemom, uporabno za animirano vsebino. Privzeto 500
labelstringNoČloveku berljiva oznaka, shranjena s prilogo v Media Library

Vrne

{
"success": true,
"attachment_id": 88,
"url": "https://example.com/wp-content/uploads/2026/04/screenshot-about.png",
"width": 1280,
"height": 800
}

compare_screenshots

Vzame dva posnetka zaslona in vrne oceno vizualne razlike ter sliko razlike, ki poudari spremenjena območja. Uporabno za potrditev, da je sprememba zasnove ustvarila pričakovani rezultat, ali za odkrivanje neželenih regresij.

Parametri

ParameterTypeRequiredDescription
before_urlstringYesURL strani za zajem kot stanje "pred"
after_urlstringYesURL strani za zajem kot stanje "po". Lahko je isti URL, če primerjate skozi čas
widthintegerNoŠirina vidnega polja za oba zajema. Privzeto 1280
thresholdfloatNoPrag razlike med slikovnimi pikami (0.0–1.0). Slikovne pike znotraj te tolerance se štejejo za nespremenjene. Privzeto 0.1

Vrne

{
"success": true,
"diff_score": 0.04,
"changed_pixels": 2340,
"total_pixels": 1024000,
"diff_attachment_id": 91,
"diff_url": "https://example.com/wp-content/uploads/2026/04/diff-about.png"
}

diff_score 0.0 pomeni, da ni vidne spremembe; 1.0 pomeni, da se je spremenila vsaka slikovna pika.


review_page_design

Zajame posnetek zaslona strani in ga pošlje jezikovnemu modelu za vizualno analizo. Vrne strukturirano oceno, ki zajema postavitev, tipografijo, uporabo barv in pomisleke glede dostopnosti.

Parametri

ParameterTypeRequiredDescription
urlstringYesPolni URL strani za pregled
focusstringNoSeznam področij pregleda, ločenih z vejicami, ki jih je treba poudariti: layout, typography, colour, accessibility, mobile. Privzeto: vsa področja
widthintegerNoŠirina vidnega polja. Privzeto 1280

Vrne

{
"success": true,
"screenshot_url": "https://example.com/wp-content/uploads/2026/04/review-about.png",
"assessment": {
"overall": "The page structure is clean and readable. Two accessibility issues detected.",
"layout": "Good visual hierarchy. Hero section is prominent.",
"typography": "Body text is 15px — consider increasing to 16px for readability.",
"colour": "Contrast ratio on the CTA button (#fff on #4a90e2) is 3.1:1 — below the WCAG AA threshold of 4.5:1.",
"accessibility": ["Low contrast on CTA button", "Missing alt text on hero image"],
"suggestions": ["Darken the CTA button to #1a5cb0 to pass WCAG AA", "Add descriptive alt text to the hero image"]
}
}

Namestljive zmožnosti

Register namestljivih zmožnosti vam omogoča, da agenta razširite z dodatnimi paketi zmožnosti, distribuiranimi kot WordPress plugin. Vsak paket registrira eno ali več zmožnosti z uporabo standardnega API-ja zmožnosti.

list_available_abilities

Vrne katalog paketov zmožnosti, ki so na voljo za namestitev iz registra.

Parametri

ParameterVrstaObveznoOpis
categorystringNeFiltriraj po kategoriji: ecommerce, seo, media, social, developer

Vrne

{
"packs": [
{
"slug": "gratis-ai-agent-woocommerce",
"name": "WooCommerce Abilities",
"category": "ecommerce",
"version": "1.0.0",
"abilities": ["create_product", "update_pricing", "manage_inventory"],
"installed": false
}
]
}

install_ability

Prenese in aktivira paket zmožnosti iz registra.

Parametri

ParameterVrstaObveznoOpis
slugstringDaSlug plugin paketa zmožnosti

Vrne { "success": true, "slug": "gratis-ai-agent-woocommerce", "abilities_added": 3 }


recommend_plugin

Poizveduje po registru zmožnosti, da najde najboljši plugin za opisani primer uporabe, in ga po želji namesti.

Parametri

ParameterVrstaObveznoOpis
descriptionstringDaOpis želene funkcionalnosti v naravnem jeziku
installbooleanNeČe je true, takoj namesti priporočeni plugin. Privzeto false

Primer

{
"description": "I need a contact form with file upload support and spam protection",
"install": false
}

Vrne

{
"recommendation": {
"slug": "contact-form-7",
"name": "Contact Form 7",
"reason": "Widely adopted, supports file uploads, and integrates with Akismet for spam filtering.",
"alternatives": ["wpforms-lite", "fluent-forms"]
}
}