Actualizaciones automáticas de plugins WordPress

¿Sin preocupaciones con las actualizaciones automáticas de plugins WordPress?

Las actualizaciones automáticas para versiones menores de WordPress han demostrado su eficacia durante años. Pero, ¿funciona esto también con las actualizaciones de los plugins? Y si es así, ¿en qué condiciones? El desarrollador de WordPress Florian Simeth investigó esta cuestión.

Quien lleve un tiempo utilizando WordPress sabe que las actualizaciones automáticas del núcleo del software funcionan bastante bien y normalmente sin problemas. Si no fuera por los plugins. Normalmente, pensar en actualizaciones automáticas de plugins eriza los pelos de la nuca de la mayoría. Cualquiera que haya apretado los dientes antes de pulsar el botón de actualizar sabe de lo que hablo.

No existe ninguna certeza fundamental de que las actualizaciones se realicen correctamente. Ni siquiera si la actualización en sí no falla, pero los errores acechan en algún lugar -invisible- subterráneo. La mayoría de los y las colegas a quienes pregunté no realizarían actualizaciones automáticas de plugins, al menos no para todos los plugins WordPress. Pero, ¿por qué es así en realidad?

Actualizaciones automáticas de plugins: Riesgos

Cientos de voluntarios contribuyen a las nuevas versiones WordPress. No todos los proyectos de plugin tienen este poder. La mayoría de los plugins gratuitos del directorio de plugins WordPress han sido desarrollados por una sola persona (o quizá por un pequeño equipo). Esto no significa que estos plugins sean malos per se. Sin embargo, sabemos por experiencia que suelen ser los plugins los que abren agujeros de seguridad y convierten así la propia instancia de WordPress en una superficie de ataque para los piratas informáticos.

Por tanto, cabe suponer que la calidad del código se resiente o no se prueba lo suficiente. No quiero seguir explicando por qué es así. Pero eso explica por qué hago clic rápidamente en el botón de actualización para plugins conocidos como YoastSEO y no para otros.

"Básicamente, puedes reconocer los problemas porque algo ha ido mal antes", escribió el desarrollador de WordPress Marc Nilius en una entrevista por correo electrónico. Según su propia información, actualmente mantiene unas 200 instancias WordPress y conoce muy bien a sus "amigos".

Ahora bien, Yoast tiene sin duda un gran equipo detrás de su propio plugin gratuito YoastSEO, que está activo en más de cinco millones de sitios de WordPress. El buque insignia de la empresa hace todo lo posible para que nada falle. Eso se consigue con esfuerzo. Un esfuerzo que un desarrollador por sí solo no puede o no quiere asumir. Entonces, ¿qué se puede hacer?

Formas de minimizar el riesgo de los plugins

1. No utilizar plugins antiguos

"Democratizing Publishing" es un principio de WordPress. El hecho de que cualquiera pueda crear rápida y fácilmente un sitio web en WordPress es algo brillante, pero conduce automáticamente a que estas personas quieran ampliar sitio en algún momento. Y lo hacen con plugins. Como normalmente no pueden programarse a sí mismos, buscan un remedio en la eterna WorldWideWeb. Y hay muchos. 

Actualmente, hay casi 55.000 solo en el directorio de plugins WordPress. Lo que funciona es lo que se utiliza. Sin prestar atención a si el plugin sigue desarrollándose o si es compatible con la versión actual de WordPress. Esto no siempre es cierto y, en última instancia, suele llevar a adquirir una sana desconfianza hacia las actualizaciones. Porque a menudo estos plugins tienden a dejar de funcionar en algún momento. Aunque esto pueda llevar algunos años.

Seleccionar plugins WordPress

¿Quieres evaluar correctamente la calidad de los plugins WordPress? Entonces lee el artículo 13 consejos para elegir correctamente los plugins WordPress. También te dice lo que puedes hacer si hay problemas.

Por supuesto, también hay ejemplos positivos. Por ejemplo, hay una gran empresa detrás de WooSidebars. Sin embargo, el plugin WooCommerce no recibió ninguna actualización durante mucho tiempo. No se ha probado con las últimas versiones WordPress, pero sigue funcionando perfectamente en muchos casos. ¿Cuánto tiempo más? Comentarios anteriores en la sección de apoyo ya apuntaban a un final. Sin embargo, el usuario no notó nada al respecto. Durante la instalación, solo un pequeño y discreto aviso indica esta deficiencia. Algo peligroso.

Por supuesto, cuando empiezas tu carrera de bloguero, a menudo no tienes dinero para el desarrollo individual. Para estas personas, a veces no hay otra alternativa. No obstante, debes tener en cuenta que, debido a los riesgos de seguridad mencionados anteriormente, no se deben utilizar plugins de WordPress obsoletos.

Nota sobre la seguridad de los plugins de WordPress
Referencias a plugins obsoletos en wordpress.org

2. No adaptes los plugins tú mismo/a

