Skip to main content

อ้างอิงความสามารถ

ความสามารถคือการกระทำย่อยพื้นฐานที่ Gratis AI Agent สามารถเรียกใช้บนการติดตั้ง WordPress ของคุณได้ แต่ละความสามารถคือ PHP class ที่ลงทะเบียนไว้ซึ่งเปิดเผย JSON schema — agent จะอ่าน schema นี้ขณะรันไทม์เพื่อทำความเข้าใจว่าต้องใช้พารามิเตอร์ใดและความสามารถนั้นส่งคืนอะไร

หน้านี้บันทึกความสามารถทั้งหมดที่มาพร้อมกับ Gratis AI Agent v1.9.0


ประเภทโพสต์แบบกำหนดเอง

ความสามารถเหล่านี้จัดการประเภทโพสต์แบบกำหนดเอง (CPT) ที่ลงทะเบียนผ่าน agent การลงทะเบียนจะถูกบันทึกคงอยู่ในตารางตัวเลือกของ WordPress เพื่อให้ยังคงอยู่หลังการปิดใช้งานและเปิดใช้งาน plugin อีกครั้ง

register_post_type

ลงทะเบียนประเภทโพสต์แบบกำหนดเองใหม่

พารามิเตอร์

ParameterTypeRequiredDescription
slugstringYesคีย์ของประเภทโพสต์ (สูงสุด 20 อักขระ ไม่มีตัวพิมพ์ใหญ่ ไม่มีช่องว่าง)
singular_labelstringYesชื่อเอกพจน์ที่มนุษย์อ่านได้ เช่น Portfolio Item
plural_labelstringYesชื่อพหูพจน์ที่มนุษย์อ่านได้ เช่น Portfolio Items
publicbooleanNoประเภทโพสต์เข้าถึงได้แบบสาธารณะหรือไม่ ค่าเริ่มต้น true
supportsarrayNoฟีเจอร์ที่รองรับ: title, editor, thumbnail, excerpt, comments, revisions, custom-fields ค่าเริ่มต้น ["title","editor"]
has_archivebooleanNoเปิดใช้งานหน้าคลังของประเภทโพสต์หรือไม่ ค่าเริ่มต้น false
menu_iconstringNoคลาส Dashicons หรือ URL สำหรับไอคอนเมนูผู้ดูแลระบบ ค่าเริ่มต้น "dashicons-admin-post"
rewrite_slugstringNoslug ของ URL สำหรับประเภทโพสต์ ค่าเริ่มต้นคือ 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

ส่งคืนประเภทโพสต์แบบกำหนดเองทั้งหมดที่ลงทะเบียนโดย agent

พารามิเตอร์ — ไม่มี

ส่งคืน

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

delete_post_type

ยกเลิกการลงทะเบียนประเภทโพสต์แบบกำหนดเองที่เคยลงทะเบียนโดย agent โพสต์ที่มีอยู่ของประเภทนั้นยังคงอยู่ในฐานข้อมูล แต่จะไม่สามารถเข้าถึงผ่านประเภทโพสต์นั้นได้อีกต่อไป

พารามิเตอร์

ParameterTypeRequiredDescription
slugstringYesคีย์ของประเภทโพสต์ที่จะลบ

ส่งคืน { "success": true, "slug": "portfolio" }


อนุกรมวิธานแบบกำหนดเอง

ความสามารถเหล่านี้จัดการอนุกรมวิธานแบบกำหนดเอง เช่นเดียวกับ CPTs การลงทะเบียนอนุกรมวิธานจะถูกบันทึกคงอยู่

register_taxonomy

ลงทะเบียนอนุกรมวิธานแบบกำหนดเองใหม่

พารามิเตอร์

ParameterTypeRequiredDescription
slugstringYesคีย์ของอนุกรมวิธาน (สูงสุด 32 อักขระ)
singular_labelstringYesชื่อเอกพจน์ที่มนุษย์อ่านได้ เช่น Project Category
plural_labelstringYesชื่อพหูพจน์ที่มนุษย์อ่านได้ เช่น Project Categories
post_typesarrayYesslug ของประเภทโพสต์ที่อนุกรมวิธานนี้ควรแนบไปด้วย
hierarchicalbooleanNotrue สำหรับรูปแบบหมวดหมู่, false สำหรับรูปแบบแท็ก ค่าเริ่มต้น true
publicbooleanNoterm เข้าถึงได้แบบสาธารณะหรือไม่ ค่าเริ่มต้น true
rewrite_slugstringNoslug ของ URL สำหรับอนุกรมวิธาน ค่าเริ่มต้นคือ slug

