Durante o processo de exportação e importação de um site em WordPress é inevitável que seja necessário fazer a instalação de vários plugins. Para agilizar este rotina pesquisei como o WP-CLI poderia me ajudar e vou compartilhar minha solução neste post.

Instalando vários plugins pelo WP-CLI

Utilizando um comando longo

No comando de instalação de plugin, você adiciona mais do que um nome (slug) separado por espaço.

wp plugin install wordpress-seo redirection simple-custom-post-order contact-form-7 contact-form-7-honeypot

Utilizando um arquivo de texto

É possível fazer a instalação através de um arquivo texto, contendo um nome (slug) por linha.

wp plugin install --activate $(<plugins.txt)Code language: JavaScript (javascript)

Encontrei a solução acima no blog do Sal Ferrarello que escreveu um post após isto ter sido assunto em um dos meetups que participou.

No final deste post, ensino como gerar um arquivo texto com a lista de plugins instalados.

Instalando plugins que não estão no repositório oficial

As soluções acima apenas funcionam para plugins que estão no repositório oficial do WordPress. Porém, também é possível fazer a instalação de plugins externos se você tiver a URL do arquivo .ZIP do plugin.

wp plugin install http://static.ironcodestudio.com/fe-hello-world.zipCode language: JavaScript (javascript)

Você também pode adicionar essa URL no arquivo plugins.txt que irá funcionar. Créditos novamente ao blog do Sal Ferrarello por esta solução.

É importante lembrar que ao fazer isso você deve ter um cuidado redobrado, pois baixar um plugin de uma URL sem examiná-lo antes, é um grande risco de segurança.

Gerando um arquivo com a lista dos plugins instalados

Utilizando o WP-CLI

Vamos utilizar a funcionalidade de listar plugins no formato CSV e salvar o resultado no arquivo plugins.txt. Como a primeira linha da saída do comando é o nome da coluna de nomes dos plugins (name), removemos ela com o comando tail.

wp plugin list --fields=name --format=csv | tail -n +2 > plugins.txtCode language: PHP (php)

Utilizando apenas o terminal via SSH

Se você só tiver acesso SSH ao servidor, é possível gerar um arquivo com os nomes das pastas dos plugins, removendo o arquivo. Para fazer isso, entre na pasta de plugins e digite o comando abaixo.

ls -1 -d */ | sed 's/\///' > plugins.txtCode language: JavaScript (javascript)

Ele irá listar todas as pastas, remover o / no final dos nomes e salvar a lista no arquivo plugins.txt.

Como alternativa, também é possível utilizar o comando find.

find . -maxdepth 1 -type d -printf '%f\n' | tail -n +2 > plugins.txtCode language: JavaScript (javascript)


Comments

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *