O WP-CLI usa a mesma localização (locale em inglês, que é o idioma exibido na interface) da instalação do WordPress, então se você trabalha com múltiplas localizações, pode ser complicado acompanhar a saída. Felizmente, a documentação oficial mostra como definir uma localização específica. Escrevi um resumo rápido, além de uma ressalva importante que encontrei.
1. Crie um arquivo chamado force-locale.php
e defina a localização de saída desejada (no exemplo usei en_US
).
<?php
WP_CLI::add_wp_hook( 'pre_option_WPLANG', function() {
return 'en_US';
});
force-locale.php2. Adicione este arquivo no início dos seus comandos WP-CLI. Não é necessário mantê-lo na mesma pasta do seu site WordPress.
wp --require=$HOME/workspace/wp-tools/force-locale.php
BashAqui está um exemplo da saída para um site WordPress com localização pt_BR
, tanto com quanto sem o parâmetro:
A saída padrão é uma mistura de mensagens em inglês e localizadas.
$ wp plugin install wordpress-seo; wp plugin delete wordpress-seo
Installing Yoast SEO (25.0)
Baixando pacote de instalação a partir de https://downloads.wordpress.org/plugin/wordpress-seo.25.0.zip...
Using cached file '/home/kossmann/.wp-cli/cache/plugin/wordpress-seo-25.0.zip'...
Descompactando o pacote...
Instalando o plugin...
Plugin instalado com sucesso.
Success: Installed 1 of 1 plugins.
Deleted 'wordpress-seo' plugin.
Success: Deleted 1 of 1 plugins.
BashCom force-locale.php
, toda a saída fica na localização desejada (en_US
).
$ wp --require=$HOME/workspace/wp-tools/force-locale.php plugin install wordpress-seo; wp --require=$HOME/workspace/wp-tools/force-locale.php plugin delete wordpress-seo
Installing Yoast SEO (25.0)
Downloading installation package from https://downloads.wordpress.org/plugin/wordpress-seo.25.0.zip...
Using cached file '/home/kossmann/.wp-cli/cache/plugin/wordpress-seo-25.0.zip'...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Success: Installed 1 of 1 plugins.
Deleted 'wordpress-seo' plugin.
Success: Deleted 1 of 1 plugins.
BashCertifique-se de testar este parâmetro antes de adicioná-lo em todos os seus comandos WP-CLI. Tive alguns problemas antes quando adicionei em todos os comandos no meu script de reset do WordPress e quebrou tudo. Testei novamente agora e funcionou, então não tenho certeza se foi um bug ou se alguns comandos simplesmente não suportam o parâmetro.
Como uso isso de vez em quando, adicionei o force-locale.php ao meu repositório wp-tools.
Deixe um comentário