ตัวอย่าง

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

ส่งคืน { "success": true, "slug": "project-category" }


list_taxonomies

ส่งคืนอนุกรมวิธานแบบกำหนดเองทั้งหมดที่ลงทะเบียนโดย agent

พารามิเตอร์ — ไม่มี

ส่งคืน

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

delete_taxonomy

ยกเลิกการลงทะเบียนอนุกรมวิธานแบบกำหนดเองที่เคยลงทะเบียนโดย agent

พารามิเตอร์

ParameterTypeRequiredDescription
slugstringYesคีย์ของอนุกรมวิธานที่จะลบ

ส่งคืน { "success": true, "slug": "project-category" }


ระบบการออกแบบ

ความสามารถของระบบการออกแบบปรับเปลี่ยนการนำเสนอด้านภาพของ site WordPress — ตั้งแต่ CSS แบบกำหนดเองไปจนถึงรูปแบบบล็อกและโลโก้ของ site

inject_custom_css

เพิ่ม CSS ต่อท้ายเข้าไปใน <head> ของ site ผ่าน wp_add_inline_style CSS จะถูกเก็บไว้ในตัวเลือก gratis_ai_agent_custom_css และถูกนำออกจากคิวอย่างสะอาดเมื่อรีเซ็ตความสามารถนี้

พารามิเตอร์

ParameterTypeRequiredDescription
cssstringYesCSS ที่ถูกต้องสำหรับฉีดเข้าไป
labelstringNoป้ายกำกับที่มนุษย์อ่านได้สำหรับบล็อก CSS นี้ ใช้ในบันทึกดีบัก ค่าเริ่มต้น "agent-injected"
replacebooleanNoหากเป็น 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

พารามิเตอร์

ParameterTypeRequiredDescription
slugstringYesตัวระบุรูปแบบ เช่น gratis/hero-dark
titlestringYesชื่อรูปแบบที่มนุษย์อ่านได้ซึ่งแสดงในตัวแก้ไข
contentstringYesมาร์กอัปบล็อกแบบ serialised (HTML) สำหรับรูปแบบ
categoriesarrayNoslug ของหมวดหมู่รูปแบบ เช่น ["featured", "hero"]
descriptionstringNoคำอธิบายสั้นที่แสดงในตัวเลือกรูปแบบ
keywordsarrayNoคำสำคัญสำหรับการค้นหา

ส่งคืน { "success": true, "slug": "gratis/hero-dark" }


list_block_patterns

แสดงรายการรูปแบบบล็อกทั้งหมดที่ลงทะเบียนโดย agent

พารามิเตอร์ — ไม่มี

ส่งคืน