Para ahorrar tiempo de desarrollo, los plugins WordPress oficiales y no oficiales suelen ser simplemente adaptados por sus propios desarrolladores. Si no se cambia el número de versión o el nombre del plugin, WordPress ofrece una actualización, aunque puede que no se lleve a cabo porque, de lo contrario, sobrescribiría los cambios propios.

"Los plugins personalizados suelen depender demasiado de las funcionalidades del theme", sabe también Marc. Si algo cambia en el theme, el plugin deja de funcionar correctamente. Así que hay muchos problemas, pero hacerlo todo uno/a mismo/a desde cero, es decir, utilizar únicamente los propios desarrollos, tampoco es una alternativa real en este caso.

3. No usar plugins malos

¿Qué es un plugin "malo"? Esta pregunta no es fácil de responder. Sobre todo para los profanos. Por supuesto, cabe preguntarse si se realizan pruebas automatizadas de las nuevas versiones. Pero, ¿quién hace eso? Muchos usuarios WordPress ni siquiera saben que eso es posible. Además, estas pruebas (si se llevan a cabo) a menudo no tienen nada que ver con situaciones reales.

Lo cual es comprensible desde el punto de vista de los desarrolladores. ¿Quién prueba todos los plugins con todos los themes WordPress posibles? ¿O todos los plugins con todos los demás plugins? Eso no es posible. Tampoco puedes fiarte de los que desarrollan plugins para WordPress.

También en este caso, a veces es imposible no utilizar plugins "malos", porque sencillamente no siempre son reconocibles. Aunque la calificación de calidad es el primer obstáculo para muchas personas en internet, al menos tú deberías probar activamente los nuevos plugins antes de integrarlos en un sitio websitio activo. Hablaremos de ello más adelante.

"*"indica que los campos son obligatorios

Me gustaría suscribirme a newsletter para estar informado sobre nuevos artículos del blog, ebooks, funciones y noticias sobre WordPress. Puedo retirar mi consentimiento en cualquier momento. Ten en cuenta nuestra Política de privacidad.
Este campo es de validación y no debe modificarse.

Por qué fallan las actualizaciones automáticas de plugins

El hecho es: no puedes simplemente no utilizar plugins WordPress. Los problemas mencionados siempre existirán. Así que hay que encontrar otra solución. La pregunta que tienes que hacerte es: "¿Cómo puedes, a pesar de todos los problemas, seguir realizando actualizaciones automáticas para plugins WordPress?". Y esta pregunta conduce inevitablemente a la siguiente: "¿Qué podría salir mal?".

Aquí tienes algunas posibilidades:

  1. PHP-Fatal-Error: El sitio web ya no funciona debido a un error grave.
  2. El plugin no funciona (más) con otros plugins y/o el theme. Esto se manifiesta de varias maneras:
    a) las funciones ya no están disponibles o
    b) el diseño cambia en el frontend.
  3. La inexistencia de compatibilidad con versiones anteriores dificulta el retroceso.
  4. La base de datos es tan grande que se tardaría mucho tiempo en hacer una copia de seguridad.

Enfoques para actualizar plugins con éxito

Reconocer los plugins malos

Empecemos por el usuario. ¿Cómo podría reconocer un plugin "malo"? Como el "profano" no puede comprobar si la calidad del código es buena, habría que crear un sistema que pudiera hacerlo. La pregunta es: ¿Funcionaría algo así? Y la respuesta es bastante clara: ¡Sí!

Lo bueno es que un pequeño equipo WordPress ya está trabajando en un sistema así. Se llama Tide. La visión de Tide es realizar pruebas de calidad automatizadas para todos los plugins y themes WordPress y hacer que los resultados de estas pruebas sean visibles tanto para autores/as como para usuarios/as de estos plugins y themes.

Marea WordPress
Pruebas de calidad con Tide para WordPress

Aún no está listo, pero en el futuro Tide ayudará a identificar mejor qué tipo de plugins WordPress se están instalando. Hasta entonces, tendrás que ceñirte a los metadatos del plugin, que se muestran en wordpress.org en el directorio de plugins de cada plugin individual:

  1. La fecha de la última actualización. Las actualizaciones frecuentes pueden indicar un proceso de desarrollo activo. En la mayoría de los casos, también se encargan de corregir los erroressus creadores.
  2. Número de instalaciones. Un número muy alto no solo indica popularidad, sino que también puede ser un indicio de que los/as desarrolladores/as están ganando dinero con el plugin (por ejemplo, a través de una versión pro). Esto crea una cierta presión por parte del fabricante. Sin duda tienen interés en que el plugin gratuito también funcione sin errores.
  3. Probado hasta... También se trata solo de un número de versión que el fabricante puede ajustar en cualquier momento sin necesidad de que lo pruebe un tercero. Sin embargo, un número de versión actual es una indicación de que el plugin se actualiza regularmente.
  4. Versión PHP. Aunque está bien que sigan dando soporte a números de versión bajos de PHP, una versión más alta sería más segura.

Pruebas automatizadas del navegador

