ขอสิทธิ์ใช้งานล่วงหน้า

กรอกชื่อพร้อมอีเมลหรือหมายเลขโทรศัพท์ แล้วเราจะติดต่อกลับพร้อมรายละเอียดการเข้าใช้งาน Tajo

คู่มือการเชื่อมต่อ WooCommerce

คู่มือนี้เชื่อมต่อร้าน WooCommerce เข้ากับ Tajo การเชื่อมต่อประกอบด้วยสองส่วนที่ทำงานร่วมกัน

  • ปลั๊กอิน Tajo for WooCommerce: เก็บอีเวนต์การมีส่วนร่วมแบบเรียลไทม์ (ออเดอร์ ตะกร้า การคืนเงิน รีวิว การส่งฟอร์ม) ภายใน WordPress และส่งไปยัง Tajo ผ่าน outbox ที่คงทนและมีลายเซ็น
  • การเชื่อมต่อ WooCommerce REST: Tajo อ่านข้อมูลลูกค้า ออเดอร์ สินค้า คูปอง การคืนเงิน และรีวิวจากร้านของคุณ เพื่อนำเข้าข้อมูลย้อนหลังและซิงค์ต่อเนื่อง ดูการตั้งค่าแบบใช้ REST อย่างเดียวได้ที่ เอกสารอ้างอิงคอนเน็กเตอร์ WooCommerce

ตัวการตลาดอัตโนมัติเอง (อีเมล SMS WhatsApp ผ่าน Brevo และผู้ให้บริการรายอื่น) ตั้งค่าใน Tajo ไม่ใช่ในปลั๊กอิน หน้าที่ของปลั๊กอินคือนำอีเวนต์ที่เชื่อถือได้ออกมาจาก WordPress

ข้อกำหนดเบื้องต้น

  • WordPress 6.3+ พร้อมสิทธิ์ผู้ดูแลระบบ
  • PHP 7.4+
  • WooCommerce 7.0+ (ปลั๊กอินใช้ได้กับเว็บไซต์ WordPress ที่ไม่มี WooCommerce ด้วย โดยอะแดปเตอร์ฝั่งการค้าจะไม่ทำงานเท่านั้น)
  • บัญชี Tajo ที่สร้างการเชื่อมต่อ WordPress ไว้แล้ว
  • HTTPS บนปลายทางของ Tajo (เป็นจริงเสมอสำหรับ Tajo แบบโฮสต์)

ขั้นตอนที่ 1: ติดตั้งปลั๊กอิน Tajo for WooCommerce

การติดตั้งด้วยตนเอง

Terminal window
# Download the plugin
cd wp-content/plugins
wget https://tajo.io/downloads/woocommerce/tajo-woocommerce-latest.zip
# Verify and unzip
unzip tajo-woocommerce-latest.zip

จากนั้นเปิดใช้งานจากหน้าผู้ดูแลระบบ WordPress

  1. ไปที่ Plugins → Installed Plugins
  2. ค้นหา “Tajo for WooCommerce”
  3. คลิก Activate

คุณอัปโหลดไฟล์ zip ได้โดยตรงผ่าน Plugins → Add New → Upload Plugin เช่นกัน แต่ละรุ่นจะเผยแพร่ค่า SHA-256 checksum ควบคู่กันไว้ที่ tajo.io/downloads/woocommerce/ ปลั๊กอินยังไม่ถูกจดทะเบียนในไดเรกทอรี WordPress.org การติดตั้งด้วยตนเองจึงเป็นวิธีที่รองรับในวันนี้

ขั้นตอนที่ 2: ตั้งค่าการเชื่อมต่อ

ไปที่ WooCommerce → Tajo (บนเว็บไซต์ที่ไม่มี WooCommerce: Settings → Tajo) แล้วกรอกค่าสามอย่างจากการเชื่อมต่อ WordPress ของ Tajo