{
"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เกรเดียนต์สดใส มุมโค้งมน แบบตัวอักษรซานส์เซอริฟสมัยใหม่
classic-blogสีเทากลาง ๆ ระยะบรรทัดอ่านสบาย ระยะห่างเลย์เอาต์แบบดั้งเดิม

ส่งคืน { "success": true, "preset": "minimal-dark" }


สไตล์ส่วนกลาง

ความสามารถของสไตล์ส่วนกลางอ่านและเขียนค่า theme.json ผ่าน WordPress Global Styles API ซึ่งส่งผลต่อบล็อกและเทมเพลตทั้งหมดทั่วทั้งไซต์

get_global_styles

ส่งคืนการกำหนดค่าสไตล์ส่วนกลางปัจจุบัน

พารามิเตอร์

พารามิเตอร์ประเภทจำเป็นคำอธิบาย
pathstringไม่ตัวชี้ JSON ไปยังค่าเฉพาะ เช่น /color/palette หรือ /typography/fontSizes หากละไว้จะส่งคืนออบเจ็กต์ทั้งหมด

ส่งคืน ออบเจ็กต์สไตล์ส่วนกลางทั้งหมด หรือค่าที่ path


set_global_styles

อัปเดตค่าหนึ่งค่าหรือมากกว่าในการกำหนดค่าสไตล์ส่วนกลาง

พารามิเตอร์

พารามิเตอร์ประเภทจำเป็นคำอธิบาย
pathstringใช่ตัวชี้ JSON ไปยังค่าที่จะตั้ง เช่น /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ไม่Post ID หรือ term 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

พารามิเตอร์

ParameterTypeRequiredDescription
option_namestringYesคีย์ของตัวเลือกที่จะลบ

ส่งคืนข้อผิดพลาดหาก option_name อยู่ในรายการบล็อกเพื่อความปลอดภัย

ส่งคืน { "success": true, "option_name": "my_custom_option" }


list_options

แสดงรายการตัวเลือก WordPress ที่ตรงกับรูปแบบ

พารามิเตอร์

ParameterTypeRequiredDescription
patternstringNoรูปแบบ SQL LIKE เพื่อกรองชื่อตัวเลือก เช่น gratis_% ส่งคืนตัวเลือกทั้งหมดหากละไว้ (ใช้ด้วยความระมัดระวังกับฐานข้อมูลขนาดใหญ่)
limitintegerNoจำนวนผลลัพธ์สูงสุด ค่าเริ่มต้น 50 สูงสุด 500

ส่งคืน

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

การจัดการเนื้อหา

ความสามารถด้านการจัดการเนื้อหาสร้างและแก้ไขโพสต์และหน้า WordPress ระบบจะส่งคืน ID ของโพสต์เพื่อให้ขั้นตอนถัดไปในแผนหลายความสามารถสามารถอ้างอิงเนื้อหาที่สร้างขึ้นได้

create_post

สร้างโพสต์ หน้า หรือรายการประเภทโพสต์แบบกำหนดเองใหม่ใน WordPress

พารามิเตอร์

ParameterTypeRequiredDescription
titlestringYesชื่อโพสต์
contentstringNoเนื้อหาโพสต์ — รองรับข้อความธรรมดา HTML หรือมาร์กอัปบล็อกแบบซีเรียลไลซ์
statusstringNodraft, publish, pending, private ค่าเริ่มต้น draft
post_typestringNoสลักประเภทโพสต์ เช่น post, page หรือ CPT ที่ลงทะเบียนไว้ ค่าเริ่มต้น post
excerptstringNoสรุปสั้นที่แสดงในคลังเก็บและผลการค้นหา
categoriesarrayNoอาร์เรย์ของชื่อหรือ ID หมวดหมู่ที่จะกำหนด
tagsarrayNoอาร์เรย์ของชื่อหรือ ID แท็กที่จะกำหนด
authorintegerNoID ผู้ใช้ WordPress ที่จะตั้งเป็นผู้เขียนโพสต์ ค่าเริ่มต้นเป็นผู้ใช้ปัจจุบัน
datestringNoวันที่เผยแพร่ในรูปแบบ ISO 8601 เช่น 2026-05-01T09:00:00
page_templatestringNoไฟล์เทมเพลตที่จะกำหนดให้โพสต์หรือหน้านี้ เช่น 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 ที่มีอยู่

พารามิเตอร์

ParameterTypeRequiredDescription
post_idintegerYesID ของโพสต์ที่จะอัปเดต
titlestringNoชื่อโพสต์ใหม่
contentstringNoเนื้อหาโพสต์ใหม่
statusstringNoสถานะใหม่: draft, publish, pending, private
excerptstringNoข้อความตัดตอนใหม่
categoriesarrayNoแทนที่รายการหมวดหมู่ทั้งหมดด้วยอาร์เรย์ของชื่อหรือ ID นี้
tagsarrayNoแทนที่รายการแท็กทั้งหมดด้วยอาร์เรย์ของชื่อหรือ ID นี้
page_templatestringNoไฟล์เทมเพลตใหม่ที่จะกำหนดให้โพสต์หรือหน้านี้ เช่น page-full-width.php ส่งสตริงว่างเพื่อลบการกำหนดเทมเพลตและย้อนกลับไปใช้ค่าเริ่มต้นของธีม

ตัวอย่าง — เปลี่ยนเทมเพลตหลังจากสร้าง

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

ส่งคืน { "success": true, "post_id": 42 }


batch_create_posts

สร้างโพสต์หลายรายการในการเรียกความสามารถครั้งเดียว ลดการไปกลับระหว่างการสร้างไซต์หรือการนำเข้าเนื้อหาจำนวนมาก โพสต์จะถูกสร้างตามลำดับ หากรายการหนึ่งล้มเหลว รายการอื่นจะดำเนินต่อไป และจะรายงานความล้มเหลวในอาร์เรย์ผลลัพธ์

พารามิเตอร์

ParameterTypeRequiredDescription
postsarrayYesอาร์เรย์ของออบเจ็กต์โพสต์ โดยแต่ละรายการรองรับพารามิเตอร์เดียวกับ create_post
stop_on_errorbooleanNoหากเป็น 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 รูปภาพจะถูกดาวน์โหลดและนำเข้าโดยอัตโนมัติ

พารามิเตอร์

ParameterTypeRequiredDescription
post_idintegerYesID ของโพสต์หรือหน้าที่จะอัปเดต
attachment_idintegerNoID ของไฟล์แนบ Media Library ที่มีอยู่
urlstringNoURL รูปภาพระยะไกลที่จะนำเข้าและตั้งเป็นรูปภาพเด่น
alt_textstringNoข้อความ Alt ที่จะใช้กับไฟล์แนบหากนำเข้าจาก 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ใช่รายการที่เรียงลำดับของฟิลด์แบบฟอร์ม (ดูอ็อบเจ็กต์ฟิลด์ด้านล่าง)
recipientstringไม่ที่อยู่อีเมลสำหรับรับการส่งแบบฟอร์ม ค่าเริ่มต้นเป็นอีเมลผู้ดูแล WordPress
subjectstringไม่บรรทัดหัวเรื่องอีเมล รองรับ placeholder [your-name] และ [your-subject] เมื่อใช้ Contact Form 7
confirmation_messagestringไม่ข้อความที่แสดงหลังจากส่งสำเร็จ ค่าเริ่มต้น: "Thank you for your message. We'll be in touch soon."

อ็อบเจ็กต์ฟิลด์

คีย์ประเภทจำเป็นคำอธิบาย
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\"]"
}

