Commandes WP-CLI
Les commandes WP-CLI suivantes sont disponibles pour traduire les custom posts, les termes de taxonomie (étiquettes et catégories), les éléments média, les menus et les utilisateurs.
Les commandes WP-CLI s'exécutent par défaut sans utilisateur connecté. Pour avoir les permissions appropriées pour créer les entrées de traduction, vous devez exécuter les commandes avec un contexte utilisateur, via l'option --user :
wp gatotranslate post 123 --user=adminwp gatotranslate post
Traduire les custom posts (articles, pages, types d'articles personnalisés).
Utilisation
wp gatotranslate post <ids> [options]Paramètres
| Paramètre | Description |
|---|---|
<ids> | Liste d'IDs d'articles à traduire, séparés par des virgules ou des espaces |
Options
Si elles ne sont pas fournies, les options prendront la valeur définie dans les Réglages du plugin.
| Option | Description | Valeurs possibles |
|---|---|---|
--translate-slugs=<bool> | Si les slugs doivent être traduits | true, false |
--default-provider=<provider> | Fournisseur de traduction par défaut | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--status-to-update=<status> | Le statut que les articles doivent avoir pour être mis à jour | draft, pending, publish, private, future, any |
--status-when-translated=<status> | Le statut que les articles auront après la traduction | draft, pending, publish, private, current (c'est-à-dire ne pas modifier le statut), same-as-origin (c'est-à-dire copier le statut de l'article d'origine) |
--copy-date=<bool> | Si la date de l'article original doit être copiée | true, false |
--language-providers=<providers> | Chaîne JSON du mappage des fournisseurs par langue | Chaîne JSON avec les codes de langue comme clés, et comme valeurs le nom du fournisseur, ou "none" (pour désactiver pour cette langue), ou "default" (pour utiliser le fournisseur par défaut) |
--tasks=<tasks> | Liste de tâches à exécuter, séparées par des virgules | translate-content, translate-entity-relationships, replace-internal-links |
--parts=<parts> | Liste des parties du contenu à modifier, séparées par des virgules | properties (titre, slug et extrait), content (contenu de l'article), meta (champs personnalisés) |
--porcelain | Afficher uniquement les informations essentielles, adaptées au traitement par des scripts | Aucune valeur requise (flag) |
--fail-if-log-notifications | Échouer si des notifications sont ajoutées au log lors de l'exécution | Aucune valeur requise (flag) |
--process-failed | Traiter uniquement les traductions ayant échoué | Aucune valeur requise (flag) |
Exemples
# 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-failedwp gatotranslate term
Traduire les termes de taxonomie (catégories, étiquettes, taxonomies personnalisées).
Utilisation
wp gatotranslate term <ids> [options]Paramètres
| Paramètre | Description |
|---|---|
<ids> | Liste d'IDs de termes à traduire, séparés par des virgules ou des espaces |
Options
| Option | Description | Valeurs possibles |
|---|---|---|
--translate-slugs=<bool> | Si les slugs doivent être traduits | true, false |
--default-provider=<provider> | Fournisseur de traduction par défaut | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Chaîne JSON du mappage des fournisseurs par langue | Chaîne JSON avec les codes de langue comme clés, et comme valeurs le nom du fournisseur, ou "none" (pour désactiver pour cette langue), ou "default" (pour utiliser le fournisseur par défaut) |
--tasks=<tasks> | Liste de tâches à exécuter, séparées par des virgules | translate-content, translate-entity-relationships |
--parts=<parts> | Liste des parties du contenu à modifier, séparées par des virgules | properties (nom, slug), content (description), meta (champs personnalisés) |
--porcelain | Afficher uniquement les informations essentielles, adaptées au traitement par des scripts | Aucune valeur requise (flag) |
--fail-if-log-notifications | Échouer si des notifications sont ajoutées au log lors de l'exécution | Aucune valeur requise (flag) |
--process-failed | Traiter uniquement les traductions ayant échoué | Aucune valeur requise (flag) |
Exemples
# 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-failedwp gatotranslate media
Traduire les éléments média (pièces jointes).
Utilisation
wp gatotranslate media <ids> [options]Paramètres
| Paramètre | Description |
|---|---|
<ids> | Liste d'IDs d'éléments média à traduire, séparés par des virgules ou des espaces |
Options
| Option | Description | Valeurs possibles |
|---|---|---|
--translate-slugs=<bool> | Si les slugs doivent être traduits | true, false |
--default-provider=<provider> | Fournisseur de traduction par défaut | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Chaîne JSON du mappage des fournisseurs par langue | Chaîne JSON avec les codes de langue comme clés, et comme valeurs le nom du fournisseur, ou "none" (pour désactiver pour cette langue), ou "default" (pour utiliser le fournisseur par défaut) |
--tasks=<tasks> | Liste de tâches à exécuter, séparées par des virgules | translate-content, translate-entity-relationships, replace-internal-links |
--parts=<parts> | Liste des parties du contenu à modifier, séparées par des virgules | properties (titre, slug), content (texte alternatif, légende et description), meta (champs personnalisés) |
--porcelain | Afficher uniquement les informations essentielles, adaptées au traitement par des scripts | Aucune valeur requise (flag) |
--fail-if-log-notifications | Échouer si des notifications sont ajoutées au log lors de l'exécution | Aucune valeur requise (flag) |
--process-failed | Traiter uniquement les traductions ayant échoué | Aucune valeur requise (flag) |
Exemples
# 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-failedwp gatotranslate menu
Traduire les menus.
Seuls les menus dans la langue d'origine sont traduits. Comme Polylang ne stocke pas la langue pour les menus, cette information est déterminée à partir des emplacements de menu assignés.
La traduction est déclenchée pour un menu uniquement si :
- Le menu a au moins un emplacement déjà assigné
- Aucun de ses emplacements n'est pour une langue de traduction
Utilisation
wp gatotranslate menu <ids> [options]Paramètres
| Paramètre | Description |
|---|---|
<ids> | Liste d'IDs de menus à traduire, séparés par des virgules ou des espaces |
Options
| Option | Description | Valeurs possibles |
|---|---|---|
--default-provider=<provider> | Fournisseur de traduction par défaut | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Chaîne JSON du mappage des fournisseurs par langue | Chaîne JSON avec les codes de langue comme clés, et comme valeurs le nom du fournisseur, ou "none" (pour désactiver pour cette langue), ou "default" (pour utiliser le fournisseur par défaut) |
--porcelain | Afficher uniquement les informations essentielles, adaptées au traitement par des scripts | Aucune valeur requise (flag) |
--fail-if-log-notifications | Échouer si des notifications sont ajoutées au log lors de l'exécution | Aucune valeur requise (flag) |
Exemples
# 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
Traduire les descriptions d'utilisateurs.
Utilisation
wp gatotranslate user <ids> [options]Paramètres
| Paramètre | Description |
|---|---|
<ids> | Liste d'IDs d'utilisateurs à traduire, séparés par des virgules ou des espaces |
Options
| Option | Description | Valeurs possibles |
|---|---|---|
--default-provider=<provider> | Fournisseur de traduction par défaut | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Chaîne JSON du mappage des fournisseurs par langue | Chaîne JSON avec les codes de langue comme clés, et comme valeurs le nom du fournisseur, ou "none" (pour désactiver pour cette langue), ou "default" (pour utiliser le fournisseur par défaut) |
--porcelain | Afficher uniquement les informations essentielles, adaptées au traitement par des scripts | Aucune valeur requise (flag) |
--fail-if-log-notifications | Échouer si des notifications sont ajoutées au log lors de l'exécution | Aucune valeur requise (flag) |
Exemples
# 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"}'