Ahora se pone un poco más difícil. Especialmente para quienes no tienen ningún conocimiento de programación. Cualquiera que dependa de funciones importantes debe probarlas regularmente, preferiblemente de forma automática, por supuesto.

Puppeteer es una biblioteca NodeJS que proporciona una API de alto nivel para controlar el navegador Chrome a través del protocolo DevTools. Puppeteer se ejecuta "headless" por defecto, pero puede ser configurado para abrir el navegador para que se pueda ver lo que está sucediendo.

Pruebas o tests de funcionamiento

Hay muchos casos de uso para estas pruebas. Si tienes una tienda con WooCommerce, puedes comprobar si los productos todavía se pueden añadir a la cesta de la compra. O si los formularios todavía se pueden enviar.

Por supuesto, no se pueden cubrir todos los casos. Sin embargo, en la mayoría de los casos una pequeña prueba automática es más eficaz que una simple inspección visual. Al fin y al cabo, no siempre es posible probar todas las funciones de un sitio después de cada pequeña actualización, sobre todo si es muy extensa.

Pruebas visuales de regresión

Incluso una "inspección visual" podría automatizarse con los medios actuales. Esto funciona con relativa facilidad, por ejemplo, con BackstopJS. La configuración se realiza rápidamente mediante un archivo JSON. Basta con realizar una prueba de retroceso en la consola para iniciar la comparación. Por último, la herramienta abre una ventana del navegador y muestra las diferencias.

Dado que BackstopJS también proporciona un informe detallado y legible por la máquina con un valor de distinción en porcentaje, podrías, por ejemplo, ser informado/a por correo electrónico cuando se haya producido un cambio significativo en el diseño.

Rollback

Supongamos que se han realizado todas las actualizaciones y que las pruebas automáticas han fallado. ¿Qué hacer? Por supuesto, las copias de seguridad también se pueden importar automáticamente, pero esto solo funciona en tres casos: 

  1. Si el proveedor de hosting tiene una interfaz a través de la cual se puede activar una reversión automáticamente.
  2. O si tienes acceso SSH.
  3. Y si la copia de seguridad es lo suficientemente pequeña. Si no, la restauración tarda varias horas en el peor de los casos.

Muchos/as desarrolladores/as saben muy bien que la mayor parte de esto no suele ser posible. O bien el acceso SSH no está disponible en primer lugar o se producen tiempos de espera por falta de recursos en el servidor.

Hosting WordPress Gestionado

En algunos de estos casos, el hosting WordPress gestionado te quita mucho trabajo de encima. En nuestro e-book 13 ventajas del hosting WordPress gestionado explicamos cómo ahorrar tiempo con tus proyectos WordPress y WooCommerce.

¿Otras soluciones?

Por supuesto, mi opinión es solo una de muchas. Hay otras soluciones, normalmente más caras. Por ejemplo, en lugar de importar una copia de seguridad a posteriori, se puede hacer previamente una copia de sitio (concepto de staging como con Raidboxes, además de las copias de seguridad de WordPress) y realizar con ella todas las actualizaciones y pruebas posibles. Si todo va bien en la prueba, las actualizaciones pueden instalarse finalmente también en el sitio del servidor. Luego, por supuesto, (normalmente) de forma totalmente automática y sin erizarte el vello de la nuca.

Otra idea sería simplemente hacer que WordPress creara páginas estáticas. Entonces el sitio sería algo más independiente del núcleo real. Los plugins para este fin existen desde hace ocho años: WPStatic, por ejemplo. Pero, de nuevo, esto no sirve para todos los casos de uso, ni mucho menos para sitios muy dinámicos como las tiendas online.

Mi conclusión

Cómo lo haces, lo haces mal, ¿verdad? No. En última instancia, depende de tu propio sitio web, de tus deseos y, por supuesto, de tu cartera. Si no gestionas sitios críticos y no te importa que un sitio web arroje errores, te irá bien con las "Auto Updates".

Con el add-on Fully Managed de Raidboxes tienes la posibilidad de activar las actualizaciones automáticas de plugins y themes. En la configuración de tu Box también puedes excluir las actualizaciones automáticas de algunos plugins y themes con los que ya has tenido problemas.

Sin embargo, las actualizaciones automáticas de los plugins probablemente funcionen sin problemas para la mayoría de los sitios pequeños. Quienes poseen sitios más grandes suelen disponer de más medios económicos para tomar las medidas adecuadas. Cada cual tiene que encontrar la mejor solución individual.

Tus dudas sobre actualizaciones de plugins

¿Tienes alguna pregunta para Florian o sobre este artículo? Háznoslo saber en los comentarios. ¿Quieres estar informado/a sobre otros artículos en torno al mundillo WordPress y WooCommerce? Entonces síguenos en LinkedIn, Facebook, Twitter o a través de nuestra newsletter.

¿Te ha gustado el artículo?

Con tu valoración nos ayudas a mejorar aún más nuestro contenido.

Escribe un comentario

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