การตรวจสอบด้วยภาพ

ความสามารถในการตรวจสอบด้วยภาพช่วยให้ agent จับภาพหน้าจอของหน้าที่เผยแพร่แล้วและวิเคราะห์ได้ ทำให้สามารถตรวจสอบการออกแบบโดยอัตโนมัติ เปรียบเทียบก่อน/หลัง และตรวจสอบ visual regression ได้โดยไม่ต้องใช้ส่วนขยายเบราว์เซอร์ใด ๆ

capture_screenshot

จับภาพหน้าจอของหน้า WordPress ที่ URL ที่กำหนดโดยใช้เบราว์เซอร์ headless ฝั่งเซิร์ฟเวอร์ รูปภาพจะถูกบันทึกลงใน Media Library และส่งคืน URL ของ CDN

พารามิเตอร์

พารามิเตอร์ประเภทจำเป็นคำอธิบาย
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

รับภาพหน้าจอสองภาพและส่งคืนคะแนนความแตกต่างทางภาพพร้อมรูปภาพแสดงความแตกต่างที่เน้นบริเวณที่เปลี่ยนแปลง มีประโยชน์สำหรับยืนยันว่าการเปลี่ยนแปลงการออกแบบให้ผลลัพธ์ตามที่คาดไว้ หรือสำหรับตรวจจับ regression ที่ไม่ตั้งใจ

พารามิเตอร์

พารามิเตอร์ประเภทจำเป็นคำอธิบาย
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"]
}
}

ความสามารถที่ติดตั้งได้

รีจิสทรีความสามารถที่ติดตั้งได้ช่วยให้คุณขยาย agent ด้วยชุดความสามารถเพิ่มเติมที่แจกจ่ายเป็น 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"]
}
}