WordPress 7.0 มี AI ในตัวแล้ว — สิ่งที่ Developer ต้องรู้

|
8 นาที ในการอ่าน

WordPress 7.0 เปิดตัวฟีเจอร์ที่น่าตื่นเต้นที่สุดในรอบหลายปี นั่นคือการรวม AI Client เข้ามาเป็นส่วนหนึ่งของ Core โดยตรง ไม่ใช่แค่ Plugin เสริมอีกต่อไป

ที่ผ่านมา ถ้าอยากเพิ่ม AI Feature เข้าไปใน Plugin ต้องทำทุกอย่างเอง ตั้งแต่เชื่อมต่อ API ของแต่ละเจ้า จัดการ API Key ของลูกค้า ไปจนถึง Handle Error ต่างๆ แต่ละ Plugin ก็ทำแบบของตัวเอง ไม่มีมาตรฐานกลาง

WordPress 7.0 เปลี่ยนเรื่องนี้ทั้งหมด ด้วยการสร้าง PHP API กลางที่ทำให้ Plugin บอกแค่ว่า “ต้องการอะไร” แล้วให้ WordPress จัดการหาว่าจะส่งไปให้ AI Model ไหน ไม่ว่า Site นั้นจะใช้ Claude, GPT, หรือ Gemini อยู่ก็ตาม

เริ่มต้นใช้งานตั้งแต่ศูนย์

ก่อนอื่นต้องติดตั้ง AI Provider Plugin ก่อน เลือกได้ตามที่ลูกค้ามี API Key อยู่ จะเป็น Anthropic, Google หรือ OpenAI ก็ได้ทั้งนั้น จากนั้นไปที่ Settings > Connectors แล้วกรอก API Key เข้าไป เท่านี้ก็พร้อมใช้งานแล้ว

สิ่งสำคัญที่ต้องทำก่อนเรียก AI ทุกครั้งคือเช็คว่า Site นั้นมี Provider ตั้งค่าไว้หรือเปล่า เพราะไม่ใช่ทุก Site จะพร้อมใช้งาน AI เสมอ

$builder = wp_ai_client_prompt( 'test' );

if ( ! $builder->is_supported_for_text_generation() ) {
    // ยังไม่ได้ตั้งค่า Provider ไว้ ให้แสดง Notice หรือซ่อน UI ก็ได้
    return;
}

// ถ้าถึงบรรทัดนี้ได้ แปลว่าพร้อมใช้งาน

สร้างข้อความ

จุดเริ่มต้นทุกอย่างอยู่ที่ฟังก์ชันเดียว คือ wp_ai_client_prompt() ซึ่งเป็น Fluent Builder คล้ายกับ Query Builder ที่คุ้นกันดีใน Laravel สามารถ Chain Method ต่อกันได้เรื่อยๆ

$text = wp_ai_client_prompt( 'เขียนคำอธิบาย Meta Description สำหรับบทความเรื่อง WordPress Caching' )
    ->using_system_instruction( 'คุณเป็น SEO Expert ที่เชี่ยวชาญด้าน WordPress' )
    ->using_temperature( 0.7 )  // 0 = แม่นยำ, 1 = สร้างสรรค์
    ->using_max_tokens( 200 )
    ->generate_text();

if ( is_wp_error( $text ) ) {
    error_log( $text->get_error_message() );
    return;
}

echo wp_kses_post( $text );

รับ JSON กลับมาพร้อม Schema

แทนที่จะให้ AI ตอบกลับมาเป็นข้อความแล้วต้องมา Parse เอง สามารถกำหนด JSON Schema ได้เลยว่าอยากได้ข้อมูลหน้าตาแบบไหน เหมาะมากสำหรับงานที่ต้องเอาข้อมูลไปแสดงผลในหน้าเว็บ หรือเก็บลง Database

// กำหนดหน้าตาของข้อมูลที่ต้องการ
$schema = array(
    'type'  => 'array',
    'items' => array(
        'type'       => 'object',
        'properties' => array(
            'title'       => array( 'type' => 'string' ),
            'description' => array( 'type' => 'string' ),
            'category'    => array( 'type' => 'string' ),
            'difficulty'  => array(
                'type' => 'string',
                'enum' => array( 'beginner', 'intermediate', 'advanced' ),
            ),
        ),
        'required' => array( 'title', 'description', 'category', 'difficulty' ),
    ),
);

$json = wp_ai_client_prompt( 'แนะนำ 5 หัวข้อบทความสำหรับเว็บ WordPress Developer ภาษาไทย' )
    ->as_json_response( $schema )
    ->generate_text();

if ( is_wp_error( $json ) ) {
    return;
}

// ได้ Array พร้อมใช้เลย ไม่ต้อง Parse เอง
$topics = json_decode( $json, true );

foreach ( $topics as $topic ) {
    echo '<h3>' . esc_html( $topic['title'] ) . '</h3>';
    echo '<p>' . esc_html( $topic['description'] ) . '</p>';
    echo '<small>หมวด: ' . esc_html( $topic['category'] ) . ' | ระดับ: ' . esc_html( $topic['difficulty'] ) . '</small>';
}

สร้างรูปภาพ

ก่อนสร้างรูปควรเช็คว่า Provider ที่ตั้งค่าไว้รองรับ Image Generation ด้วยหรือเปล่า เพราะไม่ใช่ทุก Provider จะทำได้

$builder = wp_ai_client_prompt( 'test' );

if ( ! $builder->is_supported_for_image_generation() ) {
    echo 'Provider ที่ตั้งค่าไว้ไม่รองรับการสร้างรูปภาพ';
    return;
}

เมื่อแน่ใจแล้วว่ารองรับ ก็สร้างได้เลย:

use WordPress\AiClient\Files\Enums\FileTypeEnum;
use WordPress\AiClient\Files\Enums\MediaOrientationEnum;

$image_file = wp_ai_client_prompt( 'ภาพ Hero Banner สำหรับเว็บ Tech Blog สไตล์ Minimal สีน้ำเงินเข้ม' )
    ->as_output_file_type( FileTypeEnum::inline() )
    ->as_output_media_orientation( MediaOrientationEnum::from( 'landscape' ) )
    ->generate_image();

if ( is_wp_error( $image_file ) ) {
    return;
}

echo '<img src="' . esc_url( $image_file->getDataUri() ) . '" alt="Hero Banner">';

ถ้าอยากได้หลายแบบให้ลูกค้าเลือก ขอมาหลาย Variation พร้อมกันได้เลย:

$images = wp_ai_client_prompt( 'โลโก้สำหรับร้านกาแฟสไตล์ Minimalist พื้นหลังขาว' )
    ->as_output_media_orientation( MediaOrientationEnum::from( 'square' ) )
    ->generate_images( 4 );  // ขอมา 4 แบบพร้อมกัน

if ( is_wp_error( $images ) ) {
    return;
}

echo '<div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem;">';
foreach ( $images as $index => $image ) {
    echo '<div>';
    echo '<img src="' . esc_url( $image->getDataUri() ) . '" style="width: 100%;">';
    echo '<button onclick="selectImage(' . $index . ')">เลือกแบบนี้</button>';
    echo '</div>';
}
echo '</div>';

เลือก Model ที่ต้องการแบบ Fallback

ถ้า Plugin ต้องการ Model เฉพาะเจาะจง สามารถระบุลำดับ Fallback ไว้ได้เลย WordPress จะเลือก Model แรกที่มีให้ใช้งานได้บน Site นั้น และถ้าไม่มีสักตัวก็จะ Fallback ไปหา Model ที่เหมาะสมที่สุดให้เองโดยอัตโนมัติ

$result = wp_ai_client_prompt( 'วิเคราะห์ Tone ของบทความนี้และแนะนำวิธีปรับปรุง' )
    ->using_model_preference(
        'claude-sonnet-4-6',       // อยากได้ตัวนี้มากที่สุด
        'gemini-3.1-pro-preview',  // ถ้าไม่มีก็ตัวนี้
        'gpt-5.4'                  // หรืออันนี้ก็ได้
    )
    ->generate_text_result();

if ( is_wp_error( $result ) ) {
    return;
}

// ดูได้ว่า Model และ Provider ไหนตอบกลับมาจริงๆ
$model    = $result->getModelMetadata();
$provider = $result->getProviderMetadata();
$tokens   = $result->getTokenUsage();  // ดู Token ที่ใช้ไป

error_log( 'ใช้ Model: ' . $model->getName() . ' จาก ' . $provider->getName() );
error_log( 'Token ที่ใช้: ' . $tokens->getTotal() );

ข้อมูลจาก generate_text_result() แทน generate_text() มีประโยชน์มากสำหรับ Debug หรือถ้าต้องการ Track ค่าใช้จ่ายจากการใช้ AI ของ Site

เชื่อมกับ REST API

สำหรับงานที่ต้องให้ JavaScript ฝั่ง Front-end เรียกใช้ วิธีที่แนะนำคือสร้าง REST Endpoint เฉพาะขึ้นมาแล้วควบคุม Permission เองที่ฝั่ง PHP ไม่ควรให้ JS เรียก AI โดยตรง เพราะจะควบคุมสิทธิ์การเข้าถึงได้ยากกว่ามาก

