ขั้นสูง
ขั้นสูงคำสั่ง WP-CLI

คำสั่ง WP-CLI

คำสั่ง WP-CLI ต่อไปนี้พร้อมใช้งานเพื่อแปลโพสต์แบบกำหนดเอง เทอมของแทกซอโนมี (แท็กและหมวดหมู่) รายการมีเดีย เมนู และผู้ใช้

คำสั่ง WP-CLI ทำงานโดยไม่มีผู้ใช้ที่เข้าสู่ระบบตามค่าเริ่มต้น เพื่อให้มีสิทธิ์ที่เหมาะสมในการสร้างรายการแปล คุณต้องเรียกใช้คำสั่งพร้อมบริบทผู้ใช้ผ่านตัวเลือก --user:

wp gatotranslate post 123 --user=admin

wp gatotranslate post

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

การใช้งาน

wp gatotranslate post <ids> [options]

พารามิเตอร์

พารามิเตอร์คำอธิบาย
<ids>รายการ ID โพสต์ที่ต้องการแปล คั่นด้วยจุลภาคหรือช่องว่าง

ตัวเลือก

หากไม่ได้ระบุ ตัวเลือกจะใช้ค่าที่ตั้งไว้ในการตั้งค่าของปลั๊กอิน

ตัวเลือกคำอธิบายค่าที่เป็นไปได้
--translate-slugs=<bool>ว่าจะแปล slug หรือไม่true, false
--default-provider=<provider>ผู้ให้บริการแปลเริ่มต้นchatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm
--status-to-update=<status>สถานะที่โพสต์ต้องมีเพื่อให้อัปเดตได้draft, pending, publish, private, future, any
--status-when-translated=<status>สถานะที่โพสต์จะมีหลังการแปลdraft, pending, publish, private, current (คือไม่เปลี่ยนสถานะ), same-as-origin (คือคัดลอกสถานะจากโพสต์ต้นฉบับ)
--copy-date=<bool>ว่าจะคัดลอกวันที่จากโพสต์ต้นฉบับหรือไม่true, false
--language-providers=<providers>สตริง JSON ของการแมปผู้ให้บริการตามภาษาสตริง JSON ที่มีรหัสภาษาเป็นคีย์ และชื่อผู้ให้บริการ หรือ "none" (เพื่อปิดใช้งานสำหรับภาษานั้น) หรือ "default" (เพื่อใช้ผู้ให้บริการเริ่มต้น) เป็นค่า
--tasks=<tasks>รายการงานที่จะดำเนินการ คั่นด้วยจุลภาคtranslate-content, translate-entity-relationships, replace-internal-links
--parts=<parts>รายการส่วนของเนื้อหาที่จะแก้ไข คั่นด้วยจุลภาคproperties (ชื่อ, slug และข้อความย่อ), content (เนื้อหาโพสต์), meta (ฟิลด์กำหนดเอง)
--porcelainแสดงเฉพาะข้อมูลที่จำเป็น เหมาะสำหรับการแยกวิเคราะห์โดยสคริปต์ไม่ต้องการค่า (flag)
--fail-if-log-notificationsล้มเหลวหากมีการเพิ่มการแจ้งเตือนในล็อกระหว่างการดำเนินการไม่ต้องการค่า (flag)
--process-failedประมวลผลเฉพาะการแปลที่ล้มเหลวไม่ต้องการค่า (flag)

ตัวอย่าง

# Translate post with ID 123
wp gatotranslate post 123 --user=admin
 
# Translate posts with IDs 123, 456, and 789
wp gatotranslate post 123,456,789 --user=admin
 
# Translate posts with IDs 123 and 456
wp gatotranslate post "123 456" --user=admin
 
# Translate post replicating the status and date of the original post
wp gatotranslate post 123 --user=admin --status-when-translated=same-as-origin --copy-date=true
 
# Translate post using ChatGPT as default provider
wp gatotranslate post 123 --user=admin --default-provider=chatgpt
 
# Translate post with a specific provider for each language
wp gatotranslate post 123 --user=admin --language-providers='{"es":"chatgpt","fr":"deepl"}'
 
# Translate post disabling a specific language
wp gatotranslate post 123 --user=admin --language-providers='{"de":"none"}'
 
# Translate only post properties (title, slug, and excerpt)
wp gatotranslate post 123 --user=admin --parts=properties
 
# Translate only post content and meta
wp gatotranslate post 123 --user=admin --parts=content,meta
 
# Only update the entity relationships for the target language
wp gatotranslate post 123 --user=admin --tasks=translate-entity-relationships
 
# Re-run translations for previously failed posts/languages only
wp gatotranslate post "123 456" --user=admin --process-failed

wp gatotranslate term

แปลเทอมของแทกซอโนมี (หมวดหมู่ แท็ก แทกซอโนมีแบบกำหนดเอง)

การใช้งาน

wp gatotranslate term <ids> [options]

พารามิเตอร์

พารามิเตอร์คำอธิบาย
<ids>รายการ ID เทอมที่ต้องการแปล คั่นด้วยจุลภาคหรือช่องว่าง

ตัวเลือก

ตัวเลือกคำอธิบายค่าที่เป็นไปได้
--translate-slugs=<bool>ว่าจะแปล slug หรือไม่true, false
--default-provider=<provider>ผู้ให้บริการแปลเริ่มต้นchatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm
--language-providers=<providers>สตริง JSON ของการแมปผู้ให้บริการตามภาษาสตริง JSON ที่มีรหัสภาษาเป็นคีย์ และชื่อผู้ให้บริการ หรือ "none" (เพื่อปิดใช้งานสำหรับภาษานั้น) หรือ "default" (เพื่อใช้ผู้ให้บริการเริ่มต้น) เป็นค่า
--tasks=<tasks>รายการงานที่จะดำเนินการ คั่นด้วยจุลภาคtranslate-content, translate-entity-relationships
--parts=<parts>รายการส่วนของเนื้อหาที่จะแก้ไข คั่นด้วยจุลภาคproperties (ชื่อ, slug), content (คำอธิบาย), meta (ฟิลด์กำหนดเอง)
--porcelainแสดงเฉพาะข้อมูลที่จำเป็น เหมาะสำหรับการแยกวิเคราะห์โดยสคริปต์ไม่ต้องการค่า (flag)
--fail-if-log-notificationsล้มเหลวหากมีการเพิ่มการแจ้งเตือนในล็อกระหว่างการดำเนินการไม่ต้องการค่า (flag)
--process-failedประมวลผลเฉพาะการแปลที่ล้มเหลวไม่ต้องการค่า (flag)

ตัวอย่าง

# Translate term with ID 1
wp gatotranslate term 1 --user=admin
 
# Translate terms with IDs 1, 2, and 3
wp gatotranslate term 1,2,3 --user=admin
 
# Translate term 1 disabling slug translation, and using OpenRouter as default provider
wp gatotranslate term 1 --user=admin --translate-slugs=false --default-provider=openrouterr
 
# Translate term 1 with a specific provider for each language
wp gatotranslate term 1 --user=admin --language-providers='{"es":"chatgpt","fr":"deepl"}'
 
# Translate disabling a specific language
wp gatotranslate term 1 --user=admin --language-providers='{"de":"none"}'
 
# Translate only term name and slug
wp gatotranslate term 1 --user=admin --parts=properties
 
# Translate only term description and meta
wp gatotranslate term 1 --user=admin --parts=content,meta
 
# Only update the entity relationships for the target language
wp gatotranslate term 1 --user=admin --tasks=translate-entity-relationships
 
# Re-run translations for previously failed terms/languages only
wp gatotranslate term 1,2,3 --user=admin --process-failed

wp gatotranslate media

แปลรายการมีเดีย (ไฟล์แนบ)

การใช้งาน

wp gatotranslate media <ids> [options]

พารามิเตอร์

พารามิเตอร์คำอธิบาย
<ids>รายการ ID มีเดียที่ต้องการแปล คั่นด้วยจุลภาคหรือช่องว่าง

ตัวเลือก

ตัวเลือกคำอธิบายค่าที่เป็นไปได้
--translate-slugs=<bool>ว่าจะแปล slug หรือไม่true, false
--default-provider=<provider>ผู้ให้บริการแปลเริ่มต้นchatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm
--language-providers=<providers>สตริง JSON ของการแมปผู้ให้บริการตามภาษาสตริง JSON ที่มีรหัสภาษาเป็นคีย์ และชื่อผู้ให้บริการ หรือ "none" (เพื่อปิดใช้งานสำหรับภาษานั้น) หรือ "default" (เพื่อใช้ผู้ให้บริการเริ่มต้น) เป็นค่า
--tasks=<tasks>รายการงานที่จะดำเนินการ คั่นด้วยจุลภาคtranslate-content, translate-entity-relationships, replace-internal-links
--parts=<parts>รายการส่วนของเนื้อหาที่จะแก้ไข คั่นด้วยจุลภาคproperties (ชื่อ, slug), content (ข้อความ alt, คำบรรยาย และคำอธิบาย), meta (ฟิลด์กำหนดเอง)
--porcelainแสดงเฉพาะข้อมูลที่จำเป็น เหมาะสำหรับการแยกวิเคราะห์โดยสคริปต์ไม่ต้องการค่า (flag)
--fail-if-log-notificationsล้มเหลวหากมีการเพิ่มการแจ้งเตือนในล็อกระหว่างการดำเนินการไม่ต้องการค่า (flag)
--process-failedประมวลผลเฉพาะการแปลที่ล้มเหลวไม่ต้องการค่า (flag)

ตัวอย่าง

# Translate media item with ID 10
wp gatotranslate media 10 --user=admin
 
# Translate media items with IDs 10, 11, 12
wp gatotranslate media 10,11,12 --user=admin
 
# Translate media item with a specific provider for each language
wp gatotranslate media 10 --user=admin --language-providers='{"es":"chatgpt","fr":"deepl"}'
 
