Guia de WP-CLI: Administra WordPress des del teu terminal

A l’treballar amb WordPress, la forma més habitual d’interactuar amb l’aplicació per crear nous usuaris , posts, canviar el disseny de la pàgina o realitzar actualitzacions és el wp-admin. Alguna vegada t’has preguntat si hi ha altres formes de poder treballar amb el teu lloc web?

WordPress posa a la teva disposició diverses interfícies perquè puguis interactuar amb l’aplicació a més del ja esmentat i arxiconegut wp-admin. Algunes d’elles poden ser de gran utilitat si necessites automatitzar tasques en el teu lloc web o vols millorar l’eficiència en el teu treball diari.

Les interfícies de comunicació amb WordPress són, com dèiem, la zona d’administració web o wp-admin, l’arxiu xmlrpc.php (usat freqüentment per atacar les nostres aplicacions), l’API rest de WordPress i finalment, la línia d’ordres a través d’wp-cli.

En aquest article ens centrarem en aquesta última forma de treballar amb el teu CMS preferit i en com pots treure-li tot el potencial a la teva aplicació web a través d’aquesta eina.

Què és WP-CLI

WP-CLI és l’eina oficial per interactuar i gestionar llocs web basats en WordPress a través de línia d’ordres. Pretén ser un substitut de wp-admin, permetent realitzar qualsevol gestió que normalment faries des de la interfície gràfic, en línia de comandes.

En realitat és fins i tot més potent, ja que posa a la teva disposició alternatives per a les quals , a través d’la interfície gràfic, necessitaries instal·lar un plugin. Per exemple, permet la revisió de tasques cron de WordPress, pel que pot ajudar-te a mantenir el teu lloc lliure de codi no imprescindible i fer que funcioni de la forma més ràpida i eficient.

Així, wp-cli et permetrà des instal·lar un WordPress fins a realitzar totes les gestions que puguis imaginar, com ara la instal·lació o esborrat de temes i plugins, gestió d’usuaris i els seus rols i permisos, edició de posts, etc.

Avantatges de WP-CLI

a l’treballar amb eines per terminal, si no tens experiència en el seu ús pot semblar que són rudimentàries i arcaiques, però creu-me que si els desenvolupadors s’esforcen a crear-és per la seva eficiència i versatilitat.

Per exemple, si et dediques a desenvolupar llocs web en WordPress és bastant probable que, d’inici, tinguis una col·lecció de connectors preferits que instal·les en gairebé tots els llocs. Això pots fer-ho de forma automàtica amb wp-cli, mentre et prepares un cafè i penses en com serà la interfície de l’espai web, en comptes d’estar instal·lant manualment tots els connectors, un a un, amb el temps que això consumeix.

el mateix succeeix si vols fer l’actualització de WordPress, amb tots els seus plugins i el tema en ús. Tot i que no és recomanable realitzar aquest tipus de gestions de forma desatesa, ja que és imprescindible comprovar que tot funciona bé un cop ha finalitzat, sí que té grans avantatges l’ús de wp-cli sobre la interfície gràfic. Així no depens de timeouts que puguin produir a causa de el lloc web (així i tot, segueixes depenent dels timeouts de PHP, llenguatge de programació amb que està escrit WordPress). No diguem ja si el teu lloc o un connector no actualitza correctament, ja que les opcions sense wp-cli es redueixen a restaurar còpia de seguretat i tornar a intentar-ho, canviar el nom la carpeta d’el connector o passar a una actualització manual.

Una altra de les característiques que posa a la teva disposició és exportar posts i continguts del teu lloc web o fins i tot la base de dades sencera. Quantes vegades has intentat exportar tots els continguts i, després de diversos minuts d’espera mirant la interfície, has vist que es produeix un error? Això és degut al fet que, a través d’un navegador, depens de més programaris que el teu WordPress; però, amb wp-cli minimitzes les eines en ús, el que redueix el risc de problemes.

Com instal · lar WP-CLI

El primer que necessites per començar a fer servir aquesta eines és, evidentment, instal·lar-la.