add_action( 'rest_api_init', function () {
    register_rest_route( 'myplugin/v1', '/generate-description', array(
        'methods'             => 'POST',
        'callback'            => 'myplugin_generate_description',
        'permission_callback' => function () {
            return current_user_can( 'edit_posts' );
        },
    ) );
} );

function myplugin_generate_description( WP_REST_Request $request ) {
    $product_name = sanitize_text_field( $request->get_param( 'product_name' ) );

    $result = wp_ai_client_prompt(
        sprintf( 'เขียนคำอธิบายสินค้าสำหรับ "%s" ความยาวประมาณ 100 คำ', $product_name )
    )
        ->using_system_instruction( 'คุณเป็นนักเขียน Copywriter ภาษาไทยที่เชี่ยวชาญด้าน E-commerce' )
        ->using_temperature( 0.8 )
        ->generate_text_result();

    return rest_ensure_response( $result );
}

จากนั้นฝั่ง JavaScript เรียกแค่นี้:

const response = await fetch( '/wp-json/myplugin/v1/generate-description', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'X-WP-Nonce': wpApiSettings.nonce,
    },
    body: JSON.stringify({ product_name: 'กระเป๋าหนังแท้ Handmade' }),
} );

const data = await response.json();
console.log( data );

การที่ AI เข้ามาอยู่ใน Core ครั้งนี้ไม่ได้แค่เพิ่ม Feature ใหม่ แต่มันเปลี่ยนวิธีที่ Developer ทำงานกับ AI ใน WordPress ไปเลย เพราะตอนนี้ทุกคนพูดภาษาเดียวกัน ใช้ API ชุดเดียวกัน และ Site Owner จัดการได้จากที่เดียว ไม่ต้องไปวุ่นวายกับ API Key หลาย Plugin อีกต่อไป

บทความนี้อ้างอิงจาก Official Dev Note ของทีม WordPress Core — Introducing the AI Client in WordPress 7.0

Designil PDPA Banner Thai Woo AIO Banner
แชร์:
line

author - aum watcharapon
อั้ม วัชรพล
👨🏻‍💻 ผู้เชี่ยวชาญทางด้าน WordPress

Subscribe to newsletter

doaction จะส่งเพื่อแจ้งเตือนเมื่อมีบทความใหม่ๆ ในเว็บไซต์และสามารถกดยกเลิกได้ตลอดเวลา

บทความอื่นๆ

มีอะไรใหม่ใน WordPress 7.0 ? สรุปฟีเจอร์ สำหรับผู้ใช้และนักพัฒนา

WordPress เวอร์ชั่น 7.0 จะเป็นการอัพเดทครั้งใหญ่ โดยวันเปิดตัวอย่างเป็นทางการ มีกำหนดปล่อยเวอร์ชันเต็มในวันที่ 9 เมษายน 2026 และอยู่ในช่วงระหว่างงาน WordCamp Asia 2026 ที่มุมไบ ประเทศอินเดีย โดยทางเราได้ สรุปฟีเจอร์ออกมาเป็น 6 ฟีเจอร์หลักๆ ดังนี้ 1. ระบบ AI แบบ Native ระบบโครงสร้างพื้นฐาน AI ใหม่ของ WordPress ช่วยให้นักพัฒนาทำงานได้ง่ายขึ้นผ่าน WP AI Client ซึ่งเป็น API ส่วนกลางที่ใช้เชื่อมต่อกับ AI ค่ายต่างๆ เช่น OpenAI, Claude หรือ Gemini ได้อย่างสะดวกโดยไม่ต้องเขียนโค้ดเชื่อมต่อเองทั้งหมด การจัดการ API Key ของบริการภายนอกเหล่านี้จะถูกจัดการรวมไว้ที่หน้า Connectors Settings ซึ่งออกแบบมารองรับทั้ง AI และบริการอื่นๆ ในอนาคต นอกจากนี้ยังมีระบบ […]

อ่านต่อ

หากมีคำถาม หรือต้องการคำปรึกษาเกี่ยวกับ WordPress

สำนักงาน

  • บริษัท ดู แอคชั่น จำกัด
    66 ซอยเพชรเกษม 98/1, ถนนเพชรเกษม,
    แขวงบางแคเหนือ, เขตบางแค
    กรุงเทพมหานคร
    10160
ไอคอน PDPA

เว็บไซต์ของเราใช้คุกกี้เพื่อเสริมประสบการณ์การใช้งานของคุณ

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • เปิดใช้งานตลอด

บันทึกการตั้งค่า