{"id":3904,"date":"2026-10-19T08:00:53","date_gmt":"2026-10-19T06:00:53","guid":{"rendered":"https:\/\/www.nicalia.com\/blog\/?p=3904"},"modified":"2026-10-15T11:57:06","modified_gmt":"2026-10-15T09:57:06","slug":"merece-la-pena-wp-cli","status":"publish","type":"post","link":"https:\/\/www.nicalia.com\/blog\/merece-la-pena-wp-cli\/","title":{"rendered":"\u00bfMerece la pena WP-CLI si no eres desarrollador?"},"content":{"rendered":"<p>Te han dicho que WP-CLI ahorra horas, abriste una gu\u00eda de comandos y la cerraste a la tercera l\u00ednea. Es lo normal, porque antes de aprender un solo comando hay dos preguntas que nadie te hace: si tu hosting te deja usarlo y si lo que haces con tus webs justifica el esfuerzo.<\/p>\n<p><!--more--><\/p>\n<p><strong>*NOTA:<\/strong> <span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-epip=\"\"><a href=\"https:\/\/es.wordpress.org\/cli\/\" target=\"_blank\" rel=\"noopener nofollow\"><span data-subtree=\"aimfl,mfl\">WP-CLI<\/span><\/a><!--TgQPHd|||[]--><\/span> es la <mark class=\"b6AQX\" data-wiz-attrbind=\"class=TRt1Bf_c\/cFwyDc\" data-sfc-root=\"ep\" data-epip=\"\" data-ved=\"2ahUKEwjX5Nak07uXAxXpVKQEHQpBNXUQuJAPegYIAggFEAM\">interfaz de l\u00ednea de comandos oficial para gestionar sitios de <span data-sfc-cp=\"\" data-sfc-root=\"ep\" data-epip=\"\" data-wiz-uids=\"TRt1Bf_e\"><span class=\"\"><a class=\"H23r4e\" href=\"https:\/\/es.wordpress.org\/cli\/\" target=\"_blank\" rel=\"noopener nofollow\" data-ved=\"2ahUKEwjX5Nak07uXAxXpVKQEHQpBNXUQy_kOegYIAggFEAQ\" data-hveid=\"CAIIBRAE\">WordPress<\/a><\/span><!--TgQPHd|||[[&quot;https:\/\/es.wordpress.org\/cli\/&quot;,null,null,[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[{&quot;1218&quot;:[16,null,null,null,[1]]}]],16,null,&quot;WP-CLI \u2013 WordPress.org Espa\u00f1a&quot;,&quot;WP-CLI: Todo se puede automatizar. La l\u00ednea de comandos de WordPress. No necesitas navegador. ... Dise\u00f1ado para ser programable * wp plugin. Instala, activa, actualiza. * wp theme. Gestiona temas y temas hijos. * wp db. Exporta, importa, busca y reemplaza. * wp user. Crea, actualiza y restablece contrase\u00f1as. * wp post. Crea, edita y elimina contenido de forma masiva. * wp core. Instala, actualiza y comprueba WordPress. * wp site. Gestiona redes multisitio. * wp cron. Revisa y ejecuta tareas programadas. ... Todo lo que puedes hacer desde el escritorio de WordPress, lo puedes hacer desde la terminal. Instalar y actualizar plugins, importar contenido, crear usuarios, realizar b\u00fasquedas y sustituciones en una base de datos, rotar claves, gestionar redes multisitio. Puedes integrar todo esto en un script, una tarea cron o un paso de implementaci\u00f3n. WP-CLI convierte WordPress en algo que puedes automatizar. ... Automatiza lo que quieras * Automatiza lo que quieras. WP-CLI se adapta a cualquier lugar donde escribas scripts. Incorp\u00f3ralo a un proceso de implementaci\u00f3n para migrar una base de datos entre entornos. Con\u00e9ctalo a una acci\u00f3n de GitHub para verificar la integridad del n\u00facleo en cada solicitud de incorporaci\u00f3n de cambios. Ejec\u00fatalo desde cron para rotar claves, eliminar archivos temporales o regenerar miniaturas a las 3 de la madrugada. Ver recetas de automatizaci\u00f3n. wp db export backup.sql wp search-replace &#39;https:\/\/staging.example.com&#39; &#39;https:\/\/example.com&#39; --all-tables wp cache flush. * WP_CLI::add_command( &#39;hello&#39;, function () { WP_CLI::success( &#39;Hello from WP-CLI!&#39; ); } ); Exti\u00e9ndelo. WP-CLI est\u00e1 dise\u00f1ado para poder ampliarse. Escribe un comando personalizado con unas pocas l\u00edneas de PHP y publ\u00edcalo como plugin, o echa un vistazo al \u00edndice de paquetes de la comunidad para encontrar uno que ya haga lo que necesitas. Escribe un comando personalizado. Explorar paquetes. * Mantenido por la comunidad WordPress. WP-CLI se ha publicado de forma continua desde 2011 y lo mantienen voluntarios de todo el ecosistema de WordPress. Cada versi\u00f3n se publica bajo una gesti\u00f3n abierta, y las contribuciones pueden adoptar muchas formas: triage, documentaci\u00f3n, traducci\u00f3n, creaci\u00f3n de comandos o pruebas. Colabora. Lee las notas de la versi\u00f3n. Dise\u00f1ado para el futuro. El futuro de la gesti\u00f3n web es aut\u00f3nomo, y WP-CLI est\u00e1 dise\u00f1ado para liderar el camino. M\u00e1s all\u00e1 de servir como una potente interfaz para desarrolladores, ofrece la arquitectura estandarizada y basada en comandos que los agentes de IA y los modelos de lenguaje grande (LLM) necesitan para interactuar de forma fiable con WordPress. Al aprovechar la Abilities API, los conectores de IA y la compatibilidad con el Protocolo de Contexto de Modelos (MCP), WP-CLI convierte WordPress en un entorno totalmente preparado para los agentes. Tanto si est\u00e1s automatizando el mantenimiento rutinario como creando flujos de trabajo complejos con agentes, WP-CLI proporciona la base estable y programable necesaria para la pr\u00f3xima generaci\u00f3n de inteligencia.&quot;,&quot;https:\/\/encrypted-tbn0.gstatic.com\/images?q\\u003dtbn:ANd9GcSvTvK6dQTonBE_uEV9YKBx0BoKKAhri2pKfHZ7Q9DXnGOnKhaIDuQ4NUM7wFvNvwxgq7BQz7PeRs3yFpY&quot;,&quot;WordPress.org Espa\u00f1a&quot;,&quot;https:\/\/encrypted-tbn2.gstatic.com\/faviconV2?url\\u003dhttps:\/\/es.wordpress.org\\u0026client\\u003dAIM\\u0026size\\u003d128\\u0026type\\u003dFAVICON\\u0026fallback_opts\\u003dTYPE,SIZE,URL&quot;,[[1792054511645271,77878505,1966424330],null,null,null,null,[[2,2]]],null,&quot;1ebfb135-5736-46b8-a1a6-8a6c814afe6f&quot;]]--><\/span> sin necesidad de usar un navegador web o el panel de administraci\u00f3n tradicional<\/mark><\/p>\n<p>Aqu\u00ed van las dos respuestas, y tambi\u00e9n los comandos que m\u00e1s disgustos dan a quien empieza.<\/p>\n<h2>Primero, comprueba si tu hosting te da acceso SSH<\/h2>\n<p>Va lo primero porque, si la respuesta es no, el resto del art\u00edculo no te sirve.<\/p>\n<p>WP-CLI es un programa que se ejecuta en el servidor donde vive tu WordPress, y para darle \u00f3rdenes necesitas una terminal conectada a ese servidor. Eso es el acceso SSH: una conexi\u00f3n cifrada en la que escribes comandos que se ejecutan en tu hosting como si estuvieras delante de la m\u00e1quina.<\/p>\n<p>Saber si lo tienes te lleva dos minutos:<\/p>\n<ol>\n<li>Entra en cPanel y busca <strong>Terminal<\/strong> en la secci\u00f3n Avanzado. Si aparece, \u00e1brela y escribe <code>wp --info<\/code>. Si te devuelve la versi\u00f3n de WP-CLI y la de PHP, ya est\u00e1 todo listo.<\/li>\n<li>Si no ves Terminal, busca <strong>Acceso SSH<\/strong>. Que est\u00e9 el apartado no quiere decir que tu usuario tenga la terminal activada.<\/li>\n<li>Si no encuentras nada, pregunta a soporte justo esto: \u00ab\u00bfpuedo ejecutar wp-cli por SSH en mi plan?\u00bb.<\/li>\n<\/ol>\n<p>Y aqu\u00ed viene lo inc\u00f3modo. Bastantes planes compartidos de entrada no incluyen SSH, o lo tienen que pedir con justificaci\u00f3n, y sin esa pieza WP-CLI no sirve de nada. Si es tu caso, s\u00e1ltate el resto y ve directo a la \u00faltima secci\u00f3n.<\/p>\n<p>En <strong>Nicalia<\/strong> el SSH est\u00e1 disponible en los planes compartidos. Si en tu cPanel no aparece la Terminal, abre un tique y te la activamos. Tienes las cuatro formas de conectarte (Terminal de cPanel, PuTTY, la terminal de tu ordenador y clave SSH) en <a href=\"https:\/\/www.nicalia.com\/nicapedia\/acceder-mediante-ssh-a-un-usuario\/\">c\u00f3mo acceder mediante SSH a tu hosting<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<h2><a href=\"https:\/\/www.nicalia.com\/blog\/wp-content\/uploads\/2026\/10\/nicalia-wpcli-02.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-3910\" src=\"https:\/\/www.nicalia.com\/blog\/wp-content\/uploads\/2026\/10\/nicalia-wpcli-02-1024x572.jpg\" alt=\"\u00bfC\u00f3mo manejar WP-CLI? \u00bfCu\u00e1nto te interesa y cu\u00e1ndo no, c\u00f3mo sacarle partido?\" width=\"1024\" height=\"572\" srcset=\"https:\/\/www.nicalia.com\/blog\/wp-content\/uploads\/2026\/10\/nicalia-wpcli-02-1024x572.jpg 1024w, https:\/\/www.nicalia.com\/blog\/wp-content\/uploads\/2026\/10\/nicalia-wpcli-02-300x168.jpg 300w, https:\/\/www.nicalia.com\/blog\/wp-content\/uploads\/2026\/10\/nicalia-wpcli-02-768x429.jpg 768w, https:\/\/www.nicalia.com\/blog\/wp-content\/uploads\/2026\/10\/nicalia-wpcli-02.jpg 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" title=\"\"><\/a><\/h2>\n<h2><\/h2>\n<h2>Las cinco tareas que en el escritorio son un suplicio<\/h2>\n<p>Si alguna de estas te suena, WP-CLI empieza a tener sentido. No tienes que memorizar nada, porque cada comando lo copias el d\u00eda que te hace falta.<\/p>\n<div class=\"tabla\">\n<table style=\"height: 211px;\" width=\"1061\">\n<caption>Lo mismo, desde el escritorio y desde la terminal<\/caption>\n<thead>\n<tr>\n<th>Tarea<\/th>\n<th>En el escritorio<\/th>\n<th>Con WP-CLI<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Cambiar el dominio tras una migraci\u00f3n<\/td>\n<td>Un plugin de buscar y reemplazar, y cruzar los dedos<\/td>\n<td>Un comando, con prueba previa<\/td>\n<\/tr>\n<tr>\n<td>Actualizar plugins en 15 webs<\/td>\n<td>15 inicios de sesi\u00f3n<\/td>\n<td>Un bucle de tres l\u00edneas<\/td>\n<\/tr>\n<tr>\n<td>Entrar cuando te has quedado fuera<\/td>\n<td>Un correo de recuperaci\u00f3n que no llega<\/td>\n<td>Cambias la contrase\u00f1a desde el servidor<\/td>\n<\/tr>\n<tr>\n<td>Exportar o importar la base de datos<\/td>\n<td>phpMyAdmin y su l\u00edmite de subida<\/td>\n<td>Dos comandos, sin pasar por el navegador<\/td>\n<\/tr>\n<tr>\n<td>Encontrar qu\u00e9 plugin rompe la web<\/td>\n<td>Desactivar de uno en uno a ciegas<\/td>\n<td>Desactivar todos y reactivar en orden<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h3>1. Cambiar el dominio tras una migraci\u00f3n<\/h3>\n<pre><code>wp search-replace 'https:\/\/antiguo.es' 'https:\/\/nuevo.es' --skip-columns=guid --dry-run<\/code><\/pre>\n<p>Con <code>--dry-run<\/code> te ense\u00f1a cu\u00e1ntos cambios har\u00eda en cada tabla sin tocar nada. Si las cifras cuadran, lo repites sin esa opci\u00f3n. Adem\u00e1s respeta los datos serializados que guardan muchos plugins y maquetadores, que es justo donde un reemplazo a mano en SQL rompe la web.<\/p>\n<h3>2. Actualizar plugins en quince webs<\/h3>\n<p>En una web basta con <code>wp plugin update --all<\/code>. Si tienes varias en la misma cuenta de cPanel, cada una en su carpeta, lo recorres con un bucle (cambia las rutas por las tuyas):<\/p>\n<pre><code>for web in ~\/public_html ~\/tienda.es ~\/blog.es; do\r\n  wp plugin update --all --path=\"$web\"\r\ndone<\/code><\/pre>\n<p>Si est\u00e1n en servidores distintos, WP-CLI admite alias en un archivo <code>wp-cli.yml<\/code> para lanzar el mismo comando contra todas. Lo dem\u00e1s lo tienes en <a href=\"https:\/\/www.nicalia.com\/nicapedia\/gestionar-plugins-con-wp-cli\/\">gestionar plugins con WP-CLI<\/a>.<\/p>\n<h3>3. Entrar cuando te has quedado fuera<\/h3>\n<pre><code>wp user update tu_usuario --user_pass='NuevaContrase\u00f1a'<\/code><\/pre>\n<p>Vale el nombre de usuario, el correo o el ID. Si no recuerdas cu\u00e1l era, <code>wp user list --role=administrator<\/code> te lo dice.<br \/>\n<strong>*<\/strong> Ojo, la contrase\u00f1a queda guardada en el historial de la terminal, as\u00ed que c\u00e1mbiala otra vez desde el escritorio en cuanto entres.<\/p>\n<h3>4. Exportar o importar la base de datos<\/h3>\n<pre><code>wp db export copia.sql\r\nwp db import copia.sql<\/code><\/pre>\n<p>Como no pasa por el navegador, el l\u00edmite de subida de phpMyAdmin y los cortes por tiempo no te afectan. Ten en cuenta que al importar se sustituyen las tablas que vengan en el archivo.<\/p>\n<h3>5. Encontrar qu\u00e9 plugin rompe la web<\/h3>\n<pre><code>wp plugin list --status=active --field=name &gt; activos.txt\r\nwp plugin deactivate --all<\/code><\/pre>\n<p>La primera l\u00ednea guarda la lista de plugins que ten\u00edas activos, para no tener que recordarla. Despu\u00e9s los reactivas uno a uno con <code>wp plugin activate nombre-del-plugin<\/code> y recargas la web cada vez hasta que vuelva a fallar. Si el error es tan grave que ni WP-CLI arranca, a\u00f1ade <code>--skip-plugins<\/code> al comando.<\/p>\n<h2>Lo que no deber\u00edas ejecutar nunca sin una copia delante<\/h2>\n<p>WP-CLI no tiene papelera ni bot\u00f3n de deshacer. Lo que ejecutas pasa en ese momento y sobre la web real, y estos son los comandos que m\u00e1s sustos dan:<\/p>\n<ul>\n<li><strong><code>wp db drop<\/code> y <code>wp site empty<\/code>.<\/strong> El primero borra la base de datos entera. El segundo vac\u00eda entradas, p\u00e1ginas, comentarios, categor\u00edas y sus metadatos, y con <code>--uploads<\/code> tambi\u00e9n la biblioteca de medios. Los dos te piden confirmaci\u00f3n, pero muchas gu\u00edas los copian con <code>--yes<\/code>, que se salta la pregunta. Ojo con lo que pegas.<\/li>\n<li><strong><code>wp search-replace<\/code> sin <code>--dry-run<\/code>.<\/strong> El error cl\u00e1sico y el m\u00e1s caro. Si buscas una palabra demasiado gen\u00e9rica (\u00abtienda\u00bb en lugar de la URL completa), cambias textos, rutas y ajustes de toda la base de datos en un segundo, y a veces no lo notas hasta d\u00edas despu\u00e9s.<\/li>\n<li><strong><code>wp plugin delete<\/code>.<\/strong> Borra los archivos del plugin, sin desactivarlo antes y sin ejecutar su desinstalaci\u00f3n. Si lo que quer\u00edas era apagarlo un rato, el comando es <code>wp plugin deactivate<\/code>.<\/li>\n<li><strong>Cualquier cosa en producci\u00f3n que no hayas probado en una copia.<\/strong> Si tu hosting tiene entorno de pruebas (staging), estr\u00e9nalo ah\u00ed.<\/li>\n<\/ul>\n<blockquote><p>Antes de cualquier comando que modifique datos, <code>wp db export antes-de-tocar.sql<\/code>. Tarda segundos y te salva la base de datos. Los archivos, con la copia de seguridad de tu panel.<\/p><\/blockquote>\n<h2>Cu\u00e1ndo no compensa utilizar WP-CLI<\/h2>\n<p>Si tienes una sola web y entras una vez al mes a actualizar, no lo necesitas. El escritorio hace bien ese trabajo y lo que tardas en coger soltura con la terminal no lo recuperas en todo el a\u00f1o.<\/p>\n<p>Empieza a compensar a partir de unas tres webs, o con una sola si repites tareas cada semana, como importar productos, limpiar comentarios de spam, regenerar miniaturas o pasar cambios de la web de pruebas a la real. Aun as\u00ed, hay un punto intermedio que merece la pena: saber cambiar una contrase\u00f1a o desactivar plugins desde la terminal te saca del apuro el d\u00eda que el escritorio no carga, aunque no vuelvas a usarlo en meses.<\/p>\n<blockquote><p><em>Lo que WP-CLI no hace es acelerar tu WordPress. Sirve para gestionarlo, y lo que tarda en cargar tu web depende de otras cosas.<\/em><\/p><\/blockquote>\n<h2>Por d\u00f3nde empezar<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.nicalia.com\/nicapedia\/guia-wp-cli-comandos-basicos-y-ejemplos-practicos\/\">Comandos b\u00e1sicos y ejemplos pr\u00e1cticos<\/a>, para tener a mano lo esencial.<\/li>\n<li><a href=\"https:\/\/www.nicalia.com\/nicapedia\/actualizar-wordpress-con-wp-cli\/\">Actualizar WordPress con wp-cli<\/a>, la primera tarea \u00fatil y la que antes notar\u00e1s.<\/li>\n<li><a href=\"https:\/\/www.nicalia.com\/nicapedia\/verificacion-de-integridad-en-wordpress-usando-wp-cli-checksum\/\">Verificaci\u00f3n de integridad con checksum<\/a>, para cuando sospechas que alguien te ha tocado archivos del n\u00facleo o de los plugins.<\/li>\n<\/ul>\n<h2>Si tu hosting no te da SSH<\/h2>\n<p>Si has hecho la comprobaci\u00f3n del principio y tu plan no tiene SSH ni forma de activarlo, est\u00e1s ante una limitaci\u00f3n real de algunos planes compartidos baratos. Si gestionas varias webs, es un motivo razonable para cambiar de proveedor.<\/p>\n<blockquote><p><em>Nuestros planes de <a href=\"https:\/\/www.nicalia.com\/soluciones\/hosting-wordpress\">hosting WordPress<\/a> incluyen WP-CLI y acceso por terminal. Si vienes de otro proveedor con cPanel, <a href=\"https:\/\/www.nicalia.com\/migraciones\">la migraci\u00f3n es gratuita<\/a> siempre que la pidas en los 30 d\u00edas siguientes a contratar, y nos encargamos nosotros de la web, el correo y las bases de datos.<\/em><\/p><\/blockquote>\n<h2>Preguntas r\u00e1pidas<\/h2>\n<h3>\u00bfNecesito saber programar para usar WP-CLI?<\/h3>\n<p>No. Para las tareas habituales basta con copiar un comando, cambiar tu usuario o tu dominio y pulsar Intro. Lo que s\u00ed necesitas es acceso SSH o la Terminal de cPanel.<\/p>\n<h3>\u00bfWP-CLI hace m\u00e1s r\u00e1pido mi WordPress?<\/h3>\n<p>No. Sirve para gestionar WordPress desde la terminal, pero no cambia lo que tarda en cargar tu web.<\/p>\n<h3>\u00bfPuedo usar WP-CLI sin acceso SSH?<\/h3>\n<p>Necesitas alguna forma de ejecutar \u00f3rdenes en el servidor. La Terminal de cPanel te lo permite desde el navegador sin instalar nada, aunque tambi\u00e9n depende de que tu plan tenga la terminal activada.<\/p>\n<h3>\u00bfSe puede deshacer un comando de WP-CLI?<\/h3>\n<p>No. No hay papelera ni historial de cambios, as\u00ed que exporta la base de datos con <code>wp db export<\/code> antes de cualquier comando que modifique datos.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Te han dicho que WP-CLI ahorra horas, abriste una gu\u00eda de comandos y la cerraste a la tercera l\u00ednea. Es lo normal, porque antes de [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":3909,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[98,95,723],"tags":[],"_links":{"self":[{"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/posts\/3904"}],"collection":[{"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/comments?post=3904"}],"version-history":[{"count":5,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/posts\/3904\/revisions"}],"predecessor-version":[{"id":3911,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/posts\/3904\/revisions\/3911"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/media\/3909"}],"wp:attachment":[{"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/media?parent=3904"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/categories?post=3904"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nicalia.com\/blog\/wp-json\/wp\/v2\/tags?post=3904"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}