ฟิลด์ค่า
ปลายทาง TajoURL ของ webhook แบบ HTTPS ที่แสดงใน Tajo เช่น https://alto.tajo.io/api/connectors/wordpress/webhooks/engagement
Binding IDBinding ID ของการเชื่อมต่อจาก Tajo
คีย์ลับสำหรับลงลายเซ็นคีย์ลับที่ใช้ร่วมกัน (32 ถึง 256 อักขระ) ปลั๊กอินจะสร้างคีย์ลับในเครื่องที่แข็งแรงให้ตอนเปิดใช้งาน ให้วางคีย์นั้นลงใน Tajo หรือวางคีย์จาก Tajo ลงที่นี่

ไม่มีค่าคงที่ของ API key ที่ต้องเพิ่มใน wp-config.php อีเวนต์จะรออยู่ใน outbox ในเครื่องอย่างปลอดภัยจนกว่าจะบันทึกครบทั้งสามค่า

จากนั้นตรวจสอบเส้นทางทั้งหมดตั้งแต่ต้นจนจบ

  1. คลิก Queue test event แล้วคลิก Process now
  2. ตาราง outbox สำหรับการส่งควรแสดงว่าอีเวนต์ถูกส่งแล้ว
  3. ใน Tajo ให้ยืนยันว่าอีเวนต์ connection.test มาถึงการเชื่อมต่อ WordPress แล้ว

ปลั๊กอินส่งอะไรบ้าง

ทุกอีเวนต์คือซองข้อมูลขนาดกะทัดรัดที่จำกัดข้อมูลส่วนบุคคลไว้เท่าที่จำเป็น และลงลายเซ็นด้วย HMAC-SHA256 สิ่งที่ออกจาก WordPress มีเพียงฟิลด์ระบุตัวตนสำหรับการมีส่วนร่วม (อีเมล เบอร์โทร ไอดีในระบบ) และเมตาดาต้าของอีเวนต์ที่จำกัดขอบเขตไว้ ไม่มีชื่อ ที่อยู่ทางไปรษณีย์ IP address user agent เนื้อหาความคิดเห็น ฟิลด์ฟอร์มตามอำเภอใจ โน้ตของออเดอร์ หรือข้อมูลการชำระเงิน

อีเวนต์ของ WooCommerce

Hookอีเวนต์
woocommerce_created_customer / woocommerce_update_customercustomer.created / customer.updated
woocommerce_new_product / woocommerce_update_productproduct.created / product.updated
woocommerce_add_to_cart การลบสินค้าออก การใช้หรือยกเลิกคูปองcart.updated (พร้อมสรุปตะกร้าสำหรับโฟลว์ตะกร้าที่ถูกทิ้ง)
woocommerce_cart_emptiedcart.emptied
woocommerce_new_order / woocommerce_update_orderorder.placed / order.updated
woocommerce_order_status_changedorder.status_changed (พร้อม order.fulfilled เมื่อเสร็จสิ้น)
woocommerce_payment_completeorder.paid
woocommerce_order_refundedrefund.created
การอัปเดตสถานะของ WooCommerce Subscriptionssubscription.status_changed

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

อีเวนต์ของ WordPress

  • contact.created / contact.updated / contact.deleted สำหรับบัญชีผู้ใช้
  • content.published / content.updated / content.unpublished สำหรับเนื้อหาสาธารณะ
  • comment.created / comment.status_changed สำหรับความคิดเห็นของผู้เยี่ยมชมและรีวิวสินค้า (โน้ตออเดอร์ภายในของ WooCommerce pingback และ trackback จะไม่ถูกส่งออกไป)
  • form.submitted สำหรับการส่งฟอร์มที่สำเร็จของ Contact Form 7, WPForms, Gravity Forms และ Fluent Forms โดยดึงเฉพาะฟิลด์ระบุตัวตนประเภทอีเมลและเบอร์โทรกับเมตาดาต้าของฟอร์มเท่านั้น ฟิลด์อื่นที่ส่งมาจะถูกทิ้ง

ความน่าเชื่อถือ: outbox สำหรับการส่ง

