¿Qué es WP-CLI?
WP-CLI, o WordPress Command Line Interface, es una serie de herramientas en línea de comandos que ofrecen diversas funcionalidades para gestionar sitios WordPress.
La instalación de WP-CLI es sencilla. En principio tienes que descargar un archivo PHP y ponerlo en algún lugar de tu servidor para poder ejecutarlo desde donde te encuentres. Puedes descargar WP-CLI desde su repositorio en GitHub, tecleando lo siguiente:
curl –O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Lo siguiente es hacer que el fichero sea ejecutable:
chmod +x wp–cli.phar
Y para finalizar hay que mover el archivo a una carpeta, para que puedas ejecutarlo desde donde quieras:
sudo mv wp–cli.phar /usr/local/bin/wp
Y con esto ya lo tienes instalado.
¿Que puedes hacer con WP-CLI?
Vamos a ver ahora una serie de tareas que puedes realizar con WP-CLI
Instalar wordpress
Lo primero que tenemos que hacer es navegar hasta el directorio en el que quieres instalarlo e introducimos
wp core download
Luego instalamos la versíon y el idioma
wp core download —version=4.2.2 —locale=es_ES
Cuando se descargue crearemos el archivo wp-config usando el comando
wp core config —dbname=nombrebasededatos —dbuser=nombreusuariobasededatos —dbpass=clavebasededatos —dbhost=localhost
Como ves, el comando utiliza los argumentos que le demos (que deberás adecuar como siempre a los datos de tu servidor) y creará un archivo wp-config.php
con ellos. Para terminar, instalaremos WordPress con el comando core install
:
wp core install –url=example.com –title=”Título del sitio WordPress” –admin_user=nombreusuarioadmin –admin_password=claveusuarioadmin –admin_email=”[email protected]”
Si tienes que actualizar una instalación de WordPress usaremos los comandos wp core update
y wp core update-db
para actualizar los archivos de WordPress y la base de datos.
declare -a sites=(‘/var/www/wp1’ ‘/var/www/wp2’ ‘/var/www/wp3’)
for site in “${sites[@]}”;
do
wp –path=$site core update
done
Administrar plugins
plugin status
muestra información de los plugins instalados y su estado. A
significa que está activo, I
significa inactivo y UA
que hay una actualización disponible, ej:
5 installed plugins:
UA smooth-scroll-up 0.8.9
I wordpress-beta-tester 1.0
A wordpress-importer 0.6.1
A wpcli-commands 1.0
Otros comandos relacionados con los plugins son install
, activate
, deactivate
, update
, delete
y search
, que puedes usar como en estos ejemplos:
wp plugin install wordpress-importer –activate
wp plugin deactivate wordpress-importer
wp plugin delete wordpress-importer
wp plugin update –all
wp plugin search import
Administrar temas
Lo mismos comandos que usas para administrar los plugins los puedes usar para administrar los temas, solo tienes que cambiar plugin
por theme.
Tambien puedes crear un tema hijo vacio con el comando
wp scaffold child-theme my-child-theme –parent_theme=twentyfifteen –theme_name=’Mi tema hijo’ –author=’Marcos del Río’ –author_uri=https://devialia.com –theme_uri=https://devialia.com –activate
Manipular datos
Existen una serie de comandos sencillos para manipular datos como son post créate
, post edit
y post delete
, ademas WP-CLI ofrece una serie de comandos mas avanzados. por ejemplo, si quieres crear una serie de post para probar un plugin.
wp generate posts —count=100
También podrías exportar tu contenido actual y migrarlo a otra instalación de WordPress
wp plugin install wordpress–importer —activate
Y luego ya puedes usar los comandos export
e import
para completar el proceso
Administrar revisiones de entradas
Puedes usar el plugin wp-revisions-cli, que no es ni más ni menos que una extensión para WP-CLI que añade la funcionalidad de administrar revisiones de entradas. Lo puedes instalar como un plugin WordPress normal, y te ofrece una serie de comandos como clean
, list
y status
. Por ejemplo, si utilizas el comando wp wp revisions list
, obtendrás una lista de las revisiones de las entradas existentes
<span class=”token operator”>+-</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span>
<span class=”token operator”>|</span> post_title <span class=”token operator”>|</span> post_parent <span class=”token operator”>|</span> <span class=”token constant”>ID</span> <span class=”token operator”>|</span>
<span class=”token operator”>+-</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span>
<span class=”token operator”>|</span> Hello world<span class=”token operator”>!</span> <span class=”token operator”>|</span> <span class=”token number”>1</span> <span class=”token operator”>|</span> <span class=”token number”>894</span> <span class=”token operator”>|</span>
<span class=”token operator”>+-</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span><span class=”token operator”>–</span><span class=”token operator”>–</span><span class=”token operator”>-+</span>
Administrar medios
Importación masiva de imágenes
wp media import carpeta_de_imagenes/*
Regenerar miniaturas
wp media regenerate
Operaciones con la base de datos
WP-CLI nos ofrece comandos para hacer queries