Skip to main content

Референца за способности

Способностите се атомски дејства што Gratis AI Agent може да ги повика на вашата WordPress инсталација. Секоја способност е регистрирана PHP класа што изложува JSON шема — агентот ја чита оваа шема при извршување за да разбере кои параметри се потребни и што враќа способноста.

Оваа страница ги документира сите способности што се испорачуваат со Gratis AI Agent v1.9.0.


Прилагодени типови објави

Овие способности управуваат со прилагодени типови објави (CPTs) регистрирани преку агентот. Регистрациите се зачувуваат во табелата со WordPress опции за да преживеат деактивирање и повторно активирање на plugin-от.

register_post_type

Регистрира нов прилагоден тип објава.

Параметри

ПараметарТипЗадолжителноОпис
slugstringДаКлучот на типот објава (најмногу 20 знаци, без големи букви, без празни места)
singular_labelstringДаЧитливо единечно име, на пр. Portfolio Item
plural_labelstringДаЧитливо множинско име, на пр. Portfolio Items
publicbooleanНеДали типот објава е јавно достапен. Стандардно true
supportsarrayНеФункции за поддршка: title, editor, thumbnail, excerpt, comments, revisions, custom-fields. Стандардно ["title","editor"]
has_archivebooleanНеДали е овозможена архивска страница за типот објава. Стандардно false
menu_iconstringНеDashicons класа или URL за иконата на администраторското мени. Стандардно "dashicons-admin-post"
rewrite_slugstringНеURL slug за типот објава. Стандардно е slug

Пример

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

Враќа { "success": true, "slug": "portfolio" }


list_post_types

Ги враќа сите прилагодени типови објави регистрирани од агентот.

Параметри — нема

Враќа

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

delete_post_type

Го одрегистрира прилагодениот тип објава претходно регистриран од агентот. Постоечките објави од тој тип остануваат во базата на податоци, но повеќе не се достапни преку типот објава.

Параметри

ПараметарТипЗадолжителноОпис
slugstringДаКлучот на типот објава што треба да се отстрани

Враќа { "success": true, "slug": "portfolio" }


Прилагодени таксономии

Овие способности управуваат со прилагодени таксономии. Како и CPTs, регистрациите на таксономии се зачувуваат.

register_taxonomy

Регистрира нова прилагодена таксономија.

Параметри

ПараметарТипЗадолжителноОпис
slugstringДаКлучот на таксономијата (најмногу 32 знаци)
singular_labelstringДаЧитливо единечно име, на пр. Project Category
plural_labelstringДаЧитливо множинско име, на пр. Project Categories
post_typesarrayДаSlug-ови на типови објави на кои треба да се прикачи оваа таксономија
hierarchicalbooleanНеtrue за стил на категорија, false за стил на ознака. Стандардно true
publicbooleanНеДали термините се јавно достапни. Стандардно true
rewrite_slugstringНеURL slug за таксономијата. Стандардно е slug

Пример

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

Враќа { "success": true, "slug": "project-category" }


list_taxonomies

Ги враќа сите прилагодени таксономии регистрирани од агентот.

Параметри — нема

Враќа

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

delete_taxonomy

Ја одрегистрира прилагодената таксономија претходно регистрирана од агентот.

Параметри

ПараметарТипЗадолжителноОпис
slugstringДаКлучот на таксономијата што треба да се отстрани

Враќа { "success": true, "slug": "project-category" }


Дизајн-систем

Способностите на дизајн-системот ја изменуваат визуелната презентација на WordPress страницата — од прилагоден CSS до блок-шаблони и логото на страницата.

inject_custom_css

Додава CSS во <head> на страницата преку wp_add_inline_style. CSS се чува во опцијата gratis_ai_agent_custom_css и чисто се отстранува од редицата кога способноста се ресетира.

Параметри

ПараметарТипЗадолжителноОпис
cssstringДаВалиден CSS за вметнување
labelstringНеЧитлива ознака за овој CSS блок, што се користи во дневници за отстранување грешки. Стандардно "agent-injected"
replacebooleanНеАко е true, го заменува целиот претходно вметнат CSS. Стандардно false (додава)

Пример

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

Враќа { "success": true, "bytes": 96 }


add_block_pattern

Регистрира повеќекратно употреблив блок-шаблон во библиотеката со шаблони на WordPress.

Параметри

ПараметарТипЗадолжителноОпис
slugstringДаИдентификатор на шаблон, на пр. gratis/hero-dark
titlestringДаЧитливо име на шаблон прикажано во уредувачот
contentstringДаСеријализирана блок-ознака (HTML) за шаблонот
categoriesarrayНеSlug-ови на категории на шаблони, на пр. ["featured", "hero"]
descriptionstringНеКраток опис прикажан во избирачот на шаблони
keywordsarrayНеКлучни зборови за пребарување

Враќа { "success": true, "slug": "gratis/hero-dark" }


list_block_patterns

Ги наведува сите блок-шаблони регистрирани од агентот.

Параметри — нема

Враќа

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

Го поставува логото на WordPress веб-локацијата на дадено ID на прилог или на далечински URL на слика. Кога е даден URL, сликата се презема и се увезува во медиумската библиотека.

Параметри

ПараметарТипЗадолжителноОпис
attachment_idintegerНеID на постоечки прилог во медиумската библиотека
urlstringНеДалечински URL на слика за увоз и поставување како лого

Мора да се обезбеди едно од attachment_id или url.

Враќа { "success": true, "attachment_id": 42 }


apply_theme_json_preset

Применува именувана предефинирана поставка за боја/типографија на theme.json (или global-styles) на активната тема. Предефинираните поставки се курирани пакети што ги одржува тимот на Gratis AI Agent.

Параметри

ПараметарТипЗадолжителноОпис
presetstringДаИме на предефинирана поставка, на пр. minimal-dark, warm-editorial, corporate-blue
mergebooleanНеАко е true, спој со постоечките вредности наместо замена. Стандардно false

Достапни предефинирани поставки

Предефинирана поставкаОпис
minimal-darkРечиси црна позадина, бел текст, една акцентна боја
warm-editorialТопла крем-бела позадина, серифни наслови, земјени акцентни бои
corporate-blueТемносина и бела палета со професионална типографија
vibrant-startupСветли градиенти, заоблени агли, модерен sans-serif фонт
classic-blogНеутрални сиви нијанси, удобна висина на ред, традиционално растојание во распоредот

Враќа { "success": true, "preset": "minimal-dark" }


Глобални стилови

Способностите за глобални стилови читаат и запишуваат вредности од theme.json преку WordPress API за глобални стилови, влијаејќи на сите блокови и шаблони низ целата веб-локација.

get_global_styles

Ја враќа тековната конфигурација на глобалните стилови.

Параметри

ПараметарТипЗадолжителноОпис
pathstringНеJSON pointer до конкретна вредност, на пр. /color/palette или /typography/fontSizes. Го враќа целиот објект ако е изоставено.

Враќа го целосниот објект на глобалните стилови или вредноста на path.


set_global_styles

Ажурира една или повеќе вредности во конфигурацијата на глобалните стилови.

Параметри

ПараметарТипЗадолжителноОпис
pathstringДаJSON pointer до вредноста што треба да се постави, на пр. /color/palette
valueanyДаНовата вредност

Пример — додајте боја во палетата

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

Враќа { "success": true, "path": "/color/palette" }


reset_global_styles

Ги ресетира сите промени на глобалните стилови применети од агентот, враќајќи ги стандардните вредности на темата.

Параметри — нема

Враќа { "success": true }


Способностите за навигациско мени создаваат и управуваат со WordPress навигациски менија и нивните ставки.

create_menu

Создава ново WordPress навигациско мени.

Параметри

ПараметарТипЗадолжителноОпис
namestringДаИме на мени, на пр. Primary Navigation
locationstringНеЛокација во темата на која ќе се додели ова мени, на пр. primary

Враќа { "success": true, "menu_id": 7 }


update_menu

Преименува мени или повторно го доделува на локација во тема.

Параметри

ПараметарТипЗадолжителноОпис
menu_idintegerДаID на менито што треба да се ажурира
namestringНеНово име на мени
locationstringНеЛокација во тема за доделување или повторно доделување

Враќа { "success": true, "menu_id": 7 }


add_menu_item

Додава ставка во постоечко навигациско мени.

Параметри

ПараметарТипЗадолжителноОпис
menu_idintegerДаID на целното мени
typestringДаТип на ставка: custom, post_type или taxonomy
titlestringНеОзнака за ставката од менито (задолжително за тип custom)
urlstringНеURL за ставки custom
object_idintegerНеID на објава или ID на термин за ставки post_type/taxonomy
parent_idintegerНеID на ставка од мени под која ќе се вгнезди оваа ставка
positionintegerНеПозиција во менито базирана на нула

Враќа { "success": true, "item_id": 12 }


remove_menu_item

Отстранува ставка од навигациско мени.

Параметри

ПараметарТипЗадолжителноОпис
item_idintegerДаID на ставка од мени што треба да се отстрани

Враќа { "success": true, "item_id": 12 }


list_menus

Ги наведува сите WordPress навигациски менија, вклучувајќи ги нивните доделени локации во темата.

Параметри — нема

Враќа

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

Управување со опции

Способностите за опции читаат и запишуваат WordPress опции преку get_option / update_option. Вградената безбедносна блок-листа спречува случајна измена на критични поставки.

get_option

Чита WordPress опција.

Параметри

ПараметарТипЗадолжителноОпис
option_namestringДаКлучот на опцијата, на пр. blogname

Враќа { "option_name": "blogname", "value": "My Site" }

Враќа грешка ако option_name е на безбедносната блок-листа.


set_option

Запишува WordPress опција.

Параметри

ПараметарТипЗадолжителноОпис
option_namestringДаКлучот на опцијата
valueanyДаНовата вредност (автоматски се серијализира за низи/објекти)
autoloadstringНе"yes" или "no". Стандардно ја зачувува постоечката поставка за autoload

Враќа грешка ако option_name е на безбедносната блок-листа.

Враќа { "success": true, "option_name": "blogname" }


delete_option

Брише WordPress опција.

Параметри

ПараметарТипЗадолжителноОпис
option_namestringДаКлучот на опцијата што треба да се избрише

Враќа грешка ако option_name е на безбедносната блок-листа.

Враќа { "success": true, "option_name": "my_custom_option" }


list_options

Ги наведува WordPress опциите што одговараат на шема.

Параметри

ПараметарТипЗадолжителноОпис
patternstringНеSQL LIKE шема за филтрирање имиња на опции, на пр. gratis_%. Ги враќа сите опции ако е изоставено (користете внимателно на големи бази на податоци).
limitintegerНеМаксимален број резултати. Стандардно 50, максимум 500

Враќа

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

Управување со содржина

Можностите за управување со содржина создаваат и уредуваат WordPress објави и страници. ID-јата на објавите се враќаат за да можат следните чекори во планови со повеќе можности да се повикаат на создадената содржина.

create_post

Создава нова WordPress објава, страница или запис од сопствен тип на објава.

Параметри

ПараметарТипЗадолжителноОпис
titlestringДаНаслов на објавата
contentstringНеТело на објавата — прифаќа обичен текст, HTML или серијализирано означување на блокови
statusstringНеdraft, publish, pending, private. Стандардно draft
post_typestringНеSlug на типот објава, на пр. post, page или кој било регистриран CPT. Стандардно post
excerptstringНеКратко резиме прикажано во архиви и резултати од пребарување
categoriesarrayНеНиза од имиња или ID-ја на категории за доделување
tagsarrayНеНиза од имиња или ID-ја на ознаки за доделување
authorintegerНеWordPress корисничко ID што треба да се постави како автор на објавата. Стандардно е тековниот корисник
datestringНеДатум на објавување во ISO 8601 формат, на пр. 2026-05-01T09:00:00
page_templatestringНеДатотека на шаблон што треба да се додели на оваа објава или страница, на пр. page-full-width.php. Има значење само кога post_type е page или CPT што поддржува шаблони за страници.

Пример

{
"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"
}

Враќа { "success": true, "post_id": 42, "permalink": "https://example.com/welcome/" }


update_post

Ажурира постоечка WordPress објава или страница.

Параметри

ПараметарТипЗадолжителноОпис
post_idintegerДаID на објавата што треба да се ажурира
titlestringНеНов наслов на објавата
contentstringНеНово тело на објавата
statusstringНеНов статус: draft, publish, pending, private
excerptstringНеНов извадок
categoriesarrayНеЗаменете ја целосната листа на категории со оваа низа од имиња или ID-ја
tagsarrayНеЗаменете ја целосната листа на ознаки со оваа низа од имиња или ID-ја
page_templatestringНеНова датотека на шаблон што треба да се додели на оваа објава или страница, на пр. page-full-width.php. Проследете празен стринг за да го отстраните доделувањето на шаблонот и да се вратите на стандардното од темата.

Пример — променете шаблон по создавањето

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

Враќа { "success": true, "post_id": 42 }


batch_create_posts

Создава повеќе објави во еден повик на можност, намалувајќи ги повратните барања при изработка на сајт или масовен увоз на содржина. Објавите се создаваат по редослед; ако една не успее, другите продолжуваат, а неуспехот се пријавува во низата со резултати.

Параметри

ПараметарТипЗадолжителноОпис
postsarrayДаНиза од објекти на објави, од кои секој ги прифаќа истите параметри како create_post
stop_on_errorbooleanНеАко е true, запрете ја обработката по првиот неуспех. Стандардно false

Пример

{
"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"
}
]
}

Враќа

{
"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

Доделува истакната слика (минијатура на објава) на постоечка објава или страница. Прифаќа ID на постоечки прилог од Media Library или URL на оддалечена слика; кога е даден URL, сликата автоматски се презема и увезува.

Параметри

ПараметарТипЗадолжителноОпис
post_idintegerДаID на објавата или страницата што треба да се ажурира
attachment_idintegerНеID на постоечки прилог од Media Library
urlstringНеURL на оддалечена слика за увоз и поставување како истакната слика
alt_textstringНеАлтернативен текст што треба да се примени на прилогот ако е увезен од URL

Мора да се обезбеди едно од attachment_id или url.

Враќа { "success": true, "post_id": 42, "attachment_id": 17 }


create_contact_form

Создава контакт-форма користејќи го активниот plugin за форми (Contact Form 7, WPForms, Fluent Forms или Gravity Forms, во зависност од тоа кој е инсталиран). Враќа shortcode што може да се вгради во која било објава или страница.

Параметри

ПараметарТипЗадолжителноОпис
titlestringДаИме на формуларот прикажано во администраторскиот дел на plugin-от за формулари
fieldsarrayДаПодредена листа на полиња на формуларот (видете го објектот Field подолу)
recipientstringНеЕ-адреса за примање поднесоци. Стандардно е администраторската е-адреса на WordPress
subjectstringНеНаслов на е-пораката. Поддржува placeholders [your-name] и [your-subject] кога се користи Contact Form 7
confirmation_messagestringНеПорака прикажана по успешно поднесување. Стандардно: "Thank you for your message. We'll be in touch soon."

Објект Field

КлучТипЗадолжителноОпис
namestringДаВнатрешно име на поле / машински клуч
labelstringДаЧитлива ознака прикажана на формуларот
typestringДаtext, email, tel, textarea, select, checkbox, radio, file, date
requiredbooleanНеДали полето мора да биде пополнето пред поднесување. Стандардно false
optionsarrayНеОпции за полиња select, checkbox и radio
placeholderstringНеPlaceholder текст за внесови од текстуален тип

Пример

{
"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]"
}

Враќа

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

Визуелен преглед

Можностите за визуелен преглед му дозволуваат на агентот да снима слики од екранот на активни страници и да ги анализира, овозможувајќи автономен преглед на дизајнот, споредби пред/потоа и проверки за визуелна регресија без потреба од каква било екстензија за прелистувач.

capture_screenshot

Снима слика од екранот на WordPress страница на дадена URL-адреса со користење серверски headless прелистувач. Сликата се зачувува во Media Library и се враќа CDN URL.

Параметри

ПараметарТипЗадолжителноОпис
urlstringДаЦелосна URL-адреса на страницата за снимање слика од екранот, на пр. https://example.com/about/
widthintegerНеШирина на viewport во пиксели. Стандардно 1280
heightintegerНеВисина на viewport во пиксели. Стандардно 800
full_pagebooleanНеСними ја целата страница што може да се скрола наместо само viewport. Стандардно false
delay_msintegerНеМилисекунди за чекање по вчитување на страницата пред снимање, корисно за анимирана содржина. Стандардно 500
labelstringНеЧитлива ознака зачувана со прилогот во Media Library

Враќа

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

compare_screenshots

Зема две слики од екранот и враќа резултат за визуелна разлика плус слика со разлики што ги истакнува изменетите региони. Корисно за потврдување дека промена во дизајнот го дала очекуваниот резултат или за откривање ненамерни регресии.

Параметри

ПараметарТипЗадолжителноОпис
before_urlstringДаURL на страницата што треба да се сними како состојба „пред“
after_urlstringДаURL на страницата што треба да се сними како состојба „потоа“. Може да биде истата URL-адреса ако се споредува низ време
widthintegerНеШирина на viewport за двете снимања. Стандардно 1280
thresholdfloatНеПраг на разлика меѓу пиксели (0.0–1.0). Пикселите во рамките на оваа толеранција се сметаат за непроменети. Стандардно 0.1

Враќа

{
"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 значи дека нема видлива промена; 1.0 значи дека секој пиксел е променет.


review_page_design

Снима слика од екранот на страница и ја испраќа до јазичниот модел за визуелна анализа. Враќа структуирана проценка што опфаќа распоред, типографија, употреба на бои и грижи за пристапност.

Параметри

ПараметарТипЗадолжителноОпис
urlstringДаЦелосна URL-адреса на страницата за преглед
focusstringНеЛиста од области за преглед одделени со запирки на кои треба да се стави акцент: layout, typography, colour, accessibility, mobile. Стандардно: сите области
widthintegerНеШирина на viewport. Стандардно 1280

Враќа

{
"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"]
}
}

Инсталирачки можности

Регистарот на инсталирачки можности ви овозможува да го проширите агентот со дополнителни пакети со можности дистрибуирани како WordPress plugins. Секој пакет регистрира една или повеќе можности користејќи го стандардниот API за можности.

list_available_abilities

Го враќа каталогот на пакети со можности достапни за инсталација од регистарот.

Параметри

ПараметарТипЗадолжителноОпис
categorystringНеФилтрирај по категорија: ecommerce, seo, media, social, developer

Враќа

{
"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

Презема и активира пакет со способности од регистарот.

Параметри

ПараметарТипЗадолжителноОпис
slugstringДаSlug на plugin-от за пакетот со способности

Враќа { "success": true, "slug": "gratis-ai-agent-woocommerce", "abilities_added": 3 }


recommend_plugin

Го пребарува регистарот на способности за да го најде најдобриот plugin за опишан случај на употреба и, по избор, го инсталира.

Параметри

ПараметарТипЗадолжителноОпис
descriptionstringДаОпис на саканата функционалност на природен јазик
installbooleanНеАко е true, веднаш го инсталира препорачаниот plugin. Стандардно false

Пример

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

Враќа

{
"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"]
}
}