Última revisión: 2 de octubre de 2021
Mantener WordPress al día es la clave para evitar problemas de seguridad. WordPress es un sistema seguro en su core, pero las ampliaciones por plugins o plantillas que no se mantienen al día según van apareciendo nuevas versiones o mejoras son lo que pueden provocar problemas.
Por defecto, WordPress se actualiza automáticamente y por defecto con versiones PATCH (según el Semantic Versioning). Esto significa que las versiones de seguridad se corrigen automáticamente. Aún así, esto no es ninguna solución y es muy útil configurar el sistema para que todo fluya.
A la hora de tomar la decisión de si actualizar o no, la pregunta habitual es ¿tengo un WordPress complejo o sencillo? Un WordPress complejo es aquel que tiene plugins complejos (como WooCommerce) o críticos en cuanto a negocio.
- Auto-Actualizaciones
- Actualizaciones del núcleo
- Mantén actualizado todo WordPress
- Mantén desactualizado todo WordPress
- Recuperar la versión anterior de un plugin o plantilla
- ¿Cuándo se actualizó ese complemento o plantilla?
- Seguir con Seguridad para WordPress
- Sobre este documento
Auto-Actualizaciones
WordPress a partir de su versión 5.6 incluye un sistema de auto-actualizaciones a todos los niveles, incluido el núcleo, plugins, themes y traducciones.
Desde la sección del menú Actualizaciones puedes gestionar la configuración del núcleo y traducciones, en la sección de plugins puedes activar sus actualizaciones automáticas, e igualmente con los themes.
Actualizaciones del núcleo
Actualización del núcleo 100% automática
// wp-config.php
define('WP_AUTO_UPDATE_CORE', true);
Actualización del núcleo sólo de versiones menores
// wp-config.php
define('WP_AUTO_UPDATE_CORE’, 'minor');
Deshabilitar actualizaciones automáticas
// wp-config.php
define('AUTOMATIC_UPDATER_DISABLED', true);
Mantén actualizado todo WordPress
Si quieres mantener al día con las últimas versiones de todos lo que está en el repositorio oficial de WordPress (o aquellas plantillas y plugins que tengan un sistema de actualización automática) puedes forzarlo mediante unos filtros. Para evitar dependencias de plantillas o de otras combinaciones, lo mejor es subir este código como un plugin «mu» (must-use).
defined('ABSPATH') or die('Bye bye!');
add_filter('auto_update_core', '__return_true');
add_filter('auto_update_plugin', '__return_true');
add_filter('auto_update_theme', '__return_true');
add_filter('auto_update_translation', '__return_true');
add_filter('auto_core_update_send_email', '__return_true');
Instrucciones paso a paso
- Crea el plugin o descárgalo ya creado (descomprime el fichero ZIP).
- Accede por FTP a la carpeta [
/wp-content/mu-plugins/
]. Si no tienes esta carpeta, créala. - Sube por FTP el fichero [
wpdanger-autoupdater.php
] a la carpeta [/wp-content/mu-plugins/
]. - Cuando entres en el panel de administración de tu WordPress, en la zona de Plugins tendrás una sección nueva de plugins Imprescindibles donde aparecerá. Recuerda que al ser Imprescindible no podrás activarlo ni desactivarlo.
Mantén desactualizado todo WordPress
En algunas instalaciones complejas, sobre todo aquellas en las que hay que vigilar que todo esté funcionando siempre, como pueden ser sitios de alta disponibilidad o de comercio electrónico, que usan plugins complejos como puede ser WooCommerce, en ocasiones es mejor organizarse una agenda de actualizaciones (por ejemplo un día a la semana hacer las actualizaciones) y haberlas probado previamente en un estado de staging. En estos casos lo mejor es impedir que WordPress se actualice, y para ello hemos de bloquear cualquier tipo de actualización automática. Para evitar dependencias de plantillas o de otras combinaciones, lo mejor es subir este código como un plugin «mu» (must-use).
defined('ABSPATH') or die('Bye bye!');
add_filter('auto_update_core', '__return_false');
add_filter('auto_update_plugin', '__return_false');
add_filter('auto_update_theme', '__return_false');
add_filter('auto_update_translation', '__return_false');
add_filter('auto_core_update_send_email', '__return_false');
Instrucciones paso a paso
- Crea el plugin o descárgalo ya creado (descomprime el fichero ZIP).
- Accede por FTP a la carpeta [
/wp-content/mu-plugins/
]. Si no tienes esta carpeta, créala. - Sube por FTP el fichero [
wpdanger-noautoupdater.php
] a la carpeta [/wp-content/mu-plugins/
]. - Cuando entres en el panel de administración de tu WordPress, en la zona de Plugins tendrás una sección nueva de plugins Imprescindibles donde aparecerá. Recuerda que al ser Imprescindible no podrás activarlo ni desactivarlo.
Recuperar la versión anterior de un plugin o plantilla
En algunas ocasiones es posible que la actualización de un plugin o plantilla no sea lo esperado. En estos casos (sobre todo en versiones menores, ya que las mayores suelen implicar cambios que dificultan el volver atrás) puede ser muy útil el uso de herramientas como WP Rollback.
¿Cuándo se actualizó ese complemento o plantilla?
Está muy bien actualizar los complementos (plugins) o las plantillas (themes) pero ¿por qué instalas un complemento que hace más de un año que no se actualiza?
Está claro que hay plugins que seguramente por su funcionalidad no requieren de grandes cambios, pero simplemente por mantener las fechas y los datos de testeo actualizados, cualquier desarrollador de un plugin o theme debería actualizar los datos.
Y es que todos los complementos llevan interiormente un dato que debería estar al día: versión «hasta la que se ha probado». Si van apareciendo versiones y versiones de WordPress y el programador del plugin no va probando en esas nuevas versiones su funcionamiento ¿quién lo va a hacer?
Seguir con Seguridad para WordPress
Actual
- wp-config.php
- Security Keys
- Cookies
- Cabeceras inconvenientes
- Unificar CSS y JavaScript
- Ocultar la versión de WordPress
- Caché
- Carpetas por defecto
- Post instalación
- Edición de ficheros
- URL del sitio
- Servidores externos
- XML-RPC
- Acceso a wp-admin
- Actualizaciones automáticas
- Usuarios
- Limpieza de multimedia
- robots.txt
- Plantilla por defecto
- Emoji
- Subir ficheros sin filtro
Sobre este documento
Este documento está regulado por la licencia EUPL v1.2, publicado en WP SysAdmin y creado por Javier Casares. Por favor, si utilizas este contenido en tu sitio web, tu presentación o cualquier material que distribuyas, recuerda hacer una mención a este sitio o a su autor, y teniendo que poner el material que crees bajo licencia EUPL.