WordPress es lento, está lleno de vulnerabilidades y puede usarse sólo para blogs. Todos lo hemos escuchado más de una vez. En este artículo quiero desacreditar algunos mitos y mostrar cuánto ha cambiado WordPress a lo largo de los años.
Durante la Conferencia Internacional de PHP , tuve la oportunidad de dar una charla llamada «Pruebe WordPress: no es tan malo como cree». Quería mostrarle a la gente que a pesar de la reputación que tiene WP, es un CMS muy importante y que ha evolucionado en los últimos años.
¿Por qué es importante WordPress de todos modos?
Puedes amar u odiar WordPress, pero eso no cambia el hecho de que WordPress es el CMS más popular. Hay una razón por la cual alrededor del 43% de los sitios web lo utilizan . Tener aproximadamente la mitad del mercado es una cosa, pero ver que el segundo lugar (Shopify) tiene menos del 5% muestra que WP está dominando el mercado. Y pensar que en algún momento WP, Joomla y Drupal tuvieron una cuota de mercado similar. Ahora Joomla y Drupal tienen el 1,7% y el 0,9% del mercado.
Por supuesto, WordPress es más que sólo el núcleo. Incluso me atrevería a decir que WP sin complementos tiene pocas funciones. Pero el enorme ecosistema que lo rodea hace mucha magia. Con miles de temas y complementos, podemos ampliar nuestro sitio web rápidamente. También es un mercado enorme para introducir nuevos temas y complementos.
Además, según WPEngine , todo el ecosistema de WordPress valía alrededor de 600 mil millones de dólares en 2021. Eso es bastante para una «pequeña plataforma de blogs».
Los estereotipos
La reputación de WordPress, especialmente fuera de la burbuja de WP, es bastante pobre y muy a menudo podemos escuchar algunos comentarios no agradables. Decidí enumerar los más populares y desacreditarlos.
Solo una plataforma de blogs
Sí, WordPress puede ser una plataforma de blogs . Y uno genial. Muchas empresas decidieron utilizar WP para sus blogs, incluso si no lo utilizan en ningún otro lugar (Slack, GitHub, etc.).
También vale la pena mencionar que WordPress comenzó como una plataforma de blogs y hasta la introducción de tipos de publicaciones personalizadas permaneció así. Los tipos de publicaciones personalizadas cambiaron todo y permitieron a los desarrolladores crear más estructuras de contenido.
Desde ese momento, WP se volvió muy flexible: puede ser un blog, un portafolio, un comercio electrónico, un LMS o lo que quieras. Por supuesto, el hecho de que puedas crear un segundo FB en WordPress no significa que debas hacerlo.
Lento
Sí, WordPress puede resultar lento si se hace mal. Pero adivina qué, todos los CMS se comportarán así.
A lo largo de los años, tanto el núcleo como muchos complementos progresaron mucho aquí implementando diferentes soluciones. Core redujo la cantidad de consultas en el backend y también implementó muchas estrategias para una interfaz con mejor rendimiento (escalado de imágenes, carga diferida, etc.). Por ejemplo, el último WP realiza 20 consultas a la base de datos y obtiene una puntuación superior a 90 en la velocidad de la página de Google sin ningún almacenamiento en caché.
Los complementos comenzaron a introducir tablas de bases de datos personalizadas (consulte Yoast y WooCommerce como ejemplos).
Además, si exploras el artículo sobre Kinsta comparando la velocidad de diferentes CMS , verás que WordPress no es el más lento (aunque algunos CMS fueron probados en modo de desarrollo y otros en producción).
Lleno de vulnerabilidades
El núcleo de WordPress es generalmente seguro. El año pasado sólo tenía 13 vulnerabilidades de baja gravedad. Se trata de una puntuación excelente para un CMS que muchos investigadores de seguridad prueban amplia y constantemente. Hay algunas cosas que WP podría hacer mejor pero en general es seguro.
Los complementos, por otro lado, son responsables del 96% de las vulnerabilidades. Si bien eso parece aterrador, no es del todo malo:
- cada vez que descubrimos una vulnerabilidad podemos solucionarla
- Hay tantos complementos en el ecosistema de WP que no sorprende que lleguen tantos informes.
Además, vale la pena mencionar que existen muchas soluciones, en diferentes capas, que hacen que WordPress sea más seguro. Por ejemplo Patchstack con su complemento y programa de recompensas .
Escrito en PHP
Eso es cierto, está escrito en PHP. Pero están apareciendo más partes en JS.
¿Qué cambió?
Editor de bloques también conocido como Gutenberg
Con WordPress 5.0, el Editor de bloques se convirtió en el editor predeterminado en lugar de TinyMCE. Si bien hubo muchas controversias al respecto, Gutenberg introdujo una experiencia de escritura mucho mejor que su predecesor.
El nuevo editor introdujo muchos cambios, como:
- está escrito en React y extenderlo requiere conocimientos de JS
- Ofrece una experiencia de escritura más parecida a la de Notion.
- No es completamente WYSIWYG, pero es bueno para mostrar la experiencia general de cómo se verá el contenido.
Edición completa del sitio
Después de presentar a Gutenberg, el FSE fue el siguiente paso. La edición completa del sitio permite a los usuarios crear sitios web sin escribir una línea de código. Si bien personalmente no soy partidario de este enfoque, entiendo que muchos usuarios podrían beneficiarse de él.
Además, en teoría, FSE debería ser, a largo plazo, una solución más estable que otros creadores de páginas.
API REST y GraphQL
Agregar REST API al núcleo y GraphQL como complementos ( WPGraphQL y Gato GraphQL ) permitió nuevas formas de interactuar con el CMS. Por ejemplo:
- Podemos usar aplicaciones de terceros para leer y usar datos de WP.
- use WP como un CMS sin cabeza y conéctelo con marcos como Astro, Nuxt o Next
- Úselo para hacer la interfaz más interactiva
WP-CLI
WP-CLI permitió a los usuarios otra forma de interactuar con el CMS: utilizando el terminal. WP-CLI es una gran herramienta para automatizar tareas y mantenimiento.
Zona de juegos de WordPress
WordPress Playground es, en mi opinión, lo más revolucionario que le ha pasado a WP en los últimos años. Permite a los usuarios iniciar WordPress dentro del navegador, sin necesidad de un servidor. ¿Como es posible? Todo gracias a WASM.
Gracias a Playground, los usuarios pueden probar cosas, ver demostraciones de Pull Requests y más.
Felicitaciones a Adam y a todo el equipo responsable de esto.
Actualizaciones con 1 clic y actualizaciones automáticas
WordPress tiene un sistema de actualización realmente bueno y fácil de usar. Cuando la actualización esté disponible, puede iniciar sesión en el panel de administración y presionar el botón de actualización.
Aparte de esto, WordPress introdujo el sistema de actualización automática, que actualiza los complementos automáticamente (también es configurable, por lo que solo puede actualizar versiones menores).
En ambos casos, los mecanismos son realmente buenos: la mayoría de los problemas son causados por autores de complementos que no utilizan el control de versiones semántico, lo que a menudo conduce a actualizaciones que introducen cambios importantes de la nada.
Pila de raíces.io
WordPress, por defecto, prefiere un enfoque un poco más heredado que PHP. Puede resultar molesto porque el PHP moderno ofrece muchas cosas sorprendentes. Afortunadamente, Roots.io decidió crear una pila completa que permite a los desarrolladores de WordPress utilizar un enfoque más moderno para el desarrollo de PHP.
Bedrock cambia la estructura de carpetas para que sea más fácil de almacenar en Git, también habilita archivos de configuración basados en el entorno y permite el uso de Composer para la gestión de complementos.
Sage es un tema inicial moderno que utiliza Blade y Tailwind CSS.
Bud es un sistema de construcción para todo esto.
Acorn es una colección de componentes de Laravel para WordPress.
Bedrock es mi favorito personal y lo uso para la mayoría de los proyectos de WordPress. Es mucho más fácil iniciar un nuevo proyecto con él.
Ramita y espada
Mientras hablamos del enfoque moderno. No me imagino sin utilizar motores de plantillas en mi trabajo. Gracias a Timber puedo usar Twig y gracias a Sage puedo beneficiarme del uso de Blade. Ambos hacen la vida de nuestros desarrolladores un poco más fácil.
Equipo de rendimiento de WordPress
En 2021, WordPress anunció WordPress Performance que se encarga de hacer que WordPress sea más rápido. Crearon el complemento Performance Lab donde puedes lanzar diferentes optimizaciones que, después de probarlas, terminarán en el core.
En mi opinión, están haciendo un gran trabajo y luchando activamente contra uno de los estereotipos más comunes de WordPress.
Cómo WordPress
Al observar todas las cosas que han cambiado últimamente, es posible que se pregunte cómo funciona WordPress. Y esa es una muy buena pregunta: la flexibilidad de WP tiene su precio. Puedes abordar cualquier problema de muchas maneras. En el nivel más alto, puedes crear un sitio web de WordPress de una de cinco maneras:
- Sin código/código bajo : gracias a la edición completa del sitio y a los creadores de páginas, es realmente sencillo crear sitios web sin siquiera tocar una línea de código. Tiene un costo de rendimiento y mantenimiento, pero es una excelente manera de probar cosas antes de invertir más dinero en un sitio web o una aplicación.
- Temas de bloque : esto es algo entre el enfoque Low-Code y el estilo Legacy . Consulte este artículo para obtener una explicación detallada.
- PHP moderno : gracias a la pila de root.io o similar, puedes usar PHP moderno con WordPress. Si bien hay una mayor curva de aprendizaje y menos documentación, es una gran solución para más soluciones empresariales.
- Sin cabeza : gracias a la API REST o GraphQL, puede conectar WordPress con un marco de interfaz moderno como Astro , Nuxt o Next. Además, consulta este artículo que escribí sobre Headless.
- Legacy AKA Old School : simplemente escriba código como siempre lo hicimos, sin Composer, sin herramientas de compilación, solo HTML con funciones PHP internas y una pizca de 🍝
No todo es perfecto
Mucho ha cambiado en el ecosistema de WordPress. La mayoría de las cosas son para mejor. Aunque no todo es perfecto. Si tuviera que enumerar las dos cosas más molestas, elegiría la siguiente.
Compatibilidad con versiones anteriores
La compatibilidad con versiones anteriores suele ser algo bueno. Lamentablemente, WordPress decidió adoptar un enfoque bastante radical. Esto significa que WordPress 6.5 (la versión actual cuando escribo esto) se ejecuta en PHP 7.0, PHP 7.1, PHP 7.2, PHP 7.3, PHP 7.4, PHP 8.0, PHP 8.1, PHP 8.2 y PHP 8.3. Esa es una lista bastante impresionante.
Es aún más «impresionante» si nos damos cuenta de que sólo PHP 8.1, PHP 8.2 y PHP 8.3 son oficialmente compatibles (aunque 8.1 sólo tiene actualizaciones de seguridad y finalizará su vida útil en unos meses).
Si te gusta el PHP moderno y te gustaría contribuir al núcleo, te sorprenderá. Además, admitir muchas versiones de PHP lleva tiempo y requiere un esfuerzo adicional.
Sin embargo, hay algunas buenas noticias. Con WordPress 6.6 eliminaremos el soporte para PHP 7.0 y 7.1.
Estándares
A WordPress le encanta crear estándares y sus propias soluciones. Algunos ejemplos:
- API de interactividad , uno de los ejemplos más recientes, podríamos haber usado Alpine.js y crear un complemento para algunas necesidades específicas de WP. Este enfoque nos daría acceso a desarrolladores fuera de la burbuja de WP.
- Cargador automático : si bien hay tantas voces sobre la implementación del cargador automático de Composer, después de muchos años de discusiones probablemente nos conformaremos con construir nuestro cargador automático.
- WPCS : un estándar de codificación que, en este momento, está un poco por detrás del resto. Si bien otros marcos también implementan algunos estándares propios (Laravel y Symfony), se basan principalmente en estándares de codificación PSR. WPCS no lo es.
Entiendo que a veces hacer algo a mano es una buena idea para mantener el control y dar forma al futuro de dicha solución, pero también tener que mantener todo tiene un coste.
Prueba WordPress
Como puede ver, WordPress cambió mucho con el tiempo. Es más flexible, más rápido y más seguro. No es perfecto, aún requiere trabajo, pero hay una razón por la cual el 43% de los sitios web lo utilizan. También debemos recordar que WordPress es familiar y fácil de usar para las personas que lo usarán a diario.
En mi charla y en este artículo, nunca pensé en obligarte a empezar a usar WordPress porque es increíble. Sólo quería que le dieras una oportunidad de luchar y vieras cómo cambió; podría sorprenderte.
Ya mencioné que WordPress tiene una mala reputación y, aunque algunas partes de WP están lejos de ser perfectas, considero a WordPress como un CMS realmente bueno y estable y su reputación es injusta con el estado actual de WordPress.