Comandi WP-CLI
I seguenti comandi WP-CLI sono disponibili per tradurre custom post, termini di tassonomia (tag e categorie), elementi multimediali, menu e utenti.
I comandi WP-CLI vengono eseguiti per impostazione predefinita senza un utente connesso. Per disporre dei permessi appropriati per creare le voci di traduzione, devi eseguire i comandi con un contesto utente, tramite l'opzione --user:
wp gatotranslate post 123 --user=adminwp gatotranslate post
Tradurre i custom post (articoli, pagine, tipi di post personalizzati).
Utilizzo
wp gatotranslate post <ids> [options]Parametri
| Parametro | Descrizione |
|---|---|
<ids> | Elenco di ID di articoli da tradurre, separati da virgole o spazi |
Opzioni
Se non fornite, le opzioni assumeranno il valore impostato nelle Impostazioni del plugin.
| Opzione | Descrizione | Valori possibili |
|---|---|---|
--translate-slugs=<bool> | Se gli slug devono essere tradotti | true, false |
--default-provider=<provider> | Provider di traduzione predefinito | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--status-to-update=<status> | Lo stato che gli articoli devono avere per essere aggiornati | draft, pending, publish, private, future, any |
--status-when-translated=<status> | Lo stato che gli articoli avranno dopo la traduzione | draft, pending, publish, private, current (ovvero non modificare lo stato), same-as-origin (ovvero copiare lo stato dall'articolo di origine) |
--copy-date=<bool> | Se copiare la data dall'articolo originale | true, false |
--language-providers=<providers> | Stringa JSON della mappatura dei provider per lingua | Stringa JSON con i codici di lingua come chiavi e, come valori, il nome del provider, oppure "none" (per disabilitare quella lingua), oppure "default" (per usare il provider predefinito) |
--tasks=<tasks> | Elenco di task da eseguire, separati da virgole | translate-content, translate-entity-relationships, replace-internal-links |
--parts=<parts> | Elenco delle parti del contenuto da modificare, separate da virgole | properties (titolo, slug ed estratto), content (contenuto dell'articolo), meta (campi personalizzati) |
--porcelain | Mostra solo le informazioni essenziali, adatte all'elaborazione tramite script | Nessun valore richiesto (flag) |
--fail-if-log-notifications | Termina con errore se durante l'esecuzione vengono aggiunte notifiche al log | Nessun valore richiesto (flag) |
--process-failed | Elabora solo le traduzioni non riuscite | Nessun valore richiesto (flag) |
Esempi
# 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
Tradurre i termini di tassonomia (categorie, tag, tassonomie personalizzate).
Utilizzo
wp gatotranslate term <ids> [options]Parametri
| Parametro | Descrizione |
|---|---|
<ids> | Elenco di ID di termini da tradurre, separati da virgole o spazi |
Opzioni
| Opzione | Descrizione | Valori possibili |
|---|---|---|
--translate-slugs=<bool> | Se gli slug devono essere tradotti | true, false |
--default-provider=<provider> | Provider di traduzione predefinito | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Stringa JSON della mappatura dei provider per lingua | Stringa JSON con i codici di lingua come chiavi e, come valori, il nome del provider, oppure "none" (per disabilitare quella lingua), oppure "default" (per usare il provider predefinito) |
--tasks=<tasks> | Elenco di task da eseguire, separati da virgole | translate-content, translate-entity-relationships |
--parts=<parts> | Elenco delle parti del contenuto da modificare, separate da virgole | properties (nome, slug), content (descrizione), meta (campi personalizzati) |
--porcelain | Mostra solo le informazioni essenziali, adatte all'elaborazione tramite script | Nessun valore richiesto (flag) |
--fail-if-log-notifications | Termina con errore se durante l'esecuzione vengono aggiunte notifiche al log | Nessun valore richiesto (flag) |
--process-failed | Elabora solo le traduzioni non riuscite | Nessun valore richiesto (flag) |
Esempi
# 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
Tradurre gli elementi multimediali (allegati).
Utilizzo
wp gatotranslate media <ids> [options]Parametri
| Parametro | Descrizione |
|---|---|
<ids> | Elenco di ID di elementi multimediali da tradurre, separati da virgole o spazi |
Opzioni
| Opzione | Descrizione | Valori possibili |
|---|---|---|
--translate-slugs=<bool> | Se gli slug devono essere tradotti | true, false |
--default-provider=<provider> | Provider di traduzione predefinito | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Stringa JSON della mappatura dei provider per lingua | Stringa JSON con i codici di lingua come chiavi e, come valori, il nome del provider, oppure "none" (per disabilitare quella lingua), oppure "default" (per usare il provider predefinito) |
--tasks=<tasks> | Elenco di task da eseguire, separati da virgole | translate-content, translate-entity-relationships, replace-internal-links |
--parts=<parts> | Elenco delle parti del contenuto da modificare, separate da virgole | properties (titolo, slug), content (testo alternativo, didascalia e descrizione), meta (campi personalizzati) |
--porcelain | Mostra solo le informazioni essenziali, adatte all'elaborazione tramite script | Nessun valore richiesto (flag) |
--fail-if-log-notifications | Termina con errore se durante l'esecuzione vengono aggiunte notifiche al log | Nessun valore richiesto (flag) |
--process-failed | Elabora solo le traduzioni non riuscite | Nessun valore richiesto (flag) |
Esempi
# 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
Tradurre i menu.
Vengono tradotti solo i menu nella lingua di origine. Poiché Polylang non memorizza la lingua per i menu, questa informazione viene determinata a partire dalle posizioni di menu assegnate.
La traduzione viene avviata per un menu solo se:
- Il menu ha almeno una posizione già assegnata
- Nessuna delle sue posizioni è per una lingua di traduzione
Utilizzo
wp gatotranslate menu <ids> [options]Parametri
| Parametro | Descrizione |
|---|---|
<ids> | Elenco di ID di menu da tradurre, separati da virgole o spazi |
Opzioni
| Opzione | Descrizione | Valori possibili |
|---|---|---|
--default-provider=<provider> | Provider di traduzione predefinito | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Stringa JSON della mappatura dei provider per lingua | Stringa JSON con i codici di lingua come chiavi e, come valori, il nome del provider, oppure "none" (per disabilitare quella lingua), oppure "default" (per usare il provider predefinito) |
--porcelain | Mostra solo le informazioni essenziali, adatte all'elaborazione tramite script | Nessun valore richiesto (flag) |
--fail-if-log-notifications | Termina con errore se durante l'esecuzione vengono aggiunte notifiche al log | Nessun valore richiesto (flag) |
Esempi
# 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
Tradurre le descrizioni degli utenti.
Utilizzo
wp gatotranslate user <ids> [options]Parametri
| Parametro | Descrizione |
|---|---|
<ids> | Elenco di ID di utenti da tradurre, separati da virgole o spazi |
Opzioni
| Opzione | Descrizione | Valori possibili |
|---|---|---|
--default-provider=<provider> | Provider di traduzione predefinito | chatgpt, claude, deepl, gemini, google_translate, deepseek, mistral, openrouter, self_hosted_llm |
--language-providers=<providers> | Stringa JSON della mappatura dei provider per lingua | Stringa JSON con i codici di lingua come chiavi e, come valori, il nome del provider, oppure "none" (per disabilitare quella lingua), oppure "default" (per usare il provider predefinito) |
--porcelain | Mostra solo le informazioni essenziali, adatte all'elaborazione tramite script | Nessun valore richiesto (flag) |
--fail-if-log-notifications | Termina con errore se durante l'esecuzione vengono aggiunte notifiche al log | Nessun valore richiesto (flag) |
Esempi
# 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"}'