WordPress est surtout connu par les gens pour ses puissantes fonctionnalités de blogging. Les flux RSS sont utilisés par les gens pour s’abonner à votre nouveau contenu que vous publiez et aussi pour alimenter des applications de lecteurs tiers tels que Feedly. De cette façon, ils peuvent lire votre contenu frais rapidement. Cependant, tout le monde n’utilise pas la partie blogging de WordPress et certaines entreprises pourraient simplement vouloir désactiver les flux RSS dans WordPress. C’est donc une chose de moins dont ils doivent s’inquiéter.
Par défaut WordPress génère toutes sortes de flux RSS qui sont intégrés, tels que :
http://exemple.com/feed/
http://exemple.com/feed/rss/
http://exemple.com/feed/rss2/
http://exemple.com/feed/rdf/
http://exemple.com/feed/atom/
Il les génère également pour vos catégories, étiquettes, commentaires, etc.
Désactiver les flux RSS de WordPress
Il y a plusieurs façons de désactiver les flux RSS dans WordPress. Vous pouvez le faire avec un plugin ou avec du code.
1. Désactiver les flux RSS avec un plugin
La première façon de désactiver un flux RSS WordPress est d’utiliser une extension gratuite comme Disable Everything. Cette extension désactive tous les flux RSS/Atom et les liens de flux sur votre site web WordPress en redirigeant toutes les requêtes.
Vous pouvez télécharger Disable Everything depuis le dépot de WordPress ou en le recherchant dans votre tableau de bord WordPress sous Extensions > Ajouter. Une fois l’extension installée et activée, il vous suffit de vous rendre dans la zone « Réglages » de Disable Everything et de cocher la case pour désactiver tous les flux et liens de flux RSS.
Vous pouvez également utiliser un plugin premium comme perfmatters (développé par un membre de l’équipe de Kinsta), qui vous permet à la fois de désactiver les flux RSS et les liens de flux RSS, ainsi que d’autres optimisations pour votre site WordPress.
2. Désactiver les flux RSS avec du code
La deuxième méthode pour désactiver un flux RSS WordPress est d’utiliser simplement du code.
Avant de commencer, créez une sauvegarde et utilisez un thème enfant, afin de ne pas perdre vos modifications si vous mettez à jour votre thème. Ensuite, copiez le code suivant dans le fichier functions.php de votre thème enfant.
function itsme_disable_feed() {
wp_die( __( 'No feed available, please visit the <a href="'. esc_url( home_url( '/' ) ) .'">homepage</a>!' ) );
}
add_action('do_feed', 'itsme_disable_feed', 1);
add_action('do_feed_rdf', 'itsme_disable_feed', 1);
add_action('do_feed_rss', 'itsme_disable_feed', 1);
add_action('do_feed_rss2', 'itsme_disable_feed', 1);
add_action('do_feed_atom', 'itsme_disable_feed', 1);
add_action('do_feed_rss2_comments', 'itsme_disable_feed', 1);
add_action('do_feed_atom_comments', 'itsme_disable_feed', 1);
Maintenant, si une personne visite un flux RSS sur votre site, domaine.com/feed par exemple, elle verra le message suivant.
WordPress génère également des liens vers les flux RSS dans l’en-tête de votre page Web, comme le montre l’écran ci-dessous. Vous pouvez aller plus loin et supprimer ces liens à l’intérieur du code HTML de vos pages.
Copiez le code suivant dans votre fichier functions.php pour supprimer les liens d’en-tête de vos flux RSS.
remove_action( 'wp_head', 'feed_links_extra', 3 );
remove_action( 'wp_head', 'feed_links', 2 );