นี่คือโพสต์ทดสอบสำหรับยืนยันเวิร์กโฟลว์การแปลของ n8n ใน Ghost โดยโฟกัส 3 จุด: คัดลอก หมวดหมู่ จากโพสต์ต้นฉบับ, แปล บทคัดย่อ ตามภาษาเป้าหมาย, และ เขียนลิงก์บล็อกภายในใหม่ ให้ชี้ไปยังเวอร์ชันภาษาที่ถูกต้อง แทนที่จะย้อนกลับไปยังต้นฉบับภาษาอังกฤษ เมื่อยืนยันผลครบแล้ว ควรลบโพสต์นี้ออกจากระบบเผยแพร่
เป้าหมายของการทดสอบนี้
ก่อนหน้านี้เวิร์กโฟลว์แปลของ n8n เคยมีปัญหา 2 กลุ่มหลัก:
- โพสต์แปลบางรายการไม่มี
categoryและcustom_excerpt - ลิงก์ภายในในบทความแปลยังชี้ไปยัง URL ภาษาอังกฤษ
ผลกระทบคือหน้าแปลขาด metadata ที่จำเป็น และกลุ่ม hreflang อ่อนลง เพราะผู้อ่านในภาษาหนึ่งอาจถูกส่งไปยังบทความภาษาอังกฤษโดยไม่ตั้งใจ
โพสต์นี้จึงใช้เป็น smoke test เพื่อยืนยันว่าเวิร์กโฟลว์ล่าสุดสามารถทำงานกับ Ghost ได้ถูกต้องตั้งแต่ต้นทางถึงปลายทาง
สิ่งที่ต้องตรวจสอบหลังรันเวิร์กโฟลว์
เมื่อเผยแพร่โพสต์นี้ เวิร์กโฟลว์ n8n ควรรัน 1 ครั้ง และสร้างฉบับแปล 11 ภาษาใน Ghost ไม่ว่าจะเป็นฉบับร่างหรือโพสต์ที่เผยแพร่แล้ว
ให้ตรวจสอบแต่ละฉบับแปลตาม checklist นี้:
- ฟิลด์
custom_excerptต้องมีบทคัดย่อที่แปลแล้ว และต้อง ไม่ว่าง - ฟิลด์
categoryต้องมีค่าTutorialsตามโพสต์ต้นฉบับ - ลิงก์ภายในบทความต้องถูกเขียนใหม่ให้ตรงกับภาษาของโพสต์ เช่น ฉบับภาษาญี่ปุ่นควรใช้:
https://apidog.com/jp/blog/free-cursor-ai/
ไม่ใช่ URL ภาษาอังกฤษ
https://apidog.com/blog/free-cursor-ai/
ลิงก์สำหรับยืนยันการเขียน URL ใหม่
ส่วนนี้ตั้งใจใส่ลิงก์ 2 รูปแบบ เพื่อทดสอบ regex ที่ใช้เขียนลิงก์ภายในใหม่
- แบบ URL เต็ม: อ่านเกี่ยวกับ การใช้ Cursor AI ฟรี หรือ การรับ Claude Pro ฟรี
- แบบสัมพันธ์กับ root: ดูบทความ 10 อันดับแรกของการทดสอบ API และบทความเกี่ยวกับ LLM ที่ไม่มีข้อจำกัด
ผลลัพธ์ที่คาดหวังคือ URL เหล่านี้ต้องถูกเขียนใหม่ตาม locale ของแต่ละภาษา เช่น:
/jp/blog/{slug}/
สำหรับภาษาญี่ปุ่น และ:
/id/blog/{slug}/
สำหรับภาษาอินโดนีเซีย
กรณีภาษาอินโดนีเซียต้องตรวจสอบเป็นพิเศษว่าใช้ /id/blog/{slug}/ ไม่ใช่ /ig/blog/{slug}/
นอกจากนี้โพสต์ที่สร้างใน Ghost ควรมี:
- slug ลงท้ายด้วย
…-id - tag เป็น
1Locale ID
ส่วนนี้ใช้ติดตามผลของ Req 6
ตรวจสอบด้วย curl หลังเผยแพร่
ใช้คำสั่งนี้เพื่อตรวจสอบว่าโพสต์แปลถูกเผยแพร่และเข้าถึงได้:
# Verify a translation came out cleanly (after publishing):
curl -I https://apidog.com/jp/blog/translation-pipeline-smoke-test/
# expect 200, and the rendered page to show
# - "Tutorials" category badge
# - a Japanese excerpt under the title
# - any internal links rewritten to /jp/blog/...
ผลลัพธ์ที่ต้องการ:
HTTP/2 200
จากนั้นเปิดหน้าที่ render แล้วตรวจสอบด้วยสายตาอีกครั้งว่า:
- มี badge หมวดหมู่
Tutorials - มี excerpt ภาษาญี่ปุ่นใต้ชื่อบทความ
- ลิงก์ภายในถูกเปลี่ยนเป็น
/jp/blog/...
แนวทางล้างข้อมูลหลังยืนยันผล
เมื่อฉบับแปลทั้ง 11 รายการถูกต้องครบ ให้ลบโพสต์นี้และฉบับแปลทั้งหมดออกจาก Ghost เพราะโพสต์นี้มีไว้เพื่อทดสอบเท่านั้น ไม่ควรอยู่ใน production
ถ้าพบปัญหาอย่างใดอย่างหนึ่งต่อไปนี้ ให้เก็บโพสต์ไว้เพื่อ debug:
- หมวดหมู่หายไป
-
custom_excerptว่าง - ลิงก์ภายในยังชี้ไปยังภาษาอังกฤษ
- locale path ผิด เช่น
/ig/แทน/id/ - slug หรือ tag ไม่ตรงกับที่คาดไว้
เมื่อเจอเคสผิดพลาด ให้แจ้งเจ้าของเวิร์กโฟลว์ n8n พร้อม URL ของโพสต์ที่มีปัญหาและผลลัพธ์ที่ตรวจพบไว้ในรายงานเดียวกัน

Top comments (0)