# Translate disabling specific languages
wp gatotranslate media 10 --user=admin --language-providers='{"de":"none","zh":"none"}'
 
# Translate only media title and slug
wp gatotranslate media 10 --user=admin --parts=properties
 
# Translate only media content (alt text, caption, and description) and meta
wp gatotranslate media 10 --user=admin --parts=content,meta
 
# Only update the entity relationships for the target language
wp gatotranslate media 10 --user=admin --tasks=translate-entity-relationships
 
# Re-run translations for previously failed media items/languages only
wp gatotranslate media 10,11,12 --user=admin --process-failed

wp gatotranslate menu

แปลเมนู

เฉพาะเมนูในภาษาต้นฉบับเท่านั้นที่จะถูกแปล เนื่องจาก Polylang ไม่ได้จัดเก็บข้อมูลภาษาสำหรับเมนู ข้อมูลนี้จึงถูกกำหนดจากตำแหน่งเมนูที่กำหนดไว้

การแปลจะถูกเรียกใช้สำหรับเมนูเฉพาะเมื่อ:

  • เมนูมีตำแหน่งอย่างน้อยหนึ่งตำแหน่งที่กำหนดไว้แล้ว
  • ไม่มีตำแหน่งใดที่เป็นสำหรับภาษาแปล

การใช้งาน

wp gatotranslate menu <ids> [options]

พารามิเตอร์

พารามิเตอร์คำอธิบาย
<ids>รายการ ID เมนูที่ต้องการแปล คั่นด้วยจุลภาคหรือช่องว่าง

ตัวเลือก

ตัวเลือกคำอธิบายค่าที่เป็นไปได้
--default-provider=<provider>ผู้ให้บริการแปลเริ่มต้นchatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm
--language-providers=<providers>สตริง JSON ของการแมปผู้ให้บริการตามภาษาสตริง JSON ที่มีรหัสภาษาเป็นคีย์ และชื่อผู้ให้บริการ หรือ "none" (เพื่อปิดใช้งานสำหรับภาษานั้น) หรือ "default" (เพื่อใช้ผู้ให้บริการเริ่มต้น) เป็นค่า
--porcelainแสดงเฉพาะข้อมูลที่จำเป็น เหมาะสำหรับการแยกวิเคราะห์โดยสคริปต์ไม่ต้องการค่า (flag)
--fail-if-log-notificationsล้มเหลวหากมีการเพิ่มการแจ้งเตือนในล็อกระหว่างการดำเนินการไม่ต้องการค่า (flag)

ตัวอย่าง

# Translate menu with ID 5
wp gatotranslate menu 5 --user=admin
 
# Translate menus with IDs 5, 6, and 7
wp gatotranslate menu 5,6,7 --user=admin
 
# Translate menu with a specific provider for each language
wp gatotranslate menu 5 --user=admin --language-providers='{"es":"chatgpt","fr":"deepl"}'
 
# Translate disabling specific languages
wp gatotranslate menu 5 --user=admin --language-providers='{"de":"none","zh":"none"}'

wp gatotranslate user

แปลคำอธิบายผู้ใช้

การใช้งาน

wp gatotranslate user <ids> [options]

พารามิเตอร์

พารามิเตอร์คำอธิบาย
<ids>รายการ ID ผู้ใช้ที่ต้องการแปล คั่นด้วยจุลภาคหรือช่องว่าง

ตัวเลือก

ตัวเลือกคำอธิบายค่าที่เป็นไปได้
--default-provider=<provider>ผู้ให้บริการแปลเริ่มต้นchatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm
--language-providers=<providers>สตริง JSON ของการแมปผู้ให้บริการตามภาษาสตริง JSON ที่มีรหัสภาษาเป็นคีย์ และชื่อผู้ให้บริการ หรือ "none" (เพื่อปิดใช้งานสำหรับภาษานั้น) หรือ "default" (เพื่อใช้ผู้ให้บริการเริ่มต้น) เป็นค่า
--porcelainแสดงเฉพาะข้อมูลที่จำเป็น เหมาะสำหรับการแยกวิเคราะห์โดยสคริปต์ไม่ต้องการค่า (flag)
--fail-if-log-notificationsล้มเหลวหากมีการเพิ่มการแจ้งเตือนในล็อกระหว่างการดำเนินการไม่ต้องการค่า (flag)

ตัวอย่าง

# Translate user with ID 1
wp gatotranslate user 1 --user=admin
 
# Translate users with IDs 1, 2, and 3
wp gatotranslate user 1,2,3 --user=admin
 
# Translate users with IDs 1 and 2
wp gatotranslate user "1 2" --user=admin
 
# Translate user using ChatGPT as default provider
wp gatotranslate user 1 --user=admin --default-provider=chatgpt
 
# Translate user with a specific provider for each language
wp gatotranslate user 1 --user=admin --language-providers='{"es":"chatgpt","fr":"deepl"}'
 
# Translate user disabling a specific language
wp gatotranslate user 1 --user=admin --language-providers='{"de":"none"}'