Désactiver les notifications de Yoast SEO

Yoast SEO est le plugin de référencement le plus connu sous WordPress. Néanmoins, force est de constater que les notifications informant des nouveautés après chaque mise à jour ou encore les multiples avertissements sont particulièrement ennuyeux. Cela est d’autant plus vrai qu’ils continuent de s’afficher même une fois fermés – les cookies de mes navigateurs ne semblent pas en cause. En recherchant les bons hooks dans le code du plugin, il est possible de supprimer les notifications de Yoast SEO.

Ces lignes de code sont à placer dans un mu-plugins. Le code ci-dessous vérifie dans un premier temps que le plugin est bien actif sur votre WordPress sinon vous obtiendrez une erreur. Ensuite, on filtre sur les 2 fonctions qui affichent des notices sur votre écran pour les désactiver.

<?php if (!defined('ABSPATH')) die('Restricted Area');

/*
* Plugin Name: Disable Yoast SEO Notifications
* Description: Hide annoying notifications after each upgrade of Yoast SEO plugin and others admin notices.
* Version: 1.1
* Author: Aurélien Denis
* Author URI: http://wpchannel.com/
*/

add_action('admin_init', 'wpc_disable_yoast_notifications');

function wpc_disable_yoast_notifications() {
  if (is_plugin_active('wordpress-seo/wp-seo.php')) {
    remove_action('admin_notices', array(Yoast_Notification_Center::get(), 'display_notifications'));
    remove_action('all_admin_notices', array(Yoast_Notification_Center::get(), 'display_notifications'));
  }
}

Vous ne devriez plus recevoir ce type d’informations comme illustré dans cette capture d’écran :

yoast-seo-notice

Nombreux sont les plugins qui affichent des informations de façon intrusive à mon goût. Partagez-vous cet avis ?

10 commentaires

  1. Willy Bahuaud

    À propos de Yoast, il y a aussi quelques autres éléments à supprimer pour être tranquille.
    Après je suppose que cela dépend des versions, et il à un certain don pour découvrir de nouvelles idées pour pourrir l’UX du back-office WordPress…

    // Avec celui-ci on pousse la metabox de Yoast en bas
    add_filter( 'wpseo_metabox_prio', 'myprefix_wpseo_prio_low' );
    function myprefix_wpseo_prio_low( $priority ) {
    $priority = 'low';
    return $priority;
    }

    // Là on désactive les pointers, qui vont sinon nous refaire le parcours de découverte à chaque mise à jour…
    class WPSEO_Pointers {
    public static function get_instance() {}
    }

    // … et ici on enlève l'horrible redirection vers la page "Vous avez mis à jour Yoast"
    add_filter( 'option_wpseo', 'filter_yst_wpseo_option' );
    function filter_yst_wpseo_option( $option ) {
    $option['seen_about'] = true;
    return $option;
    }

    Grâce à toi j’ai rajouté maintenant une filtre pour supprimer les notices, merci !

    1. Aurélien Denis auteur de l’article

      Yeah je vais te prendre les tiens pour les rajouter dans mes mu-plugins à mon tour !

      Celui relatif à la priorité je l’utilise déjà en indiquant la valeur directement au lieu de passer par une variable (une raison à cela ?).

      Les autres je vais adorer, merci !

  2. Willy Bahuaud

    Content si ça sert. Ce sont des codes que j’ai moi même piqué à Screenfeed
    Je ne retourne pas la variable directement tout simplement parce que j’ai l’habitude de faire des conditions pour déterminer la priorité en fonction du type de contenu (mais je n’ai pas copié ces lignes ici).

  3. Annie Stasse

    Je viens de le mettre à la poubelle… dans le cas d’un site de vente la définition des produits est mal affichée. Ou alors il faut payer 49€. Par contre All in one Seo lui affiche les descriptions de produits en tête… gratis ! ce qui n’empêche personne de payer pour +, mais je n’ai pas encore compris quoi exactement, déjà faut trouver les bonnes options correspondantes à ses propres options et ça met du temps et des essais divers.

Laisser un commentaire