ChangelogGato AI Translations for Polylang
Gato AI Translations for Polylang
ต่อไปนี้คือการเปลี่ยนแปลงทั้งหมดในแต่ละเวอร์ชันของปลั๊กอิน Gato AI Translations for Polylang
18.0.0
วันที่วางจำหน่าย: 20/05/2026
การเปลี่ยนแปลงที่ทำให้ระบบเดิมใช้งานไม่ได้
- วิธีการแปลบล็อก Gutenberg เพิ่มเติม วิดเจ็ต Elementor และองค์ประกอบ Bricks มีการเปลี่ยนแปลง
เพิ่มใหม่
- รองรับ ChatGPT 5.4 mini (#2319)
- รองรับ Claude Opus 4.7 (#2320)
- ใช้ API key สำหรับ ChatGPT และ Claude จาก AI Connectors ของ WordPress 7.0 หากไม่ได้ตั้งค่าในการตั้งค่าปลั๊กอิน (#2324)
- รองรับ Gemini เป็นผู้ให้บริการแปลภาษา พร้อมการสำรอง API key จาก AI Connectors ของ WordPress 7.0 (#2325)
- แปลบล็อกที่เป็น PHP เท่านั้น (#2329)
- แปลบล็อก Advanced Custom Fields (ACF) (#2339)
- เพิ่มลิงก์ด่วน "Gato Translate" ในหน้ารายการ CPT และมีเดีย (#2359)
- เพิ่มลิงก์ด่วน "Gato Translate" ในหน้ารายการแท็ก หมวดหมู่ และผู้ใช้ (#2384)
- เพิ่มปุ่ม "Gato Translate" เพื่อแปลเมนูด้วยตนเอง (#2385)
- แปลการอ้างอิงเมนูในบล็อก Navigation ของ GenerateBlock (
generateblocks-pro/classic-menu) (#2371) - ลงทะเบียน WordPress AI Abilities (ผ่าน Abilities API) เพื่อแปลโพสต์แบบกำหนดเอง เทอมของแท็กซอนอมี มีเดีย เมนู และผู้ใช้ (#2386)
- รองรับบล็อก Kadence (#2389)
- รองรับบล็อก Greenshift (#2389)
- รองรับบล็อกทั้งหมดที่ใช้ไฟล์คอนฟิก WMPL (wpml-config.xml) (#2389)
- การตั้งค่า "Translation Timeouts" (#2392)
การปรับปรุง
- กำหนดให้ ChatGPT 5.4 mini เป็นโมเดลเริ่มต้นใหม่ (#2319)
- ทดสอบจนถึง WordPress 7.0 (#2323)
- ตั้งค่าผู้ให้บริการแปลเริ่มต้นเป็นบริการ AI แรกที่มี API key ผ่าน AI Connectors ของ WP 7.0 (#2326)
- แปลแอตทริบิวต์บล็อกแบบกำหนดเองผ่าน PHP hooks ด้วย regex (แทนที่ GraphQL) (#2332)
- แปลวิดเจ็ต Elementor แบบกำหนดเองผ่านการตั้งค่า PHP hooks (แทนที่ GraphQL) (#2337)
- แปลองค์ประกอบ Bricks แบบกำหนดเองผ่านการตั้งค่า PHP hooks (แทนที่ GraphQL) (#2338)
- อนุญาตให้แปลโพสต์แบบกำหนดเองที่ไม่มีผู้เขียน (#4cf7c879)
- ปรับปรุงประสิทธิภาพปลั๊กอิน: รันการแปลได้เร็วขึ้นมาก (#2340)
- ปรับปรุงประสิทธิภาพปลั๊กอิน: ใช้หน่วยความจำน้อยลง (#2341)
- ปรับปรุงประสิทธิภาพปลั๊กอิน: แคช queries ที่คอมไพล์แล้ว (#2347)
- แทนที่สิ่งที่เลิกใช้ใน PHP 8.5 (#2350)
- แปลวิดเจ็ต
icon-boxของ Elementor (#05415577) - ระงับคำเตือน "Block type is not server-side registered" (#2358)
- เพิ่มการรองรับโมเดล
GPT-5.5(gpt-5.5) ของ OpenAI (#2360) - เพิ่มการรองรับโมเดล
DeepSeek v4(deepseek-v4-pro) และDeepSeek v4 Flash(deepseek-v4-flash) (#2360) - เพิ่มการรองรับโมเดล
Claude Sonnet 4.6(Claude claude-sonnet-4-6) และHaiku 4.5(claude-haiku-4-5) (#2360) - แปล entity reference ID ในหน้า Elementor และ Bricks (#2362)
- แปล entity reference ID ในบล็อก Gutenberg (#2366)
- หลีกเลี่ยงความขัดแย้งกับปลั๊กอิน BBQ Firewall (#2380)
- อัปเดตรายการภาษาที่รองรับสำหรับ DeepL (#2381)
- อัปเดตรายการภาษาที่รองรับสำหรับ Google Translate (#2382)
- รวมประเภทโพสต์และชื่อโพสต์แบบกำหนดเองที่อ้างอิง แท็กซอนอมีและชื่อเทอมที่อ้างอิง หรือชื่อเมนูที่อ้างอิง ในคำเตือนที่แสดงเมื่อไม่พบรายการที่แปลแล้วสำหรับความสัมพันธ์ฟิลด์แบบกำหนดเอง (#2388)
แก้ไข
- จัดการการตอบสนอง null จาก license API (เช่น เมื่อถูกปฏิเสธการเข้าถึงผ่านเครือข่าย) (#2322)
- ป้องกันการลบไฟล์มีเดียที่ใช้ร่วมกัน (
original_image, เวอร์ชันที่แก้ไขและภาพขนาดย่อ) เมื่อลบการแปลหนึ่งรายการในขณะที่การแปลที่เกี่ยวข้องยังอ้างอิงถึงไฟล์นั้น (บั๊กจาก Polylang: github.com/polylang/polylang/issues/1883) (#2364) - การลบ meta ที่แปลไม่สำเร็จสำหรับภาษาที่ไม่ใช่ค่าเริ่มต้น (#2387)
- ไม่เพิ่มข้อความเตือนเกี่ยวกับ entity ID ที่หายไปหากได้รับการแปลไปแล้ว เมื่อทำ "Translate content" ใน "Partial Translations" (#2391)
- แก้ไขบั๊กหลายรายการ (#2392)
17.1.2
วันที่วางจำหน่าย: 07/04/2026
การปรับปรุง
- เพิ่มการรองรับ Elementor v4 (#2318)
แก้ไข
- ไม่ดำเนินการแปลใน plugins.php เผื่อว่า PLL() ของ Polylang หายไป (#2317)
17.1.1
วันที่วางจำหน่าย: 24/03/2026
แก้ไข
- ความขัดแย้งกับปลั๊กอิน "All In One Security" (#2315)
17.1.0
วันที่วางจำหน่าย: 23/03/2026
เพิ่มใหม่
- รองรับการใช้โมเดล LLM แบบ self-hosted (รันบนเซิร์ฟเวอร์ของตัวเอง) เป็นผู้ให้บริการแปล (#2309)
- รองรับ ChatGPT 5.4 (#2310)
การปรับปรุง
- ปิดการซิงค์ meta ของ Polylang (#2307)
- ลดความต้องการหน่วยความจำขั้นต่ำจาก 1 GB เป็น 512 MB (#2312)
แก้ไข
- แก้ไข Bricks templates ที่ไม่ซิงค์ประเภทเทมเพลต (#2307)
- จัดเก็บ meta ของ Bricks templates ภายใต้ meta key ที่ถูกต้อง (#2308)
- ความขัดแย้งกับปลั๊กอิน "All In One Security" (#6c76aa6)
17.0.0
การปรับปรุง
- ตรวจสอบความถูกต้องของ license ปลั๊กอินกับร้านค้าใหม่ที่ขับเคลื่อนด้วย FluentCart ของ Gato (#2303)
แก้ไข
- แก้ไข - แสดงการอัปเดตเวอร์ชันใหม่เมื่อคลิกลิงก์ Show details ในการอัปเดตปลั๊กอิน
16.1.0
เพิ่มใหม่
- แปลคำอธิบายของผู้ใช้ (#2280)
- แปลคำอธิบายของผู้ใช้ผ่าน WP-CLI (#2281)
- รองรับ Claude Opus 4.6 (#2297)
การปรับปรุง
- อนุญาตให้แสดง log ในลำดับย้อนกลับ (#2279)
- ส่งพารามิเตอร์
--default-providerให้ WP-CLI สำหรับเมนู (#2282) - ตรวจสอบว่าเซิร์ฟเวอร์ PHP มีหน่วยความจำ 1GB (#2283)
- เพิ่มลิงก์ไปยัง URL เอกสารที่อธิบายวิธีเพิ่มหน่วยความจำสำหรับปลั๊กอิน (#2284)
แก้ไข
- ไม่แสดง input สำหรับโพสต์แบบกำหนดเองในฟอร์ม "Gato Translate (Custom)" สำหรับแท็กซอนอมี (#45b09e9f)
- ดำเนินการแปลเมนูเมื่อการแปลอัตโนมัติสำหรับ CPT ถูกปิดใช้งาน (#271a08c5)
16.0.3
แก้ไข
- ข้อผิดพลาด "variable 'menuEntityReferenceTranslationLanguageIDs' has not been defined in the operation" (#2278)
16.0.2
แก้ไข
- การแก้ไข Bricks templates ทำให้เกิดข้อยกเว้น (#2276)
16.0.0
การเปลี่ยนแปลงที่ทำให้ระบบเดิมใช้งานไม่ได้
- ไม่สามารถปรับแต่ง prompt สำหรับบริการ AI ได้อีกต่อไป (#2271)
- ย้าย prompt ไปยังแท็บ "AI Translation Options" ในการตั้งค่า (#2271)
เพิ่มใหม่
- โมเดล ChatGPT 5.2 (#2248)
- แปลเมนู (#2253)
- แปลเมนูผ่าน WP-CLI (#2260)
- แปล entity reference ของเมนูสำหรับวิดเจ็ต "WordPress Menu" ของ Elementor (#2266)
- แปล entity reference ของเมนูสำหรับองค์ประกอบ "Nav Menu" ของ Bricks (#2267)
- เพิ่ม CPT "AI Prompt" เพื่อจัดเก็บ prompt แบบกำหนดเอง (#2272)
การปรับปรุง
- กำหนดโมเดล "GPT-5.2 (Thinking)" เป็นโมเดลเริ่มต้นสำหรับ ChatGPT (#2248)
- การแปล entity reference สามารถแปลสตริงได้ด้วย (สำหรับ slugs) (#2265)
15.3.0
เพิ่มใหม่
- การตั้งค่าใน Bricks เพื่อเปิด/ปิดการแทนที่คอมโพเนนต์ (#2218)
- อนุญาตให้ประมวลผลเฉพาะการแปลที่ล้มเหลว (#2220)
- ในหน้ารายการ Posts/Media/Tags/Categories: จัดสไตล์ไอคอนแก้ไข Polylang ด้วยพื้นหลังสีเหลืองสำหรับการแปลที่ล้มเหลว (#2221)
- เพิ่มตัวกรองในหน้ารายการ Posts/Media เพื่อแสดงเฉพาะรายการที่การแปลล้มเหลว (#2222)
- รองรับรูปแบบเก่าของบล็อก
core/listของ Gutenberg (#2233) - รองรับ Claude Opus 4.5 และ Sonnet 4.5 (#2234)
- เพิ่มพารามิเตอร์
--process-failedให้คำสั่ง WP-CLI (#2245)
การปรับปรุง
- แปล slug ได้ดีขึ้น โดยลบ "-" ทั้งหมดออกจาก slug ที่จะแปล (#2217)
- ซิงค์หมวดหมู่/แท็ก/รูปภาพหน้าปกของโพสต์แบบกำหนดเองเฉพาะสำหรับภาษาเป้าหมาย ไม่ใช่ทุกภาษา (#2223)
- ลบรายการ meta เฉพาะสำหรับภาษาเป้าหมาย ไม่ใช่ทุกภาษา (#2224)
- เปิดใช้งานระดับ log DEBUG โดยค่าเริ่มต้น (#2229)
- แสดงคำเตือน (แทนข้อผิดพลาด) เมื่อ entity ไม่ได้รับการแปล (#2235)
- ปรับปรุงข้อความแสดงข้อผิดพลาด "lower number of translations" พร้อมวิธีแก้ไข (#2236)
- ปรับปรุงคำอธิบายสำหรับตัวเลือก "Translate custom posts separately?" (#2240)
แก้ไข
- ไม่แสดงตัวเลือก "Display query execution response in logs?" ก่อนป้อน license key (#2239)
- ละเว้นตัวเลือก "Translate custom posts separately?" สำหรับรายการ meta ของมีเดีย (#2241)
- ไม่เขียนทับเนื้อหา Bricks/Elementor เมื่อ "Translate content" ถูกปิดใช้งาน (#2243)
15.2.1
แก้ไข
- ปัญหา WordPress 6.9: Queries ไม่ถูกจัดเก็บอย่างถูกต้องใน DB (#2219)
15.2.0
เพิ่มใหม่
- แปลลิงก์ URL ภายใน (ใน: เนื้อหา Gutenberg/Classic Editor/Bricks/Elementor, meta fields) (#2143)
- แปลลิงก์ ACF (#2145)
- รองรับการแปล GenerateBlocks (บล็อก GeneratePress) (#2139)
- รองรับการแปลบล็อก Yoast SEO (#2163)
- การผสานรวมกับ ACF: แปล entity reference สำหรับประเภทฟิลด์ "Page Link" (#c573064)
- หาก slug ถูกระบุในภาษาต้นทาง ให้แปล slug นั้น (เช่น ไม่สร้างจากชื่อที่แปลแล้ว) (#2185)
- การแปลบางส่วน (ตามงาน และตามส่วนของเนื้อหา) (#2195)
- โมเดล ChatGPT 5.1 (#2203)
- รองรับการแปลโพสต์ที่ CPT จัดการโดย Elementor แต่ไม่ได้สร้างด้วย Elementor (#2207)
- รองรับฟีเจอร์ "reuse slugs" จาก Polylang Pro (#2211)
การปรับปรุง
- ดำเนินการแปลครั้งเดียวสำหรับแท็ก/หมวดหมู่ที่สร้างทั้งหมด (#2134)
- ดำเนินการแปลครั้งเดียวสำหรับรายการมีเดียที่อัปโหลดทั้งหมด (#2135)
- แสดงคำเตือนเมื่อโพสต์แบบกำหนดเองสำหรับการแปลอยู่ในถังขยะ (#2137)
- เพิ่มพารามิเตอร์
--fail-if-log-notificationsให้คำสั่ง WP-CLI เพื่อพิมพ์ ID เฉพาะเมื่อมีการเพิ่มรายการ log ระหว่างการดำเนินการ (#2138) - เพิ่มพารามิเตอร์
--partsให้คำสั่ง WP-CLI เพื่อเลือกส่วนที่จะแปล (#2184) - เพิ่มพารามิเตอร์
--tasksให้คำสั่ง WP-CLI เพื่อเลือกงานที่จะดำเนินการ (#2195) - ตรวจสอบว่าจำนวนการแปลที่ผู้ให้บริการ API คืนมาเท่ากับจำนวนสตริงที่จะแปล (#2161)
- ลบ " (the)" ที่ท้ายชื่อประเทศ (#2165)
- ปรับปรุง prompt เพื่อหลีกเลี่ยงการ escape แอตทริบิวต์ HTML (#2166)
- ปรับปรุง prompt เพื่อแปลข้อความภายใน HTML tags (#0334741)
- เพิ่มการตั้งค่าเพื่อปิดการพิมพ์รายการ
queryExecutionResponseใน logs (#2174) - เพิ่มการตั้งค่าเพื่อเลือกส่วนของโพสต์แบบกำหนดเองที่จะแปล ได้แก่ properties, content และ meta (#2176)
- เพิ่มการตั้งค่าเพื่อเลือกส่วนของแท็กซอนอมีที่จะแปล ได้แก่ properties และ meta (#2178)
- จัดเรียงตัวแปรใน logs (#2175)
- แปลเนื้อหาโพสต์ด้วยแม้จัดการโดย Page Builders (Elementor/Bricks) (#2201)
- กำหนดโมเดล "GPT-5.1 (Thinking)" เป็นโมเดลเริ่มต้นสำหรับ ChatGPT (#2203)
- ใช้ 2000 ตัวอักษรเป็นขนาด payload สูงสุดโดยค่าเริ่มต้น (เพื่อทำให้การแปลเร็วขึ้น) (#2214)
- ทดสอบจนถึง WordPress 6.9 (#2215)
แก้ไข
- ลบโค้ดจาก GraphQL query สำหรับปลั๊กอินที่ถูกปิดใช้งาน (#2139)
- การแปลเฉพาะ properties ไม่ทำงาน (#1a3bd58)
- ใช้ ChatGPT เป็นผู้ให้บริการแปลเริ่มต้นเมื่อยังไม่ได้ตั้งค่า (#2172)
- แปลการอ้างอิง reusable block เมื่อแปลโพสต์มากกว่า 1 โพสต์ (#2173)
- แปลบล็อกที่มีช่องว่างที่ไม่ตัดคำ "U+00A0" (ไม่ใช่ช่องว่างปกติ) (#2202)
- สำหรับ slugs ให้แปล slug ต้นทางของแท็ก/หมวดหมู่แทนชื่อ (#2208)
- ปรับปรุง regex สำหรับค้นหา/แทนที่สตริงภายในบล็อก Gutenberg เพื่อหลีกเลี่ยงข้อผิดพลาด "Backtrack limit exhausted" (#2213)
- คำเตือน "Undefined array key"
15.1.0
- ข้ามเวอร์ชัน (คงเวอร์ชันเดียวกับปลั๊กอิน Gato GraphQL)
15.0.1
- หลีกเลี่ยงข้อยกเว้นเมื่อจัดลำดับฟิลด์ ACF ใหม่ (#2101)
15.0.0
เพิ่มใหม่
- ใช้ prompt เดียวกันสำหรับบริการ AI ทั้งหมด (#2068)
แก้ไข
- ความขัดแย้งกับปลั๊กอิน Nelio A/B Testing (#2066)
- การตั้งค่าคุณสมบัติบนคลาส BasicService (#2067)
14.0.4
แก้ไข
- ข้อยกเว้นเมื่อเริ่มต้นปลั๊กอินและมีปลั๊กอินที่ขัดแย้งติดตั้งอยู่ในไซต์ (#2065)
14.0.2
แก้ไข
- ไม่ทริกเกอร์การแปลเมื่อผู้ใช้ไม่ได้เข้าสู่ระบบ เพื่อหลีกเลี่ยงข้อผิดพลาด "You must be logged in to create or update custom posts" (#2063)
- ข้อความเตือนเมื่อแปล meta และไม่มีรายการแปลโพสต์แบบกำหนดเองอยู่ (#2064)
14.0.0
การเปลี่ยนแปลงที่ทำให้ระบบเดิมใช้งานไม่ได้
- อัปเกรดเวอร์ชัน PHP ขั้นต่ำจาก 7.4 เป็น 8.1 (#2057)
- ต้องระบุ API key ของ OpenRouter อีกครั้ง
- Hardcode meta key
_wp_page_templateเพื่อคัดลอก ลบออกจากค่าเริ่มต้นของ Meta Configuration (#1992) - เพิ่มการผสานรวมกับปลั๊กอิน SEO, ACF และ Meta Box (ดูด้านล่าง) ดังนั้น meta keys จากปลั๊กอินเหล่านี้ (ที่ไม่ได้อยู่ใน Meta Configuration ก่อนหน้า) จะถูกซิงค์/แปลโดยอัตโนมัติ
เพิ่มใหม่
- ข้ามการแปลชื่อที่กำหนดไว้ล่วงหน้าสำหรับแท็ก/หมวดหมู่ (#1925)
- รองรับ glossaries ใน DeepL (#1926)
- ดำเนินการ bulk action "Gato Translate (Custom)" (#1931)
- ซิงค์
menuOrderของโพสต์ (#1948) - ซิงค์ parent ของโพสต์ (#1949)
- แปล arrays ของ arrays ใน meta (เช่น รองรับประเภท group ของ Meta Box) (#1950)
- แปล arrays ของ arrays ใน meta สำหรับ entity ID (เช่น รองรับประเภท group ของ Meta Box) (#1951)
- Override prompt ที่ส่งไปยังบริการ AI ผ่าน hooks (#1954)
- รองรับโมเดลทั้งหมดจาก OpenRouter ผ่าน API (#2003)
- รองรับโมเดล OpenAI 5 (#1979)
- รองรับโมเดล OpenAI 5 ผ่าน OpenRouter (เป็นโมเดลที่กำหนดไว้ล่วงหน้า) (#1981)
- รองรับโมเดล OpenAI 4.1 (#1956)
- รองรับ Claude Opus 4.1 (#1982)
- Hooks เพื่อตอบสนองต่อการดำเนินการ query (#1957)
- Hooks เพื่อ override ตัวแปร GraphQL ก่อนการดำเนินการ query (#1957)
- การผสานรวมกับ Advanced Custom Fields UI (ผ่าน Field Groups) เพื่อกำหนด meta keys ที่จะซิงค์/แปล (#1971)
- การผสานรวมกับ Meta Box UI (ผ่าน Custom Fields) เพื่อกำหนด meta keys ที่จะซิงค์/แปล (#1977)
- การผสานรวมกับปลั๊กอิน SEO เพื่อซิงค์/แปล meta: (#1974)
- All in One SEO
- Rank Math
- SEO Simple Pack
- SEOPress
- Slim SEO
- The SEO Framework
- WP Meta SEO
- Yoast SEO
- เปิด/ปิดการผสานรวมกับปลั๊กอินของบุคคลที่สาม ผ่านแท็บ Plugin Integration Configuration ในการตั้งค่า (#1972)
- เมื่อแปลโพสต์หลายรายการพร้อมกัน เปิดใช้งานการแปลแต่ละโพสต์แยกกัน (ในคำขอของตัวเองไปยัง API) (#1975)
- ดำเนินการแปลด้วยโปรแกรม (ผ่าน
Gato::translateCustomPosts(),Gato::translateTaxonomyTerms()และGato::translateMedia()) (#2030) - ดำเนินการแปลผ่าน WP-CLI (#2039)
- รองรับองค์ประกอบ Countdown ของ Elementor สำหรับการแปล (#2043)
การปรับปรุง
- อัปเกรดปลั๊กอินเป็น dependencies ล่าสุดสำหรับ PHP 8.1 (#2059)
- พิมพ์เนื้อหาของคำขอที่ล้มเหลวใน error logs
- ปรับปรุง prompt ที่ส่งไปยังบริการ AI (เพื่อหลีกเลี่ยงปัญหาเกี่ยวกับ quotes, HTML tags ที่ escaped และการเข้ารหัสตัวอักษร) (#1928)
- แปล properties ภายใน HTML tags: alt, title, placeholder, aria-label, aria-describedby, aria-labelledby, aria-placeholder (#1929)
- จัดเรียงผู้ให้บริการและภาษาในรายการดรอปดาวน์ในการตั้งค่า (#1930)
- เพิ่ม bulk action
Gato Translateเฉพาะเมื่อผู้ใช้มีสิทธิ์edit_posts(#1935) - ตรวจสอบว่าตัวแปรที่อ่านจาก/ไปยังภาษาที่จะแปลอยู่ใน AI prompt (#1937)
- จัดระเบียบแท็บการตั้งค่าใหม่ (#1953)
- ใช้ input การตั้งค่า System message สำหรับ Claude (#1955)
- ปรับปรุงข้อความแสดงข้อผิดพลาดสำหรับ ID ที่โหลดไม่ได้ (#1969)
- ลบโมเดล OpenAI 4.5 preview ที่เลิกใช้งานแล้ว (#1980)
- รองรับ Claude ผ่าน OpenRouter (#1995)
- พิมพ์โมเดลในรายการ log (#1997)
- แสดงการแจ้งเตือนเมื่อ Polylang ถูกปิดใช้งาน (#1998)
- ปรับปรุงข้อความเตือนเมื่อไม่มีโพสต์แบบกำหนดเองที่จะแปล โดยระบุสาเหตุ (#2007)
- ให้วิธีแก้ไขปัญหาในรายการ error log (#2011)
- ใช้ตัวเลือก "Automatically create translation entries" เริ่มต้นสำหรับ CPT ที่ลงทะเบียนผ่านปลั๊กอิน (#2012):
- ACF
- MetaBox
- Custom Post Type UI
- แสดงป้าย notification ในสีต่างกันตามความรุนแรง (#2013)
- เปิดใช้งาน log notifications สำหรับคำเตือนโดยค่าเริ่มต้น (#2014)
- อัปเกรด DeepSeek เป็น v3.1 (#2038)
- เพิ่ม ID ของแท็ก/หมวดหมู่ที่ไม่มีรายการแปลในข้อความเตือน (#2044)
- ถือว่าแท็ก/หมวดหมู่ที่แปลแล้วหายไปเป็นข้อผิดพลาด ไม่ใช่คำเตือน (#2045)
- ถือว่า entities ที่แปลแล้วหายไป (สำหรับ parent ของโพสต์แบบกำหนดเอง, block patterns และ entity relationships ในฟิลด์แบบกำหนดเอง) เป็นข้อผิดพลาด ไม่ใช่คำเตือน (#2046)
- พิมพ์ทั้งข้อผิดพลาดและคำเตือนในรายการ log เดียวกัน (#2047)
- แสดงคำเตือนหรือข้อผิดพลาดสำหรับ ID ที่แปลแล้วหายไปขึ้นอยู่กับว่า CPT/taxonomy/media นั้นสามารถแปลได้หรือไม่ (#2048)
- พิมพ์ debug log เมื่อการสร้างรายการแปลอัตโนมัติสำหรับ CPT นั้นถูกปิดใช้งาน (#2056)
แก้ไข
- ข้อยกเว้นเมื่อ OpenRouter คืนค่าการแปลเป็น
null(#1927) - สร้างหมวดหมู่การแปลโดยใช้
nameต้นทางเป็น slug ไม่ใช่description(#1932) - ไม่แสดงเมนูปลั๊กอินที่ว่างเปล่าสำหรับผู้ใช้ที่ไม่มีสิทธิ์
edit_posts(#1933) - ใช้สิทธิ์
edit_theme_optionsเพื่อแสดง Patterns ในเมนู (#1934) - ไม่ยกเว้นภาษาจากภาษาปัจจุบันในการเชื่อมโยงของ Polylang (#1960)
- แก้ไขการแปลรายการมีเดียที่แนบกับโพสต์ที่ไม่มีภาษา (#1961)
- แก้ไขการแปลหมวดหมู่ที่มี parent ที่ไม่มีภาษา (#1962)
- หลีกเลี่ยงข้อผิดพลาดเมื่อไม่มีภาษาที่จะแปลสำหรับมีเดีย, แท็ก และหมวดหมู่ (#1963)
- ทริกเกอร์การแปลอัตโนมัติบนโพสต์ที่สร้างโดยใช้ WP REST API (#1984)
- ข้อยกเว้นของ Bricks เมื่อทำ Live Preview กับธีมอื่น (#1985)
- ปลั๊กอินไม่ทำงานกับ PHP 7.4 (#2005)
- การอัปเดตโพสต์จัดเก็บวันที่ที่ผิดพลาด (#53f6b66)
- การยืนยันตัวตนผู้ใช้เมื่อดำเนินการ query การแปลที่ทริกเกอร์ผ่าน WP REST API (#68b1ef3)
- หลีกเลี่ยงข้อผิดพลาดจากการแปลต่อเมื่อผู้ให้บริการไม่มี API key ที่ตั้งค่าไว้ (#2037)
- Override prompt ของ OpenRouter ใน Custom Settings (
v14.0.1)
13.2.0
เพิ่มใหม่
- บันทึก API requests เมื่อใช้ Google Translate และ DeepL (#1904)
- ซิงค์ entity ID ใน meta กับ ID ที่สอดคล้องกันสำหรับภาษาเป้าหมาย (#1916)
- ผู้ให้บริการแปลใหม่: OpenRouter (#1923)
การปรับปรุง
- รายการ log "ai-requests" ถูกเปลี่ยนชื่อเป็น "api-requests" (เพื่อรองรับ Google Translate และ DeepL ด้วย) (#1904)
- อัปเดต dependencies เป็นเวอร์ชันล่าสุด (#1907)
- แปลรายการ meta สำหรับรายการมีเดียพร้อมกันทั้งหมด (#1918)
- แปลรายการ meta สำหรับแท็กและหมวดหมู่พร้อมกันทั้งหมด (#1919)
แก้ไข
- เมื่อแปลโพสต์ ให้จัดการสถานะ
futureเป็นpublishเมื่อทำ "Same status as origin" (#1903) - แปลโพสต์ที่ป้องกันด้วยรหัสผ่าน (#1916)
- แปล meta ในรายการมีเดีย (#1916)
- ไม่ใช้ผู้ให้บริการแปลเริ่มต้นที่เลือกไว้หากถูกปิดใช้งาน (#1922)
13.1.0
หมายเหตุ: v13.1.0 ไม่ได้ถูกวางจำหน่าย แต่ถูกวางจำหน่ายโดยตรงเป็น v13.1.1
เพิ่มใหม่
- แท็บ "Translation Options" ใหม่ในการตั้งค่า เพื่อเลือกการแปลหลายภาษาแบบซิงค์/อะซิงค์ (#1833)
- ตัวเลือก "Translate custom post slugs?" ในการตั้งค่า (เพื่อรองรับ shared slugs กับ Polylang PRO) (#1835)
- เพิ่มการผสานรวมกับ Bricks (#1838)
- รองรับบล็อก
htmlของ Gutenberg (#1867) - รองรับการแปล reusable blocks (synced patterns) (#1868)
- กำหนด max payload ของคำขอที่ส่งไปยังผู้ให้บริการ AI (
v13.1.1) (#1897)
การปรับปรุง
- แสดงคำเตือนแทนข้อผิดพลาดหากไม่สามารถอัปเดต slug ของ taxonomy term ได้ (#1842)
- สร้าง queries ใหม่เมื่อ plugin/theme dependency ถูกเปิด/ปิดใช้งาน (#1843)
- คำนวณความยาวสตริงสูงสุดสำหรับการแปลโดยลบจำนวนตัวอักษร prompt ออก (#1860)
- สำหรับข้อผิดพลาด "String to translate exceeds max length" ไม่พิมพ์สตริงเต็มในส่วนหัว log (#1861)
- หลีกเลี่ยงการดำเนินการ GraphQL query หากโพสต์ (cat/tag/media) มีภาษาต่างจากภาษาต้นทางที่ตั้งค่าไว้ (#1862)
- พิมพ์การแจ้งเตือน "There were no items to translate" เมื่อ bulk action ไม่มีรายการที่ถูกต้องที่จะประมวลผล (#1862)
- หากคำขอไปยัง API ล้มเหลว ยังคงดำเนินการแปลสำหรับคำขอที่สำเร็จทั้งหมด (#1872)
- จัดรูปแบบเนื้อหา markdown ใน logs (#1873)
- ข้ามการดำเนินการ query หากมีข้อผิดพลาดในการตรวจสอบการแปล (เช่น ไม่ได้กำหนด API key) (#1877)
- ปรับปรุง prompt สำหรับ Claude (#1879)
- หากสตริงใดล้มเหลวในการตรวจสอบความยาวสูงสุด ยังคงแปลสิ่งอื่นทั้งหมด (#1880)
- เพิ่มภาษาในรายการ log "ai-requests" (#1881)
- สร้างรายการแปลสำหรับ Elementor templates อัตโนมัติ (#1891)
- คงชื่อเดิมใน JSON properties สำหรับ Elementor Widgets เพื่อปรับปรุงการค้นหา/แทนที่สำหรับแปล widgets ใหม่ (
v13.1.1) (#1895) - ปรับปรุงชื่อใน JSON properties สำหรับบล็อก Gutenberg เพื่อปรับปรุงการค้นหา/แทนที่สำหรับแปลบล็อกใหม่ (
v13.1.1) (#1896) - กำหนดสถานะโพสต์ที่แปลแล้วเป็น "Same as origin post" (
v13.1.1) (#1899) - ในการตั้งค่า ย้ายตัวเลือก "Status to update" จาก "Automatic Translation" ไปยัง "General Configuration" (
v13.1.1) (#1900) - แปลรายการสตริงสำหรับ cats/tags/media ด้วย (
v13.1.1) (#1901)
แก้ไข
- กำหนดค่าเริ่มต้นให้รายการการตั้งค่าที่เพิ่มหลังจากบันทึกการตั้งค่าไปยัง DB (#1865)
- ซิงค์รูปภาพหน้าปกเฉพาะเมื่อรองรับสำหรับ CPT นั้น (#1866)
13.0.1
แก้ไข
- การแปลไม่ทำงานหาก Elementor ไม่ได้ติดตั้ง (#1830)
13.0.0
การเปลี่ยนแปลงที่ทำให้ระบบเดิมใช้งานไม่ได้
- ย้าย "Logs" จากแท็บ "Advanced Use" ไปยังแท็บ "Logs" ใหม่ในการตั้งค่า (#1819)
เพิ่มใหม่
- เปิดใช้งาน logs ตามความรุนแรงในการตั้งค่า (#1812)
- ป้ายนับ log ในลิงก์เมนู Logs (#1821)
- รองรับ Claude 4 (#1829)
การปรับปรุง
- ไม่พิมพ์ข้อผิดพลาดที่ซ้อนอยู่กับ
@applyField(#1823) - แสดงข้อผิดพลาดทุกครั้งที่ mutation สร้างข้อผิดพลาด (#1824)
- แสดงคำเตือนทุกครั้งที่ไม่มีรายการที่จะแปล (#1825)
แก้ไข
- การเรียกซ้ำเมื่อแปลรายการมีเดีย (#1828)
12.2.2
แก้ไข
- แก้ไขการแปลเนื้อหา Elementor ที่มี
statusToUpdate: draftและstatusWhenTranslated: publish(#1809)
12.2.1
การปรับปรุง
- กำหนด meta ที่จะซิงค์เสมอ (#1808)
แก้ไข
- ซิงค์ประเภทเทมเพลต Elementor (#1808)
12.2.0
เพิ่มใหม่
- รองรับการแปลสตริงใน arrays และ objects (#1805)
12.1.1
แก้ไข
- ตรวจสอบว่า Elementor PRO คืนค่า
nullใน$document->save()และแปลงเป็น boolean (#1802) - เพิ่มลิงก์ "Edit with Elementor" เมื่อแปลหน้า Elementor (#1803)
12.1.0
เพิ่มใหม่
- แปลวิดเจ็ต
htmlของ Elementor + การตั้งค่าเพื่อเปิด/ปิด (#1790) - ไม่แปลสตริงที่เริ่มต้นด้วย
<!-- gato:translation:ignore -->(#1791)
การปรับปรุง
- เข้ารหัสตัวอักษร Unicode หลายไบต์เมื่อแปลเนื้อหา (#1799)
แก้ไข
- ข้อยกเว้นเมื่ออัปเดตปลั๊กอินด้วยตนเอง (#1795)
- การเผยแพร่หน้า Elementor ผ่าน Quick Links จะไม่ทริกเกอร์การแปล (#1796)
- HTML tags ปิดที่ถูก escape ในเนื้อหาที่แปลโดย ChatGPT (เช่น
<\/p>แทน</p>) (#1797) - ปรับปรุง prompt ของ ChatGPT เพื่อไม่เปลี่ยนแปลง emoji ในข้อความที่แปลแล้ว (#1798)
- Language Switcher จากปลั๊กอิน "Connect Polylang for Elementor" ไม่แสดง (#1081)
12.0.1
แก้ไข
- การแปลวิดเจ็ต
icon-listใน Elementor จะไม่แปลรายการทั้งหมด (#1789)
12.0.0
การปรับปรุง
- ไม่ดำเนินการ logic ของ Gutenberg ใน GraphQL query หาก Classic Editor ทำงานอยู่ (#1782)
การเปลี่ยนแปลงที่ทำให้ระบบเดิมใช้งานไม่ได้
- Hooks สำหรับ inject บล็อก Gutenberg แบบกำหนดเองถูกเปลี่ยนชื่อ
- ซิงค์ meta key
_wp_page_templateโดยค่าเริ่มต้น (#1775) - เปลี่ยนชื่อฟิลด์
PolylangLanguage.isEnabledเป็นisActive(#1744) - เปลี่ยนชื่อ input filter arg
Root.polylangLanguages(filter.enabled:)เป็นactive(#1744)
11.3.0
เพิ่มใหม่
- แปลและซิงค์ meta (โพสต์แบบกำหนดเอง, แท็ก, หมวดหมู่, มีเดีย)
- เพิ่มการตั้งค่าสำหรับ Automatic Sync
การปรับปรุง
- ทดสอบจนถึง WordPress 6.8
แก้ไข
- การแปลสำหรับภาษาที่ไม่ใช้งานต้องไม่แสดงข้อผิดพลาด (#1743)
- โค้ดไม่ถูก downgrade เป็น PHP 7.4 (#1749)
- ข้อความแสดงข้อผิดพลาดการโหลดการแปลใน WordPress 6.8
11.2.0
เพิ่มใหม่
- รองรับการแปลเนื้อหาโดย Page Builders (#1729)
การปรับปรุง
- ไม่ซ้ำโค้ดใน query "translate-customposts" (#1727)
แก้ไข
- ติดตั้งข้อมูลการตั้งค่าปลั๊กอินในคำขอแรกหลังจากเปิดใช้งาน license (#1733)
11.1.2
การปรับปรุง
- ใช้ประเภท
passwordเพื่อเปิดใช้งาน extensions ในการตั้งค่า (#1725)
แก้ไข
- Hook
template_includeสามารถรับค่าnullได้ (อาจเกิดข้อผิดพลาดเมื่อติดตั้ง WooCommerce)
11.1.1
แก้ไข
- หากการแปลสำหรับภาษาต้นทางถูกตั้งค่าเป็น
None (Disable Translation)ในการตั้งค่า อย่ายกเว้นมัน (มิฉะนั้นจะไม่เพิ่มภาษานั้นในการเชื่อมโยงของ Polylang) (#1724)
การปรับปรุง
- เปลี่ยนชื่อการตั้งค่าจาก "DeepSeek Translation" เป็น "DeepSeek" (#1723)
11.1.0
เพิ่มใหม่
- โมเดลใหม่: Claude Sonnet 3.7 (#1719)
- โมเดลใหม่: GPT-4.5 (research preview) (#1721)
การปรับปรุง
- ใช้ context 128k สำหรับ Claude Sonnet 3.7 และกำหนดเป็นโมเดลเริ่มต้น (#1720)
- ปรับปรุงรายการ log โดยไม่ล้อมรอบ JSON ด้วย quotes (#1722)
11.0.4
แก้ไข
- ไม่ลบแท็บ Screen Options ในหน้ารายการโพสต์
11.0.0
การดำเนินการที่จำเป็น
- สำคัญ: ก่อนอัปเดตปลั๊กอินนี้ คุณต้องปิดใช้งาน license ของคุณ จากนั้นอัปโหลดปลั๊กอินใหม่อีกครั้ง (เปลี่ยนชื่อเป็น Gato AI Translations for Polylang) และสุดท้ายเปิดใช้งานอีกครั้งโดยใช้ license key เดิม
การเปลี่ยนแปลงที่ทำให้ระบบเดิมใช้งานไม่ได้
- เปลี่ยนชื่อ Gato Multilingual for Polylang เป็น Gato AI Translations for Polylang (#1716)
- ลงทะเบียน URL changelog สำหรับปลั๊กอิน เพื่อแสดง changelog ของเวอร์ชันใหม่เมื่ออัปเดต (#1707)
เพิ่มใหม่
- รองรับผู้ให้บริการแปลใหม่:
- Mistral AI (#1708)
- DeepSeek (#1714)
- บันทึก response จาก LLM (#1710)
การปรับปรุง
- แสดงชื่อโมเดล (แทนที่โค้ด) ในการตั้งค่า (#1711)
- ลดความซับซ้อนของ queries เพื่อดำเนินการ logic น้อยลง (#1713)
- ไม่ parse บล็อก Gutenberg เมื่อเผยแพร่โพสต์ที่แปลแล้ว (#1717)
แก้ไข
- ปัญหาเมื่อการแปลสำหรับแท็ก/หมวดหมู่หายไป (#1712)
10.5.0
การปรับปรุง
- ไม่เปิดใช้งานการแปลมีเดียหากมีเดียไม่สามารถแปลได้ใน Polylang (#1705)
- เปิดใช้งานการเลือกสถานะหลายรายการเพื่อทริกเกอร์การแปลอัตโนมัติสำหรับ CPT (#1706)
10.4.0
เพิ่มใหม่
- กำหนด API keys เป็นประเภท input
password(#1693) - รองรับการทริกเกอร์ automations บนสถานะโพสต์
future(#1694) - รองรับการคัดลอกวันที่ของโพสต์ต้นฉบับไปยังการแปล (#1697)
- เพิ่ม Claude (Anthropic) เป็นผู้ให้บริการแปล (#1703)
การปรับปรุง
- เปลี่ยนชื่อส่วน Custom Post Types ในการตั้งค่าเป็น General Configuration (#1698)
- กำหนดให้ GraphiQL client แสดงแบบเต็มความกว้าง (#1699)
- จำกัดจำนวนสตริงที่จะแปลในคำขอเดียวตามความยาวสตริง (#1700)
- หากสตริงที่จะแปลสร้างข้อผิดพลาด ไม่ดำเนินการแปล (#1701)
- ไม่รวม
encodedContentItemsใน ChatGPT prompt (#1702) - ปรับปรุงรูปแบบ log (#1704)
10.3.0
เพิ่มใหม่
- เปิด/ปิดการแปลอัตโนมัติตาม CPT/taxonomy/media (#1684)
- พิมพ์คำเตือนใน logs เมื่อรายการแปลสำหรับ CPT/taxonomy/media หายไป (#1690)
แก้ไข
- Override Polylang hooks เฉพาะเมื่อ Gato AI Translations for Polylang มี license ที่ใช้งานอยู่ (#1682)
10.2.0
- เปิดตัวครั้งแรก