Gestionar wordpress por terminal con wp-cli Blackhold

Tabla de contenido

Lo bonito de meterte en problemas es que para salir de ellos tienes que rebanarte los sesos para encontrar soluciones. Dentro de estas soluciones suelen aparecer metodologías, programas y funcionalidades nuevas. En el post de hoy, tras el marronaco del otro día, la herramienta que reapareció en mi terminal fue wp-cli (como los libros aquellos que has oído a hablar de ellos, pero un día aparece de nuevo y te lo comes como un sabroso manjar).

Este fin de semana pasado el proyecto de kaosenalred.net se ha reconvertido a lanueve.info. En su momento hice este otro post explicando como crawlear una página web con wordpress con httrack. El cliente, en lugar de esperar unas horas mas y arreglar el problema de su wordpress, decidió montar otro wordpress. En el lapso de tiempo de la web vieja y la nueva, en el nuevo wordpress han creado la friolera de 2600 entradas nuevas. A la hora de fusionar las dos webs había varias formas, la escogida esta vez ha sido usar Herramientas > Exportar, lo cual te genera un fichero .xml (WXR) con las categorías, los autores, los medios y las entradas. Mi experiencia en importaciones de este tipo en el pasado ha sido que en blogs con mucho contenido es timeout y problemas asegurados, así que otra solución es wp-cli. wp-cli es un programa para gestionar instancias de wordpress.

Para instalarlo, descargaremos el fichero wp-cli.phar, le daremos permisos de ejecución y lo guardaremos al directorio /usr/local/bin/ como wp:

root@planet3D:~# curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
root@planet3D:~# chmod +x wp-cli.phar
root@planet3D:~# mv wp-cli.phar /usr/local/bin/wp

Para usarlo entraremos como usuario www-data o el usuario con el que esté corriendo el servidor http (apache o nginx) sobre el root del wordpress (donde está el fichero wp-config.php)

root@planet3D:~# su - www-data -s /bin/bash
www-data@planet3D:~$ cd /var/www/wp/
www-data@planet3D:~$ wp --info
OS:	Linux 5.10.0-11-amd64 #1 SMP Debian 5.10.92-1 (2022-01-18) x86_64
Shell:	/bin/bash
PHP binary:	/usr/bin/php7.4
PHP version:	7.4.25
php.ini used:	/etc/php/7.4/cli/php.ini
MySQL binary:	/usr/bin/mysql
MySQL version:	mysql Ver 15.1 Distrib 10.5.12-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper
SQL modes: WP-CLI root dir:	phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir:	phar://wp-cli.phar/vendor
WP_CLI phar path:	/home/virtualmin/kaosenlared.net/public_html
WP-CLI packages dir: WP-CLI global config: WP-CLI project config: WP-CLI version:	2.6.0

Si queremos ver los comandos posibles para wp-cli, recomiendo ir a la documentación de wp-cli.

En mi caso el comando que me ha interesado para importar el wordpress nuevo al viejo para después volver a empezar el crawling con httrack es wp import

www-data@planet3D:~$ wp import WordPress.xml --authors=create

Y listos, ya no me extiendo mas, todo lo que necesitas saber en la documentación 🙂 igualmente aquí os dejo una captura de pantalla de las opciones que te da wp-cli

Fuente obtenida de: https://blackhold.nusepas.com/2022/02/07/gestionar-wordpress-por-terminal-con-wp-cli/

INFORMACION DEL PUBLICADOR
Picture of Kamal Majaiti
Kamal Majaiti
Administrador de sistemas e informático por vocación.
COMPARTELO EN REDES
Publica un comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.