Els dos requisits per a poder instal·lar wp-cli són PHP, entre les versions 5.4 i 7.4 i accés per terminal o SSH. En els Hosting Avançats de Raiola Networks i en els servidors VPS Optimitzats comptes amb wp-cli instal·lat per defecte, de manera que pots saltar-te aquest pas i continuar en el següent.

Si encara no tens un producte en Raiola Networks o no és algun dels esmentats, el primer que has de fer és revisar si wp-cli ja està instal·lat. Per això busca en el path wp-cli (el path és la ruta on hi ha els programes executables amb terminal).PUEDES REVISAR SI WP-CLI ESTÁ INSTALADA EN TU PATH CON EL SIGUIENTE COMANDO:

1
2
3
4

que wp-cli || que wp-cli.phar || quin wp
/ usr / bin / que: no wp-cli in (/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / root / bin : / usr / local / vesta / bin)
/ usr / bin / que: no wp-cli.phar in (/ usr / local / sbin: / usr / local / bin: / usr / sbin : / usr / bin: / root / bin: / usr / local / vesta / bin)
/ usr / bin / que: no wp in (/ usr / local / sbin / usr / local / bin: / usr / sbin: / usr / bin: / root / bin: / usr / local / vesta / bin)

Instalre wpcli

Instalre wpcli

1
2
3
4

[email protected]: ~ $ que wp-cli || que wp-cli.phar || quin wp
/ usr / bin / que: no wp-cli in (/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / root / bin : / usr / local / vesta / bin)
/ usr / bin / que: no wp-cli.phar in (/ usr / local / sbin: / usr / local / bin: / usr / sbin : / usr / bin: / root / bin: / usr / local / vesta / bin)
/ usr / bin / que: no wp in (/ usr / local / sbin / usr / local / bin: / usr / sbin: / usr / bin: / root / bin: / usr / local / vesta / bin)

La Salida de Este Comando Te Mostrará si exigeix WP-Cli en Tu Path y Cuál es su nombre para poder Usarlo. En ese Ejemplo, Como Puedes Ver, no existeix (Las 3 Líneas Dicen Que no está en mi camí), por lo que voy un instalarlo.

Los pasos a Seguir para instal·lar i inclosa wp-cli en tu Camí fill:

  1. Accedeix a ssh un servidor o allotjament compartit.
  2. -Descárgate el binario de wp-cli con el siguiente comando:

    1

    Curl -o https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

  3. comprueba que funciona. Para ello, ejecuta:

    1

    php wp-cli.phar –Info

  4. asígnale permisos de ejecución Y MUÉVELO A UN DIRECCIÓ DNO DE TU:
    / div>
    1
    2

    chmod + x wp-cli.phar
    sudo mv wp-cli.phar / usr / local / bin / wp

    Instalre wpcli 2 / p>

    Ahora, compreuba de nuevo si wp-cli está ya en Tu ruta i verás que se te devuelve algo como lo siguiente:

    1
    2
    3
    4

    que wp-cli || que wp-cli.phar || quin wp
    / usr / bin / que: no wp-cli in (/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / root / bin : / usr / local / vesta / bin)
    / usr / bin / que: no wp-cli.phar in (/ usr / local / sbin: / usr / local / bin: / usr / sbin : / usr / bin: / root / bin: / usr / local / vesta / bin)
    / usr / local / bin / wp

    03-INSTALAR wpcli

    03-INSTALL WPCLI

    P> por Último, Solaimee Queda comprobar que la instalació ha funcionado.LO PUEDES HACER COMO YO EN ESTA CAPTURA:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

    wp –info
    OS: Linux 3.10.0 # 1 SMP Tue 9 de juny 12:58:54 Msk 2020 x86_64
    Shell: / bin / bash
    binari de php: / usr / bin / php
    Versió PHP: 7.2.34
    php.ini utilitzat: /etc/php.ini
    wp-cli arrel dir: phar : //wp-cli.phar/vendor/wp-cli/wp-cli
    WP-CLI Vendor Dir: Phar: //wp-cli.phar/vendor
    wp_cli Phar Path: / Root
    Paquets WP-CLI Dir:
    wp-cli global config:
    Projecte WP-CLI config:
    Wp- Versió CLI: 2.4.0

    04-INSTALAR WPCLI

    04-instalar wpcli

    Comandos de wp-cli

    Ahora vamos a ver, els principals subcomandos i para qué sirven. En la Última Parte de l’Este Artículo Haremos Ejemplos Pràcticos amb Algunos de Ellos.

    Primero Vamos A Explicar Los Subcomandos Básicos para Poder Usar una aplicació de WordPress, Como es la Gestió del Propio WordPress i Sus Plugins, temes y Usuarios :

    core Permite descargar, instalar, actualitzar y Gestionar una instal·lació WordPress. Con Este Subcomando Podremos verificar que Nuestro WordPress (Al Menos el nucli, no Los Plugins y Temes) No Tiene Código Malicioso o No Esperat, comprobar Actualitzacions, Convertir Nuestro WordPress una multisitio u Obtener La Versión de Nuestro WordPress, entre Otras opciones.
    config gèneres O Lee el Archivo de configuració principal de wordpress, wp-config.php
    Tema Con Este Subcomando Podemos Instalar i Desinstal Temes, Cambiar El Tema Activo y Actualitzar Los Instalados.
    Connugin es la Versió del Para Gestionar Plugins, Llistat de Todos Los Instalados, Instalarlos, Activarlos o Desactivarlos, Buscar en los repositoris de WordPress o ComproBar su integritat Contra dicos repositorios.
    Mode de manteniment Gestión Integrada de WordPress para modo Mantenimiento.
    dB gestions con la base de dades de wordpress, como la exportación para hacer Copia de Seguridad, La actualización, Ejecución de Consultes u Optimizado de la Misma.
    caché Sirve para controlatar la caché de objetos de wordpress.

    Ahora, vamos A Revisar Los Subcomandos de WP-CLI para La Gestió d’Usuarios:

    Usuari Gestiona Los Usuarios, sus rols i permisos , ASÍ COMO LA INFORACIÓ ASOCIATA A LOS MISISOS.
    Cap Gestió de permisos de l’ONU ROL DE USUARIO.
    Paper Creación i gestió de rols de Usuario. TAMBIÉN Permita Resetear sus propetades al estado por defecto.

    El siguiente subgrupo que vamos Un lliurament de Te Permite La Gestión dels Contenidos de Tu WordPress desde wp-cli:

    Menú Con Esta Opción Podrás Llistat, Crear O Borrar Los Menús de Navegación del Tema Activo. barra lateral Este Subcomando Te Permite Lumar Los Sidebars de WordPresss. Barra lateral ES CUALQUIER ELEMENTA DONDE PODEMOS AÑADIR Ginys. Vienen definidos en el còdigo del tema. widget Podrás añadir, eliminar i gestionar widgets en las barres laterals de tu cms. suports mediante esta u opcion podrás importar archivos como adjuntos de forma masiva, regenerar miniaturas i obtener informació informativa de les imàgies de tu aplicacions. Publica Permite Gestionar La Creació, Edición i Borrado de publicacions. Comentari opción usada para la moderació de comentaris, así como hacer un recuento del número de comentaris en un càrrec, Toda la aplicación, Marcarlos Como Spam , etc.

    Añadiendo comandos a wp-cli

    SI Todas Las Opciones que Te Ofrece WP-CLI Por Defecto No Te Parecen Suficients, Plugins d’Alguuns Incluyen Sus Propyen Herramientas Integradas en terminal. Por Ejemplo, Woocommerce, Jetpack o autooptimitzar Añaden Sus Propios Subcomandos, Lo que Te Permitirá Gestionar Dichos Plugins desde la terminal.

    I, per si això fos poc, es poden escriure plugins o afegits per wp-cli que pots instal·lar i gestionar des del subcomando package, el que et permetrà afegir funcionalitats com comprovacions de l’estat de salut del teu lloc .

    en resum, i com hauràs vist en cas d’haver executat l’ajuda d’wp-cli que et comentava anteriorment, les opcions són molt àmplies, més fins i tot de les que he comentat fins al moment. Existeixen, a més, comandaments per a la gestió de WordPress multilloc, per donar-te estructures precreadas per al desenvolupament de plugins o temes, internacionalització, reemplaçament de cadenes en base de dades (search-replace), revisió de codi, etc.

    Si hi ha algun d’ells que t’interessa revisar i no està en la meva explicació anterior, pots accedir a la seva ajuda amb una execució com la següent:

    1

    wp search-replace –help

    Això mostrarà l’ajuda específica de l’subcomando, explicant-cada un dels arguments o subopcions que té:

    ajuda wpcli

    ajuda wpcli

    Com s’usa WP-CLI

    La teoria està molt bé, però la pràctica fa a l’mestre. Ara que tens unes nocions bàsiques del que fa wp-cli i els seus diferents subcomandos, és el moment d’entrar en feina i veure, sobre el terreny, totes les opcions que posa a l’abast de la mà.

    el primer que farem és instal·lar WordPress. Per a això, has de canviar a directori on apunta el teu domini (per exemple, a cPanel, la carpeta public_html per al domini principal) i executar els 3 comandaments que et deixo a continuació:

    1
    2
    3
    4
    5

    wp core download
    wp config create –dbname = ‘wpcli_wp1’ –dbuser = ‘wpcli_wp1’ –dbpass = ‘claveAccesoBBDDWordpress’
    wp core install –url = ‘https://instalacion-wp-cli.tld’ –title = ‘Blog’ –admin_user = ‘Fran’ –admin_password = ‘claveAccesoWordpress’ –admin_email = ‘fran @ instalacion-wp-cli.tld ‘–skip-mail –path = $ (pwd)

    wpcli-instal·lar-wordpress

    wpcli-instal·lar-wordpress

    L’execució anterior ens donarà un WordPress recentment instal·lat en l’última versió disponible. Ara anem a configurar-lo amb la nostra zona horària. La comanda “option” ens permet obtenir i modificar diferents configuracions del nostre lloc web, tant de l’propi WordPress com de connectors instal · lats:

    1

    wp option update timezone_string Europe / Madrid

    Hauràs de confiar en mi o seguir els passos que acabo d’indicar per comprovar que realment funciona, però si ara accedeixes a https://dominiowordpress.tld en un navegador (jo he fet servir aquest domini, tu hauràs de fer servir el teu propi) pots accedir a un WordPress instal·lat i llest per funcionar.

    el primer que faré amb la instal·lació de WordPress recentment creada serà activar la manera manteniment, per evitar que curiosos puguin accedir mentre realitzo tota la feina:

    1

    wp maintenance- mode activate

    wpcli -Configurar

    wpcli-configurar

    Aquest és el típic mode manteniment de WordPress. Potser prefereixis un una mica més bonic, però l’efecte és el mateix.

    Ja que en la meva instal·lació jo vaig a treballar d’administrador però hi haurà gent que contribueixi a el projecte creant articles, crearem un usuari amb permisos d’autor:

    1

    wp user create ‘Joan’ ‘[email protected]’ –role = author –user_nicename = Juan –send-mail

    02-wpcli-configurar

    02-wpcli-configurar

    De Així, Juan haurà rebut una notificació per correu electrònic de que ja té accés a la nova instància de WordPress que acabo de crear i en la qual treballarem.

    anem ara a instal·lar una sèrie de connectors que vaig a neces sitar per al projecte. M’interessen:

    • LiteSpeed per millorar el rendiment de la meva aplicació. És el connector de memòria cau recomanat a Hosting Compartits de Raiola Networks.
    • Contact Form per a la creació de formularis de manera senzilla.
    • honeypot com a sistema antispam per protegir els formularis per defecte de WordPress .
    • YoastSeo per a la gestió de metaetiquetes en els diferents posts.

    Crec que per ara és suficient, així que anem a fer-ho. La comanda que hem de llançar per instal·lar i deixar actius tots els connectors alhora és:

    1

    wp connector install –activate litespeed-cache contact-form-7 honeypot-anti-spam wordpress-seo

    03-wpcli-configurar

    03-wpcli-configurar

    Podem comprovar ara que wpcli té nous subcomandos, tal com et deia abans. Si escric wp -help en el meu terminal, puc veure que tant Yoast-seo com litespeed s’han inclòs els seus propis subcomandos. Això ens ajudarà a, per exemple, automatitzar el purgat de la memòria cau de litespeed.

    El següent és instal·lar un tema. En aquest cas, faré servir GeneratePress:

    1

    wp theme install generatepress –activate

    04-wpcli-configurar

    04-wpcli-configurar

    I ja que la resta de temes no els necessito per a res, els llest i esborro amb els dos comandaments que et deixo a continuació:

    1
    2

    wp theme list
    wp theme delete twentynineteen twentytwenty twentytwentyone

    05-wpcli-configurar

    05-wpcli-configurar

    I, ja que estic netejant continguts, vaig a esborrar els connectors que porta preinstal·lats i no necessito.Primero Los Listo y Luege Los Elimino:

    1
    2

    Llista de connectors WP
    plugin WP eliminar hola akismet

    06-wpcli-configurar

    06-wpcli-configurar

    Ahora que ja tengo una estructura básica, voy a Añadir un menú a Mi wordpress i configurarlo Como Principal:

    1
    2

    menú wp Crear ‘main_menu’
    Menú WP Localització Assigna main_menu Primària

    07-wpcli-configurar

    07-wpcli-configurar

    y, finalmente i puesto que ja tenia tenemos todos los components de la aplicació Creados, vamos A Añadirle Algo de Contenido Demo, Unos cuantos Usuarios suscriptores i algunos Posts. Podemos Hacerlo Fácilment de la Siguiente Forma:

    1
    2

    USUARI WP Generar –Count = 5 – Role = Subscriptor
    Wp Post Genere –Count = 3 –Post_Content < < < $ (curl -s -n http://loripsum.net/api/2)

    08-wpcli-configurar

    08-wpcli-configurar

    Si Ahora Quisiiera Automatizar Los Despliegues (Instalaciones) y Configuraciones Iniciales) de WordPress, Solo Tengo Que Juntar Todos Los Comandos Anteriores en un Archivo i Darle Permisos de Ejecución. CADA VEZ QUE LO Ús, realizará Todo El Proceso Sin Esfuerzo y Dejándome El Terreno Listo para Commenzar el trabajo.

    Como ves, wp-cli es una herramienta Tremendamente Útil para automatitzar despliegues o acelerar gestiones que, de otra forma, te Consumiría una cantidad considerable de tiempo mediante Las gestions por terminal. Sin Embargo, Sus Utilidades no Quedan Aquí.

    Si Eres un desarrollador O Quieres Comenzar a Navegar Un Poco en Las Entrañas de WordPress, WP-CLI TE Servirá para la Creació de Estructuras Básicas Para Desarrollo de Plugins, Temes, etc., Mediantte Su Comando Scaff.

    Vamos A Usarlo para Crear La Estructura Básica de l’ONU Plugin que, por su nom, podéis Imaginaros lo que hace:

    1

    plugin de plugin wp bastye-lento –plugin_description = ‘Plugin para ralentizar la aplicación wordpress’

    09-wpcli -Configurar

    09-wpcli-configurar

    Tras introducir un par de lín EAS DE CODIGO EN EL PLUNIN, ESTE YA CUMLE CONU FUNCIÓN: Ralentizar La Carga de WordPress.

    A Grans Rasgos Puede No Parecer El plugin Más Útil del Món, Pero Servirá un modo ilustrativo para el siguiente subcomando que VAMOS A Utilitzar, perfil.

    Instal·lar Subcomandos de wp-cli

    SI bien perfil es no subcomando que está llistats como los principalses de wp-cli, como podemos ver en su sitio oficial https://developer.wordpress.org/cli/commands/profile/, no hi ha preinstal·lat per defecte.

    Al Igual Que algunos plugins nos Han Creado Subcomandos de WP-CLI, SE Pueden Extender Las Funcionalidades d’Esta Herramienta Mediante Paquette Creados por algunos desarrolladors. Incruso Podrías Crear Alguuno para automatitzar ciertos procesos repetitius o amb elevados Consum A Través del Interfaz Gráfico, Accelerando Así Un Poco Más Las Gestiones.

    Bé, com diu la documentació, per instal·lar el subcomando profile hem d’escriure:

    1

    wp package install wp-cli / profile-command

    01-wpcli-paquets-addicionals

    01-wpcli-paquets -adicionales

    de nou, si fem servir wp -help veurem que se’ns ha afegit un altre ordre, profile.

    Per a l’exemple ens interessen dos subcomandos: stage i hook.

    El primer que farem és analitzar en quina consumeix WordPress seu temps quan li demanem que carregui la pàgina d’inici (podem testejar altres URL amb alguns dels seus arguments):

    1

    wp profile stage –fields = stage, time, query_time, hook_time, request_time

    02-wpcli-paquets-addicionals

    02-wpcli-paquets-addicionals

    Podem veure que ‘template’ consumeix ’10 segons! Analitzarem què pot estar provocant aquesta situació.

    Si analitzem com funciona template, veurem què triga a carregar en aquesta part del nostre WordPress:

    1

    wp profile stage template –fields = hook, callback_count, time, query_time

    03-wpcli-paquets-addicionals

    03-wpcli-paquets-addicionals

    Com s’aprecia en la captura, el hook wp_head triga els 10 segons que havíem determinat anteriorment. Anem a determinar el perquè.

    Amb l’subcomando hook podem veure tots els hooks de WordPress i quant triga a carregar cada un d’ells. Farem servir l’argument -spotlight perquè no ens mostri aquells els temps de càrrega són irrellevants:

    1

    wp profile hook –spotlight –fields = hook, time, query_time, request_time

    04-wpcli-paquets-addicionals

    04- wpcli-paquets-addicionals

    de nou tenim informació que hi ha un hook, en concret wp_head com ja hem vist abans, que triga 10 segons a carregar. Anem a navegar-hi.

    1

    wp profile hook wp_head –spotlight –fields = callback, time

    05-wpcli-paquets-addicionals

    05-wpcli-paquets-addicionals

    Podem veure que hi ha un callback (funció, en aquest cas) crida stremely_slow_function () que tarda a carregar 10 segons i la ubicació és plugin-realment-lent / plugin-realment-lento.php; concretament, la línia 17.

    Si obrim l’arxiu, podem veure que la funció fa el següent:

    1
    2
    3

    function function_realmente_lenta () {
    sleep (10);
    }

    Bàsicament, es tracta d’una funció dummy. Simplement espera 10 segons abans de fer res, de manera que podríem llevar-la de la nostra aplicació, per exemple, desactivant el connector.

    1

    plugin wp complundtive plugin-realmente-lento

    tras desactivar ese plugin bronzo malo, mi wordpress vuelve a cargar ca TIEMOS NORMALES:

    = “1FB5B473E”>

    1
    Fase de perfil WP

    06-wpcli-paquetes-adicionales

    06-wpcli-paquetes-adicionales

    Conclusió

    Como ha Podido ver, wp-cli es una herramienta muy versátil que us permeten economitzar tu tiempo de manera que puedas invertirlo en que tus desarrollos sean más eficies o ayudarte una trobada efontrar esos cuellos de botella a los que tanto Cuesta Dar Mediante Las Herramientas Que Proorciona la Interfaz Gráfica.

    SI necesitas que l’expert en wordpress analice Tu sitio web, sense dudes en contacte amb nos motos per a podamos ecarte una mano. Disponiment de l’ONU Departamento Especializado Que pugen revisar Todo esto i mucho más.

Leave a Comment

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *