Écrit par Laborouge le
Mis à jour le
logo RSS

Drupal 7: ajouter un lien permanent RSS

1 minute

Lorsque votre site Drupal possède un flux RSS, il peut s'avérer judicieux d'ajouter à votre HTML un lien permanent vers ce dernier.

L'avantage : certain navigateur, tel Firefox, detecte la présence de ce lien et inclus automatiquement le logo RSS dans la barre de navigation.

Comment faire : il faut insérer une nouvelle balise <link> dans la balise <head> de votre page HTML.

Cela doit ressembler à ça :

<link href="http://monsite.com/rss.xml" title="rss" rel="alternate">

Mais Drupal a tout prévu :

  • Modifier le fichier template.php de votre thème.
  • Ajouter ces lignes de codes (ou insérer les dans la fonction si elle est déja présente).
function MONTHEME_preprocess_html(&$vars) {
  // Add RSS link.
  drupal_add_feed('rss.xml', 'rss');
}

La fonction drupal_add_feed() se charge de créer automatiquement la balise <script> du flux RSS. Il suffit juste de lui passer deux arguments :

  1. Le chemin du fichier correspondant à votre flux RSS : ici 'rss.xml'.
  2. Le titre : ici 'rss'

Illustration par Clker-Free-Vector-Images de Pixabay

À propos

Laborouge
Développeur basé sur la région de Rouen, je me suis spécialisé dans le développement de site web avec le C.M.S. Drupal.

Commentaires

Soumis par JRMC le mer 20/05/2015 - 21:02

Bonsoir LaboRouge, franchement merci pour ta manipulation. J'ai installé le module Sitemap sur mon site pour pouvoir générer un lien RSS mais c'était pas le top. Quand j'apprends là qu'en fait le RSS est natif à Drupal et qu'il suffit de générer le code PHP qu'il faut, je suis un peu blasé. Merci encore pour ton astuce, je vais la mettre en place.

Au final, je suis parti sur la génération d'un Flux RSS à partir de View. J'ai créé une vue associée à plusieurs taxonomies, uniquement celles que je souhaite ajouter au flux rss. En ajoutant une vue "FEED", j'ai réussi à créer mon flux rss avec l'URL que je souhaitais.

Ajouter un commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.
Cette question sert à vérifier si vous êtes un visiteur humain ou non afin d'éviter les soumissions de pourriel (spam) automatisées.