WordPress

feat. wp-cli

Andrés Hernández - tonejito

Mayo 2024

🖖

¡Hola!

SysAdmin + Backend DevOps

Manejadores de contenido

Manejadores de contenido

  • Se utilizan para publicar páginas en Internet
  • Normalmente proveen un editor WYSIWYG
  • Permiten incorporar imagenes y otros elementos multimedia en el contenido
  • No necesitas saber HTML, CSS o JS para publicar tu contenido
WordPress, Drupal  … 

 …  y Joomla 🙄

Usos de WordPress

Sitios

  • Blog
  • Portafolio
  • Noticias
  • Revistas
  • Catálogos

Páginas

  • Personales
  • Comerciales
  • Publicitarias
  • Institucionales
  • Gobierno

Ventajas de WordPress

  • Versión SaaS y auto-hospedada
  • Soporte
    • De la comunidad
    • Pagado
  • Existen muchas integraciones de terceros
    • Cache
    • CDN
    • Sitio estático
    • etc.

Variantes de WordPress

WordPress.org

🤗

  • Auto-hospedado (DIY)
  • Baja el software e instálalo en tu servidor

WordPress.com

🤑

  • SaaS (nube)
  • Servicio comercial (Automattic)

Características ①

  • Es el CMS más popular que existe
  • Simple
  • Versatil
  • Modular
  • Extensible
  • Soporte multi-sitio
  • Integraciones a servicios externos
  • Permite el uso comercial sin licencia

Características ②

  • Manejo de las publicaciones
    • Borrador, publicación programada, revisiones
  • Niveles de acceso del contenido
    • Público, restringido, privado
  • Roles y manejo de usuarios
    • Administrador, editor, autor, colaborador, subscriptor

Características ③

  • Edición básica de imagenes
  • Estándares de la W3C
  • Temas
  • Plugins
  • Funcionalidad con otros servicios

Desarrollo en WordPress

Características de desarrollo ①

  • Tipos de contenido
    • Posts (blog)
    • Otros tipos de contenido personalizados
    • Taxonomías
    • Metadatos
  • WordPress Handbook
    • RTFM 🔥
  • Sistema de plugins
    • API, hooks, repositorio de plugins

Características de desarrollo ②

Patterns

  • Define bloques HTML que se pueden reutilizar
  • Repositorio de patterns
  • ¡Puedes crear el tuyo!

Características de desarrollo ③

Temas del sitio

  • Temas predeterminados y desarrollados por terceros
  • Configura y extiende los temas
  • Repositorio de temas
  • ¡Puedes crear el tuyo!

Características de desarrollo ④

Framework de aplicaciones

  • Manejo de usuarios
  • Traducciones
  • Manejo de peticiones HTTP
  • Conexión a base de datos
  • Manejo de URLs
  • APIs REST y XML-RPC
 
 

Yo también quiero vivir ese sueño señor Pool

Administración ①

Instalación

  • Dominio
  • Certificado SSL
  • Configuración del servidor web
    • VirtualHost o path
  • Configuración de PHP
  • Base de datos
  • Motor de caché

Administración ②

Configuración

  • Plugins
  • Temas
  • Patterns

Administración ③

Páginas de inicio de sesión

  • wp-admin
  • wp-login

Roles y manejo de usuarios

  • Admin
  • Editor, Autor
  • Colaborador, Subscriptor

Mantenimiento

Mantenimiento

  • Versiones soportadas
  • Notificaciones de actualización
  • Respaldo
    • VirtualHost
    • htdocs
    • Base de datos
    • Contenido externo
  • Banderas del sitio
    • Modo de mantenimiento
  • Páginas de error

Monitoreo

Bitácoras

  • Equipo
  • Base de datos
  • Servidor web
  • Intérprete PHP
  • Aplicación (WordPress)
  • Servicios externos
  • Equipo
    • Sistema operativo
    • Disco
    • CPU
    • Memoria
  • Estado de la red
  • Enlaces a Internet
  • Servicios externos
  • Puesta a punto

wp-cli

wp-cli

  • La línea de comandos de WordPress
  • Administra una instalación de WordPress sin utilizar el navegador
  • wp-cli handbook

wp-cli

Comandos:

  • Instalación
  • Respaldo
  • Importar datos
  • Caché
  • Base de datos
  • Módulos
  • Temas

Instalando wp-cli

 

  • Archivo PHAR
  • composer
  • git

Gesor de paquetes

  • dpkg
  • dnf

Contenedores

  • Docker
  • Podman

Instalación de WordPress

  • wp core download
  • wp config create ...
  • wp db create
  • wp core install ...
  • wp core is-installed
  • wp core version

Modo de mantenimiento

Modo de mantenimiento

  • wp maintenance-mode status
  • wp maintenance-mode activate
  • wp maintenance-mode deactivate

Respaldo

Respaldo

  • wp maintenance-mode activate
  • wp cache flush
  • wp cron event run ...
  • wp dist-archive
  • wp db export ...
  • wp maintenance-mode deactivate

Actualización

Actualización

  • wp maintenance-mode activate
  • wp core version
  • wp core check-update
  • wp core update ...
  • wp core updatedb ...
  • wp core version
  • wp maintenance-mode deactivate

Manejo de base de datos

  • wp db size
  • wp db query < query.sql
  • wp db drop
  • wp db optimize
  • wp db repair
  • wp db tables
  • wp db search ...

Manejo de usuarios

  • wp user
  • wp super-admin

Manejo de temas y módulos

  • wp package
  • wp plugin
  • wp theme
  • wp widget

Otros comandos

  • wp cron even schedule ...
  • wp cron test
  • wp server
  • wp eval
  • wp eval-file ...
  • wp find
  • wp shell

Demo wp-cli

Instalando un tema

$ wp theme install twentyseventeen --activate
Installing Twenty Seventeen (3.6)
Downloading installation package from
  https://downloads.wordpress.org/theme/twentyseventeen.3.6.zip
Unpacking the package...
Installing the theme...
Theme installed successfully.
Activating 'twentyseventeen'...
Success: Switched to 'Twenty Seventeen' theme.
Success: Installed 1 of 1 themes.

Instalando un módulo

$ wp plugin install test-content-generator --activate
Installing Test Content Generator (0.4.2)
Downloading installation package from
  https://downloads.wordpress.org/plugin/test-content-generator.0.4.2.zip
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'test-content-generator'...
Plugin 'test-content-generator' activated.
Success: Installed 1 of 1 plugins.

Ejecutando acciones de un módulo

$ wp test images --amount=10
TCG_Images: running  100% [=======================================>] 0:00 / 0:00
Success: Saved 10 images to the Media Library.

$ wp test posts --amount=40
TCG_Posts: running  100% [========================================>] 0:00 / 0:00
Success: 40 test posts have been successfully generated.

$ wp test comments --amount=100
TCG_Comments: running  100% [=====================================>] 0:00 / 0:00
Success: 100 test comments have been successfully generated.

¿Preguntas?

Gracias

 

Andrés Hernández

tonejito