actualizaciones automáticas de plugins

No te preocupes por las actualizaciones automáticas de plugins para WordPress. ¿Es eso posible?

Las actualizaciones automáticas de las versiones menores de WordPress han demostrado su eficacia durante años. Pero, ¿funciona esto también con los plugins? El desarrollador de WordPress Florian Simeth investigó esta cuestión y también tiene consejos útiles del experto en seguridad y mantenimiento Marc Nilius en su análisis.

Cualquiera que 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, la idea de las actualizaciones automáticas de los plugins pone los pelos de punta a la mayoría de los responsables de los sitios web. Cualquiera que haya apretado los dientes antes de pulsar el botón de actualización sabe de lo que hablo.

Nunca se puede estar seguro de que las actualizaciones se realicen correctamente. Ni siquiera cuando la actualización en sí no falla, sino que los errores están al acecho en algún lugar -invisible- bajo tierra. La mayoría de los colegas a los que pregunté no realizaban actualizaciones automáticas de plugins, al menos no para todos los plugins. Pero, ¿por qué es así en realidad?

Cuando las actualizaciones automáticas de los plugins conllevan riesgos

658 voluntarios contribuyeron a la versión 5.3 de WordPress. No todos los proyectos de plugins tienen este poder del hombre (y la mujer). La mayoría de los plugins gratuitos del directorio de plugins de WordPress han sido desarrollados por una sola persona (o quizás 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, por tanto, convierten la propia instancia de WordPress en una superficie de ataque para los hackers.

Por lo tanto, cabe suponer que la calidad del código se resiente o no se prueba lo suficiente. No quiero explicar más el porqué de este caso. Pero esto explica por qué hacemos 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", me escribió Marc Nilius en una entrevista por correo electrónico. Según su propia información, actualmente mantiene unas 200 instancias de WordPress y conoce muy bien a sus "amigos". Ahora Yoast ciertamente tiene un gran equipo detrás de su propio plugin gratuito YoastSEO, que está activo en más de cinco millones de sitios de WordPress. Para el buque insignia de la empresa, hace todo lo posible para que nada falle. Eso viene con el esfuerzo. Un esfuerzo que un promotor por sí solo no puede o no quiere realizar. Entonces, ¿qué se puede hacer?

Formas de minimizar los riesgos de los plug-ins

1. no utilizar plugins antiguos

"Democratizing Publishing" (democratizar la publicación) es un principio esencial y preciso en WordPress. Que cualquiera pueda obtener rápidamente un sitio WordPress es una gran cosa, pero automáticamente lleva a estas personas a querer expandir el sitio en algún momento, seguramente a través de plugins. Como normalmente no pueden programarse a sí mismos, buscan un remedio en la eterna WorldWideWeb. Y hay muchos de ellos. 

Actualmente, hay casi 55.000 extensiones sólo en el directorio de plugins. Lo que funciona es lo que se utiliza. Sin prestar atención a si el plugin está siendo desarrollado o si es compatible con la versión actual de WordPress. Esto no siempre es correcto 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.

Por supuesto, también hay ejemplos positivos. Por ejemplo, hay una gran empresa detrás de WooSidebars. Sin embargo, el plugin no ha recibido ninguna actualización desde hace un año. No se ha probado con las últimas versiones de WordPress, pero sigue funcionando perfectamente en muchos casos. ¿Cuánto tiempo más? Los primeros comentarios en la sección de apoyo ya apuntan a un final. Sin embargo, el usuario no lo nota. Durante la instalación, sólo un pequeño y discreto aviso indica esta deficiencia. Una cosa peligrosa.

woosidebars

Por supuesto, cuando empiezas tu carrera como bloguero, a menudo no tienes dinero para el desarrollo individual. Para estas personas, no hay otra alternativa. No obstante, hay que tener en cuenta que, debido a los riesgos de seguridad mencionados anteriormente, se debe utilizar el menor número posible de plugins (antiguos).

2. no adapte los plug-ins usted mismo

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

"Losplug-ins personalizados suelen depender demasiado de las funcionalidades del tema", sabe también Marc. Si algo cambia en el tema, el plugin deja de funcionar correctamente. Así que hay muchos problemas. Pero hacerlo todo uno mismo desde cero, es decir, utilizar únicamente sus 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, se puede preguntar a los operadores si se realizan pruebas automatizadas de las nuevas versiones. ¿Pero quién hace eso? Muchos usuarios de WordPress ni siquiera saben que esto 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 del desarrollador. ¿Quién prueba cada complemento con cada tema? ¿O todos los plugins con todos los demás plugins? Eso no es posible. Tampoco se puede confiar en que los desarrolladores lo hagan.

También en este caso, no utilizar los "malos" plug-ins no es una alternativa real. Aunque la calificación de calidad ya es el primer obstáculo para muchos usuarios, al menos debería probar activamente los nuevos plug-ins usted mismo antes de integrarlos en un sitio websitioen vivo. Pero en un momento se hablará de ello. 

Por qué fallan las actualizaciones automáticas

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

He aquí 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 tema. 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 la actualización de plugins con éxito

Reconocer los plugins defectuosos

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

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

Todavía no está listo, pero en el futuro Tide ayudará a los legos a identificar mejor qué tipo de plugins están instalando. Hasta entonces, hay que atenerse a los metadatos de los plugins, que aparecen en wordpress.org en el directorio de plugins de cada uno de ellos:

plugin meta
  1. La fecha de la última actualización. La actualización frecuente puede indicar un proceso de desarrollo activo. En la mayoría de los casos, los desarrolladores también se encargan de corregir los errores.
  2. Número de instalaciones. Un número muy alto no sólo indica popularidad, sino que también puede ser un indicio de que los autores ganan 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 tiene interés en que el plugin gratuito también funcione sin errores.
  3. Probado hasta. También es sólo un número de versión que puede ser ajustado por el desarrollador en cualquier momento sin ser probado por un tercero. Sin embargo, un número de versión actual es una indicación de que los autores actualizan regularmente el plugin.
  4. Versión PHP. Aunque es bueno que los desarrolladores sigan dando soporte a números de versión bajos de PHP, una versión más alta sería más segura. La versión 5.6.x de PHP no ha recibido actualizaciones de seguridad desde finales de 2018. Actualmente, la versión actual es la 7.4. Recibirá actualizaciones de seguridad hasta diciembre de 2022.

Reconocer los plugins buenos y seguros

Para obtener más ayuda sobre cómo evaluar la calidad de los plugins de WordPress, consulte nuestro artículo"13 consejos para la selección correcta de plugins" de Torsten Landsiedel.

Pruebas automatizadas del navegador

Ahora se pone un poco más difícil. Especialmente para el usuario de WordPress que no tiene conocimientos de programación. Si depende de funciones importantes, debería 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 sin cabeza por defecto, pero puede ser configurado para abrir el navegador para que pueda ver lo que está sucediendo.

Pruebas de funcionamiento

Hay muchos casos de uso para estas pruebas. Los operadores de las tiendas pueden comprobar si los productos pueden seguir colocándose en la cesta de la compra. O si se pueden seguir presentando formularios.

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 sitiodespué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 a través de un archivo JSON. Una prueba de seguridad en la consola es suficiente para iniciar la comparación. Por último, la herramienta abre una ventana del navegador y muestra las diferencias:

pruebas de regresión visual

Prueba de regresión visual con BackstopJS: El botón de compra desapareció después de una actualización del plugin en mi sitio.

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

Retroceso

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 sólo funciona en tres casos: 

  1. Si el hoster 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. De lo contrario, la restauración tarda varias horas en el peor de los casos.

Muchos desarrolladores saben muy bien que la mayor parte de esto no es posible. O bien el acceso SSH no está disponible en primer lugar o hay tiempos de espera por falta de recursos en el servidor.

Las ventajas de las actualizaciones automáticas

Las actualizaciones automáticas también aportan ventajas notables. Especialmente para aquellos que gestionan varios sitios de WordPress, esto ahorra mucho tiempo. Otro punto a favor: en caso de vulnerabilidades de seguridad, el plugin tuse actualiza automáticamente en cuanto hay una actualización segura disponible. Puede leermás sobrelas ventajas de las actualizaciones automáticas en nuestro nuevo libro electrónico.

¿Otras soluciones?

Por supuesto, mi opinión es sólo una de muchas. Hay otras soluciones, en su mayoría más caras. Por ejemplo, en lugar de importar una copia de seguridad a posteriori, se puede hacer una copia de sitiode antemano(concepto de staging) y realizar con ella todas las posibles actualizaciones y pruebas. Si todo va bien en la prueba, las actualizaciones pueden finalmente instalarse también en el sitio websitio. Luego, por supuesto, (normalmente) de forma totalmente automática y sin que se le ericen los pelos de la nuca.

Otra idea sería simplemente hacer que WordPress creara páginas estáticas. Entonces, el sitioserí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 funciona para todos. Especialmente no para sitios muy dinámicos como las tiendas online.

Conclusión

Como lo haces, lo haces mal, ¿verdad? No. En última instancia, depende de su propio sitio web, sus propios deseos y, por supuesto, su cartera. Si no manejas sitios críticos y está bien que un sitio web arroje errores, puedes instalar un plugin de auto-actualización

Con el complemento Raidboxes también puede Fully Managed para activar las actualizaciones automáticas de plugins y temas. En la configuración tusBOX también puedes excluir de las actualizaciones automáticas los plug-ins y temas individuales con los que ya has tenido problemas. 

Sin embargo, las actualizaciones automáticas de los plugins probablemente vayan relativamente bien para la mayoría de los sitios pequeños de todos modos. Los que tienen sitios más grandes también pueden tener más dinero para tomar las medidas adecuadas. Cada uno de ellos tiene que encontrar su propia solución.

¿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á.