ปลั๊กอินจะไม่ยิงอีเวนต์ไปยัง Tajo โดยตรงจากการโหลดหน้าเว็บ ทุกอีเวนต์จะถูกเขียนลงตาราง outbox ในเครื่องก่อน แล้วให้ WP-Cron เป็นผู้ส่ง พร้อมด้วย

  • การหน่วงเวลาแบบทวีคูณที่มีขอบเขต (สูงสุด 8 ครั้ง และเคารพค่า Retry-After)
  • dead letter พร้อมปุ่ม Replay dead letters คลิกเดียวในหน้าผู้ดูแลระบบ
  • ขีดจำกัดการเก็บข้อมูล เพื่อไม่ให้ปลายทางที่ติดต่อไม่ได้สะสมข้อมูลส่วนบุคคลไว้ (ส่งแล้ว: 7 วัน, รอในคิว: 30 วัน, dead letter: 30 วันหลังการอัปเดตครั้งล่าสุด)
  • ไอดีอีเวนต์แบบ idempotent การลองใหม่และการส่งซ้ำจึงไม่สร้างข้อมูลซ้ำที่ปลายทาง

หากผู้ให้บริการโฮสต์ของคุณปิด WP-Cron (DISABLE_WP_CRON) ให้เรียก wp-cron.php จากตัวตั้งเวลาจริงอย่างน้อยนาทีละครั้ง

ความยินยอมจะไม่ถูกอนุมาน

การสร้างบัญชี การชำระเงิน การซื้อ และการส่งฟอร์มทั่วไป ไม่ ถือเป็นความยินยอมทางการตลาด อีเวนต์ที่มีมาให้ในตัวจะมีรายการความยินยอมว่างเปล่า หากต้องการบันทึกความยินยอมที่ชัดแจ้ง (เช่น จากช่องติ๊กสมัครรับจดหมายข่าว) ให้ส่งผ่าน hook สำหรับส่วนขยาย

do_action(
'tajo_engagement_emit',
'consent.updated',
array( 'email' => $email ),
array( 'policyVersion' => '2026-07' ),
array(
array(
'channel' => 'email',
'status' => 'opt_in', // or 'opt_out'
'purpose' => 'marketing',
'source' => 'newsletter_checkbox',
'evidence' => array( 'formId' => 'newsletter-footer', 'field' => 'marketing_email' ),
),
),
gmdate( 'c' )
);

hook เดียวกันนี้ให้ปลั๊กอินหรือธีมใดก็ได้ส่งอีเวนต์ของตัวเอง ทุกอย่างผ่านตัวกรองข้อมูล outbox และลายเซ็นชุดเดียวกัน

ขั้นตอนที่ 3: การนำเข้าข้อมูลย้อนหลัง

อีเวนต์แบบเรียลไทม์ครอบคลุมทุกอย่างนับจากการติดตั้งเป็นต้นไป สำหรับประวัติที่เกิดขึ้นก่อนติดตั้งปลั๊กอิน การเชื่อมต่อ WooCommerce REST ของ Tajo จะนำเข้าลูกค้า ออเดอร์ สินค้า คูปอง การคืนเงิน และรีวิวที่มีอยู่เดิม โดยตั้งค่าทั้งหมดที่ฝั่ง Tajo ด้วย WooCommerce REST API key (WooCommerce → Settings → Advanced → REST API สิทธิ์อ่าน) ดูรายละเอียดได้ที่ เอกสารอ้างอิงคอนเน็กเตอร์ WooCommerce

ความเป็นส่วนตัวและ GDPR

  • ปลั๊กอินลงทะเบียนกับ Tools → Export Personal Data และ Tools → Erase Personal Data ของ WordPress อีเวนต์ใน outbox ที่ยังเก็บไว้และตรงกับอีเมลที่ระบุจะถูกส่งออกหรือลบในเครื่อง
  • การลบข้อมูลและการส่งใช้ mutex ร่วมกันแบบปิดกั้นไว้ก่อนเมื่อเกิดข้อผิดพลาด การลบจึงไม่มีทางรายงานว่าเสร็จสิ้นขณะที่เพย์โหลดกำลังถูกส่งอยู่
  • การลบในเครื่องครอบคลุมเฉพาะ outbox ของ WordPress เท่านั้น สำหรับข้อมูลปลายทางให้ส่งคำขอที่ตรงกันใน Tajo
  • การปิดใช้งานจะหยุดการส่งชั่วคราวแต่ยังเก็บการตั้งค่าและอีเวนต์ที่รออยู่ ส่วนการ ลบ ปลั๊กอินจะเอา outbox การตั้งค่า คีย์ลับ และตารางเวลาออกอย่างถาวร

ความเข้ากันได้

  • HPOS: ปลั๊กอินประกาศความเข้ากันได้กับ WooCommerce High-Performance Order Storage และใช้เฉพาะออบเจ็กต์ CRUD กับ hook สาธารณะเท่านั้น
  • WooCommerce Subscriptions: การเปลี่ยนสถานะการสมัครสมาชิกจะถูกเก็บเมื่อส่วนขยายนี้ทำงานอยู่
  • Multisite: การถอนการติดตั้งจะล้างข้อมูลทุกเว็บไซต์ในเครือข่าย

เอกสารอ้างอิงสำหรับการปฏิบัติงาน

การค้นหาความสามารถแบบเซิร์ฟเวอร์ถึงเซิร์ฟเวอร์และการควบคุม outbox เปิดให้ผู้ดูแลระบบใช้งานผ่านการยืนยันตัวตนด้วย Application Password

เมธอดเส้นทางวัตถุประสงค์
GET/wp-json/tajo/v1/capabilitiesเวอร์ชันปลั๊กอิน อะแดปเตอร์ที่ตรวจพบ รายการอีเวนต์ สุขภาพของ outbox
GET/wp-json/tajo/v1/outboxจำนวนรายการใน outbox (ไม่มีการเปิดเผยเพย์โหลด)
POST/wp-json/tajo/v1/outbox/processประมวลผลชุดข้อมูลทันที
POST/wp-json/tajo/v1/outbox/replayส่ง dead letter ซ้ำ

การแก้ไขปัญหา

อาการสาเหตุและวิธีแก้
อีเวนต์ค้างอยู่ที่ “Queued”ยังไม่ได้บันทึกปลายทาง Binding ID หรือคีย์ลับ การส่งจะหยุดไว้จนกว่าจะตั้งค่าครบทั้งสามอย่าง
อีเวนต์ค้างอยู่ที่ “Retrying”โฮสต์ของคุณติดต่อปลายทาง Tajo ไม่ได้ หรือ WP-Cron ไม่ทำงาน ให้ตรวจสอบคอลัมน์ error ในตาราง outbox และการตั้งค่า cron ของคุณ
dead letter สะสมมากขึ้นข้อผิดพลาดที่ลองใหม่ไม่ได้ (มักเป็น Binding ID หรือคีย์ลับที่ผิด) ให้แก้การตั้งค่าแล้วใช้ Replay dead letters
“Enter a valid HTTPS Tajo webhook endpoint”ปลายทางต้องเป็น HTTPS และต้องไม่มีข้อมูลรับรองฝังอยู่ใน URL
อีเวนต์ทดสอบถูกส่งแล้วแต่ไม่มีอะไรใน Tajoตรวจสอบว่าคุณวาง Binding ID จากเวิร์กสเปซและการเชื่อมต่อเดียวกันกับที่ปลายทางนั้นสังกัดอยู่

ขั้นตอนถัดไป

  • เอกสารอ้างอิงคอนเน็กเตอร์ WooCommerce: การซิงค์ REST รายละเอียดลายเซ็น webhook คีย์การตั้งค่า
  • การซิงค์ลูกค้า: การแมปลูกค้า WooCommerce เข้าสู่ระบบบันทึกข้อมูลหลักของคุณ
  • ตั้งค่าการทำงานอัตโนมัติสำหรับตะกร้าที่ถูกทิ้ง หลังการซื้อ และการดึงลูกค้ากลับใน Tajo โดยใช้อีเวนต์ cart.updated, order.placed และ order.fulfilled

ขอสิทธิ์ใช้งานล่วงหน้า

กรอกชื่อพร้อมอีเมลหรือหมายเลขโทรศัพท์ แล้วเราจะติดต่อกลับพร้อมรายละเอียดการเข้าใช้งาน Tajo

ตรวจจับอัตโนมัติ
ผู้ช่วย AI

สวัสดี! ถามฉันเกี่ยวกับเอกสารได้เลย