O WP-CLI o que é?
- uma ferramenta de administração do o WordPress via de linha de comando.
- É possível executar instalações de plugins, assim também como comandos que não são suportados pelo seu backend por padrão do WordPress.
- Com WP-CLI tem como forte o fato de economizar tempo quando você está instalando, configurando ou mantendo sites baseados e Blog WordPress.
- Para quem tem muitos sites, não preciso fazer login em cada um e os comandos WP-CLI também podem ser automatizados.
- Instalação do WP-CLI
Para instalar o WP-CLI em uma VPS ou em um sistema Linux local, execute as etapas abaixo:
Baixe a ferramenta WP-CLI do Github com o seguinte comando:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Confirme se o download foi completo com este comando:
php wp-cli.phar --info
Agora você precisa configurar wp-cli.phar para ser um arquivo executável. Tipo:
chmod +x wp-cli.phar
Para finalizar a instalação, mova o WP-CLI para sua localização final:
sudo mv wp-cli.phar /usr/local/bin/wp
Com o WP-CLI está instalado, basta iniciar o gerenciamento do WordPress através da linha de comando.
– Vejamos os comandos do WP-CLI
O WP-CLI é uma ótima ferramenta e através de comandos, é mais rápido via cli que no painel de administração do WordPress com a possibilidade também de uso dos comandos de script para processos simplificados.
- Você pode ver a lista de plugins e comandos aqui.
O comando abaixo mostra as informações de versão do WP-CLI:
wp --info
Exemplo de saída:
PHP binary: /opt/alt/php70/usr/bin/php PHP version: 7.0.16 php.ini used: /opt/alt/php70/etc/php.ini WP-CLI root dir: phar://wp-cli.phar WP-CLI packages dir: WP-CLI global config: WP-CLI project config: WP-CLI version: 1.1.0
Lista de comandos WP-CLI e documentação de ajuda:
wp help Exemplo de saída: DESCRIPTION Manage WordPress through the command-line. SYNOPSIS wp <command> SUBCOMMANDS cache Manage the object cache. cap Manage user capabilities. cli Manage WP-CLI itself. comment Manage comments. core Download, install, update and manage a WordPress install. cron Manage WP-Cron events and schedules. db Perform basic database operations using credentials stored in wp-config.php eval Execute arbitrary PHP code. eval-file Load and execute a PHP file. .....
Sair do ajuda do WP-CLI, pressione o botão Q em sua palavra-chave.
Saiba mais sobre o comando comment
, digite:
wp help comment
Exemplo de saída:
NAME wp comment DESCRIPTION Manage comments. SYNOPSIS wp comment <command> SUBCOMMANDS approve Approve a comment. count Count comments, on whole blog or on a given post. create Create a new comment. delete Delete a comment. exists Verify whether a comment exists. generate Generate some number of new dummy comments. .....
Os comando WP-CLI tem uma lista de subcomandos. Obtendo o número de comentários:
wp comment count
Para ver a página de ajuda para subcomando de um subcomando:
wp help comment count
Exemplo de saída:
AME wp comment count DESCRIPTION Count comments, on whole blog or on a given post. SYNOPSIS wp comment count [<post-id>] OPTIONS [<post-id>] The ID of the post to count comments in. .....
– Usando o WP-CLI para Instalar o WordPress
Você pode lidar com o processo completo de instalação do WordPress através do WP-CLI. No entanto, você precisa criar um banco de dados MySQL para o seu blog antes de prosseguir. Na Hostinger, o banco de dados MySQL pode ser criado na seção Painel de Controle -> Banco de Dados MySQL.
Se você estiver usando WP-CLI em VPS ou um sistema local, siga estas etapas para criar um novo banco de dados MySQL:
Faça login no MySQL:
mysql -u yourusername -p
Crie um banco de dados para sua instalação do WordPress:
create database wordpress;
Configure o nome de usuário e a senha para o banco de dados:
grant all on wordpress.* to 'username' identified by 'yourpassword';
Faça o download dos arquivos de instalação do WordPress:
Uma vez que o banco de dados MySQL está pronto, você pode continuar com a instalação do WordPress. Primeiro de tudo, você precisa baixar a versão mais recente do WordPress. Você pode fazer isso executando:
wp core download Exemplo de saída: Downloading WordPress 4.7.3 (en_US)... md5 hash verified: 044729d30b720809f19e14ece49e119b Success: WordPress downloaded.
IMPORTANTE: certifique-se de que você está no diretório correto antes de executar este comando. Normalmente, todos os arquivos do seu site devem residir em public_html. Você pode ver o diretório no qual você está executando o comando pwd
.
Quando o download estiver concluído, visite seu site. Você verá um formulário padrão de instalação do WordPress. Claro, você pode ir em frente e preencher todos os valores necessários usando um navegador da web. Mas como temos o WP-CLI instalado, seria mais fácil fazer isso na linha de comando.
Usaremos o comando wp core para adicionar as credenciais do banco de dados MySQL ao WordPress:
wp core config --dbname=wordpress --dbuser=user --dbpass=password --dbhost=localhost --dbprefix=wp_
Dbname – Seu nome de banco de dados MySQL.
Dbuser – Seu nome de usuário do banco de dados MySQL.
Dbpass – Sua senha de usuário do MySQL.
Dbhost – Seu nome de host do servidor MySQL.
Dbprefix – prefixo de tabela de banco de dados MySQL. Você pode deixá-lo wp_.
Como você pode ver as credenciais do MySQL podem ser passadas usando parâmetros de wp core config
. Se você inseriu os detalhes do MySQL corretamente, o WP-CLI irá gerar o arquivo wp-config.php:
Exemplo de saída:
Success: Generated 'wp-config.php' file.
Agora, se você visitar o seu site WordPress novamente, você vai notar que ele pede para inserir alguns detalhes adicionais.
Vamos usar o mesmo comando wp core
para adicionar esses detalhes e completar a instalação do WordPress:
wp core install --url="yourdomain.com" --title="Site Title" --admin_user="admin_username" --admin_password="admin_password" --admin_email="your@email.com"
Exemplo de saída:
Success: WordPress installed successfully.
– Instalar e gerenciar temas do WordPress com WP-CLI
Vamos aprender como usar o WP-CLI para instalar temas do WordPress. Vamos começar listando os temas já instalados:
wp theme list
Exemplo de saída:
+-----------------+----------+--------+---------+ | name | status | update | version | +-----------------+----------+--------+---------+ | twentyfifteen | inactive | none | 1.7 | | twentyseventeen | active | none | 1.1 | | twentysixteen | inactive | none | 1.3 | +-----------------+----------+--------+---------+
A partir do status, podemos ver que o tema ativo atual é twentyseventeen. Vamos dizer que queremos ativar twentyfifteen:
wp theme activate twentyfifteen
Exemplo de saída:
Success: Switched to 'Twenty Fifteen' theme
Você pode até usar o WP-CLI para pesquisar novos temas no diretório oficial do WordPress. Vamos procurar um tema com suporte a bootstrap:
wp theme search bootstrap
Exemplo de saída:
Success: Showing 10 of 292 themes. +---------------------+---------------------+--------+ | name | slug | rating | +---------------------+---------------------+--------+ | edsBootstrap | edsbootstrap | 100 | | Bootstrap Basic4 | bootstrap-basic4 | 0 | | ultrabootstrap | ultrabootstrap | 100 | | Bootstrap Four | bootstrap-four | 80 | | Simple Bootstrap | simple-bootstrap | 60 | | Bootstrap Canvas WP | bootstrap-canvas-wp | 92 | | Flat Bootstrap | flat-bootstrap | 100 | | Bootstrap Basic | bootstrap-basic | 100 | | DevDmBootstrap3 | devdmbootstrap3 | 100 | | Arouse | arouse | 0 | +---------------------+---------------------+--------+
Você não pode dizer muito sobre um tema apenas a partir de seu nome, mas ultrabootstrap soa muito bem e tem uma classificação de 100. Para instalar e ativar o tema use:
wp theme install ultrabootstrap --activate
Exemplo de saída:
Installing ultrabootstrap (1.1.5) Downloading install package from https://downloads.wordpress.org/theme/ultrabootstrap.1.1.5.zip... Unpacking the package... Installing the theme... Theme installed successfully. Activating 'ultrabootstrap'... Success: Switched to 'ultrabootstrap' theme. Success: Installed 1 of 1 themes.
Isto é como o nosso WordPress fica com o novo tema ativado:
É possível especificar o caminho de um arquivo zip do tema do WordPress se você tem em sua conta de hospedagem. Este comando também funciona com URLs.
– Instalar e gerenciar Plugins no WordPress com WP-CLI
Assim como os temas, os plugins podem ser instalados e gerenciados usando o WP-CLI. Para listar os plugins já instalados, use:
wp plugins list
Exemplo de saída:
+---------+----------+--------+---------+ | name | status | update | version | +---------+----------+--------+---------+ | akismet | inactive | none | 3.3 | | hello | inactive | none | 1.6 | +---------+----------+--------+---------+
Como você pode ver, não temos muitos plugins. Vamos instalar um plugin de formulário de contato para o nosso blog WordPress.
Primeiro, procure no diretório do plugin o formulário de contato 7 plugin:
wp plugin search "contact form 7"
Exemplo de saída:
Success: Showing 10 of 2514 plugins. +--------------------------------------+---------------------------+--------+ | name | slug | rating | +--------------------------------------+---------------------------+--------+ | Contact Form 7 | contact-form-7 | 92 | | Contact Bank - Contact Forms Builder | contact-bank | 86 | | Contact Form | contact-forms-builder | 90 | | Contact Form | contact-form-ready | 96 | | Contact Form | contact-form-add | 76 | | Contact Form | powr-contact-form | 100 | | Contact Form | better-contact-form | 100 | | Contact Form | contact-form-master | 96 | | Contact Form | contact-form-maker | 88 | | Contact Form by Supsystic | contact-form-by-supsystic | 92 | +--------------------------------------+---------------------------+--------+
Formulário de contato 7 é o primeiro na lista. Queremos instalá-lo e ativá-lo, já que é um ótimo plugin para criar formulários de contato leve:
wp plugin install contact-form-7 --activate
Exemplo de saída:
Installing Contact Form 7 (4.7) Downloading install package from https://downloads.wordpress.org/plugin/contact-form-7.4.7.zip... Unpacking the package... Installing the plugin... Plugin installed successfully. Activating 'contact-form-7'... Plugin 'contact-form-7' activated. Success: Installed 1 of 1 plugins.
Igual aos temas, plugins podem ser instalados a partir do arquivo zip e URL.
Para excluir um plugin altere de install
para delete
:
wp plugin delete contact-form-7
Exemplo de saída:
Deleted 'contact-form-7' plugin. Success: Deleted 1 of 1 plugins.
– Atualizando o WordPress com WP-CLI
A atualização do WordPress com WP-CLI é um processo de duas etapas, pois você precisa atualizar os arquivos do WordPress e do banco de dados para completar este processo.
Comece por atualizar arquivos principais do WordPress:
wp core update
Exemplo de saída:
Updating to version 4.7.3 (en_US)... Downloading update from https://downloads.wordpress.org/release/wordpress-4.7.3-new-bundled.zip... Unpacking the update... Limpando arquivos ... Sucesso: WordPress atualizado com sucesso.
Execute o comando abaixo para verificar e se necessário atualizar o banco de dados para a versão necessária:
wp core update-db
Exemplo de saída:
Sucesso: banco de dados do WordPress já na última versão db 38590.
Para atualizar os temas e os plugins do WordPress com o WP-CLI, altere o core para o tema ou o plugin. -todo parâmetro é usado para atualizar todos os temas/plugins instalados, mas você pode alterá-lo para um nome de plugin/tema específico, se necessário:
Para temas:
wp theme update --all
Para plugins:
wp plugin update --all
– Gerenciar conteúdo com WP-CLI
Postagens
O WP-CLI fornece várias maneiras de gerenciar seu conteúdo por meio da linha de comando. Sim, pode não ser muito confortável escrever posts no terminal, mas por razões de aprendizagem vamos ver como criar e gerenciar conteúdo com o WP-CLI.
Para ver a lista de todas as mensagens use:
wp post list
Exemplo de saída:
+----+--------------+-------------+---------------------+-------------+ | ID | post_title | post_name | post_date | post_status | +----+--------------+-------------+---------------------+-------------+ | 1 | Hello world! | hello-world | 2022-03-15 08:20:00 | publish | +----+--------------+-------------+---------------------+-------------+
Como você pode ver, temos apenas um post – Olá mundo! . O ID dessa postagem é 1. Podemos excluí-lo com:
wp post delete 1
Exemplo de saída:
Success: Trashed post 1.
Para criar uma nova postagem, use:
wp post create --post_status=publish --post_title="Post feito com WP-CLI" --edit
Este comando abrirá o editor de texto vim. Introduza o conteúdo e saia do vim pressionando o botão ESC, escreva: wq e pressione ENTER.
Também é possível criar um novo post e importar conteúdo de post diretamente do arquivo .txt:
wp post create ./post.txt --post_title='Sample Post' --post_status=publish
Além de criar posts, com WP-CLI você pode simplesmente gerá-los. Esse recurso é útil se você quiser testar como seu site do WordPress funcionará com um monte de postagens. Para gerar automaticamente 50 postagens use:
wp post generate --count=50
Media
Com o WP-CLI você pode automatizar o processo de importação de imagens. Digamos que queremos importar todas as imagens da pasta images_for_site. Podemos conseguir isso usando um único comando:
wp media import images_for_site/*
– Exportar / importar WordPress usando WP-CLI
Com o WP-CLI você pode facilmente exportar ou importar conteúdo de uma instalação do WordPress para outro. O comando a seguir exportará postagens, termos, autores, comentários e anexos para um arquivo XML:
wp export
Exemplo de saída:
Writing to file /home/u694443746/public_html/servcloudtutorials.wordpress.2022-05-26.000.xml Success: All done with export.
Vamos dizer que queremos importar o mesmo arquivo XML para outro caso do WordPress. Primeiro de tudo, precisamos instalar wp importador plugin:
wp plugin install wordpress-importer --activate
Quando a instalação estiver concluída, podemos prosseguir com a importação. Vamos criar um novo autor usando o parâmetro -authors:
wp import servcloudtutorials.wordpress.2022-05-26.000.xml --authors=create
Exemplo de saída:
<p>All done. <a href="http://servcloudtutorials.wordpress.com/wp-admin/">Have fun!</a></p><p>Remember to update the passwords and roles of imported users.</p> Success: Finished importing from 'servcloudtutorials.wordpress.2022-05-26.000.xml' file.
– Gerenciar banco de dados com WP-CLI
Você pode executar consultas SQL normais com o comando wp db query. Por exemplo, para ver todos os usuários registrados do WordPress usar:
wp db query "SELECT user_login,ID FROM wp_users;"
Exemplo de saída:
+------------+----+ | user_login | ID | +------------+----+ | user | 1 | +------------+----+
Você pode executar outras operações úteis como exportação. Ele irá gerar um arquivo de despejo SQL de seu banco de dados WordPress:
wp db export
Exemplo de saída:
Success: Exported to 'u6375385_banco.sql'.
Para importar um arquivo SQL para o banco de dados do WordPress, use:
wp db import file.sql
Exemplo de saída:
Success: Imported from 'file.sql'.
– Pesquisar e Substituir com WP-CLI
Se algum dia você moveu o WordPress de seu local de desenvolvimento ou do usuário do staging à hospedagem regular, você sabe como a pesquisa e a substituição podem ser úteis. Claro, pode ser feito usando uma consulta SQL ou um plugin, mas com a pesquisa e substituição WP-CLI pode ser realizada com um único comando.
Digamos que mudamos nosso nome de domínio de “servcloudtutorials.wordpress.com” para “servcloudtutorials.wordpress.net” e precisamos atualizar todos os URLs em nosso banco de dados WordPress.
Recomenda-se sempre fazer um ‘funcionamento em seco’ antes de realizar a pesquisa real e substituir. Ele irá mostrar quantas instâncias seriam alteradas:
wp search-replace --dry-run 'servcloudtutorials.wordpress.com' 'servcloudtutorials.wordpress.net'
Exemplo de saída:
Success: 1008 replacements to be made.
Agora, para realizar a pesquisa real e substituir por WP-CLI, remova o parâmetro -dry-run:
wp search-replace 'servcloudtutorials.wordpress.com' 'servcloudtutorials.wordpress.net'
Exemplo de saída:
Success: Made 1008 replacements.
\uD83D\uDCD8 Instructions
Highlight important information in a panel like this one. To edit this panel's color or style, select one of the options in the menu.