Ocultar los avisos de actualizaciones de plugins y temas
WordPress es en realidad, un núcleo diseñado y pensado para ser un blog. El hecho de que seamos capaces de convertir ese núcleo en cualquier otra cosa (Una Tienda Online, un Foro, una Red Social…) se debe a su arquitectura modular.
Este CMS permite la instalación y gestión de plugins de manera sencillísima, y gracias a una comunidad activa que ha creado cientos de miles de ellos, podemos hacer, literalmente, cualquier cosa con ese núcleo inicial.
La mayor parte de esos plugins son gratuítos y eso, claro, tiene un precio: Decenas de avisos invitándote a comprar la versión premium, a adquirir otros plugins de asociados, a actualizarse independientemente…Si somos nosotros quienes vamos a gestionar esa instalación de WordPress, podemos ignorarlos y ya está, pero… normalmente creamos webs para clientes, y un cliente verá un aviso y se sentirá tentado a hacer clic. De ahí al desastre es sólo cuestión de tiempo.
Así que la pregunta está clara: ¿Cómo oculto todos esos avisos a mi cliente?
Ocultar notificaciones de los plugins y temas
1º- Necesitaremos acceso FTP a nuestra web. Entramos a /wp-content/themes/nombre_de_tu_tema/ y buscamos el archivo functions.php.
2º- Lo abrimos y editamos, aunque siempre recomendamos hacer copias de seguridad previamente, y si se puede hacer esta modificación sobre un tema hijo, mejor que mejor. Y añadimos lo siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | function hide_notices_dashboard() { global $wp_filter; if (is_network_admin() and isset($wp_filter["network_admin_notices"])) { unset($wp_filter['network_admin_notices']); } elseif(is_user_admin() and isset($wp_filter["user_admin_notices"])) { unset($wp_filter['user_admin_notices']); } else { if(isset($wp_filter["admin_notices"])) { unset($wp_filter['admin_notices']); } } if (isset($wp_filter["all_admin_notices"])) { unset($wp_filter['all_admin_notices']); } } add_action( 'admin_init', 'hide_notices_dashboard' ); |
Ocultar únicamente los avisos de actualización
Si queremos ocultar únicamente los de los plugins:
1 2 | remove_action( 'load-update-core.php', 'wp_update_plugins' ); add_filter( 'pre_site_transient_update_plugins', create_function( '$a', "return null;" ) ); |
Y si deseamos no mostrar los de los temas:
1 2 3 4 5 6 | add_action( 'admin_head', 'ocultar_notificacion_actualizacion', 1 ); function ocultar_notificacion_actualizacion() { if ( ! current_user_can( 'update_core' )) { remove_action( 'admin_notices', 'update_nag', 3 ); } } |
¿Cómo hacerlo con plugin y sin tocar código?
Para los que desconocemos completamente?
Muchas gracias. Funciona perfectamente, ha sido de mucha utilidad.
Gracias, Cristian. Funciona correctamente!!!