Продвинутый
ПродвинутыйКоманды WP-CLI

Команды WP-CLI

Следующие команды WP-CLI доступны для перевода custom posts, терминов таксономии (теги и категории), медиафайлов, меню и пользователей.

Команды WP-CLI по умолчанию выполняются без авторизованного пользователя. Для получения необходимых прав на создание записей перевода необходимо запускать команды в контексте пользователя с помощью опции --user:

wp gatotranslate post 123 --user=admin

wp gatotranslate post

Перевод custom posts (записей, страниц, пользовательских типов записей).

Использование

wp gatotranslate post <ids> [options]

Параметры

ПараметрОписание
<ids>Список ID записей для перевода, разделённых запятыми или пробелами

Опции

Если опции не указаны, будут использованы значения из настроек плагина.

ОпцияОписаниеВозможные значения
--translate-slugs=<bool>Переводить ли слаги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 (заголовок, слаг и выдержка), content (содержимое записи), meta (пользовательские поля)
--porcelainВыводить только основную информацию, пригодную для обработки скриптамиЗначение не требуется (флаг)
--fail-if-log-notificationsЗавершать с ошибкой, если во время выполнения добавляются уведомления в логЗначение не требуется (флаг)
--process-failedОбрабатывать только неудавшиеся переводыЗначение не требуется (флаг)

Примеры

# 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>Переводить ли слаги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 (название, слаг), content (описание), meta (пользовательские поля)
--porcelainВыводить только основную информацию, пригодную для обработки скриптамиЗначение не требуется (флаг)
--fail-if-log-notificationsЗавершать с ошибкой, если во время выполнения добавляются уведомления в логЗначение не требуется (флаг)
--process-failedОбрабатывать только неудавшиеся переводыЗначение не требуется (флаг)

Примеры

# 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>Переводить ли слаги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 (заголовок, слаг), content (альтернативный текст, подпись и описание), meta (пользовательские поля)
--porcelainВыводить только основную информацию, пригодную для обработки скриптамиЗначение не требуется (флаг)
--fail-if-log-notificationsЗавершать с ошибкой, если во время выполнения добавляются уведомления в логЗначение не требуется (флаг)
--process-failedОбрабатывать только неудавшиеся переводыЗначение не требуется (флаг)

Примеры

# 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Выводить только основную информацию, пригодную для обработки скриптамиЗначение не требуется (флаг)
--fail-if-log-notificationsЗавершать с ошибкой, если во время выполнения добавляются уведомления в логЗначение не требуется (флаг)

Примеры

# 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Выводить только основную информацию, пригодную для обработки скриптамиЗначение не требуется (флаг)
--fail-if-log-notificationsЗавершать с ошибкой, если во время выполнения добавляются уведомления в логЗначение не требуется (флаг)

Примеры

# 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"}'