Ce petit hack, tiré du blog de Zhy Yong, “Add ‘Related Posts’ Section to Octopress”, permet d'afficher une liste d'articles relié au post affiché.

Il s'agit là d'une des bonnes pratiques, non seulement en terme de SEO, mais également pour aiguiller le lecteur une fois l'article terminé.

Premièrement, éditez le fichier _config.yml pour y ajouter la ligne suivante :

1
lsi: true

Ensuite, créez le fichier source/_includes/post/related_posts.html avec le contenu suivant :

1
2
3
4
5
6
7
8
9
10
{% if site.related_posts %}
  <h3>Related posts</h3>
  <ul class="posts">
  {% for post in site.related_posts limit:3 %}
    <li class="related">
      <a href="">{{ post.title }}</a>
    </li>
  {% endfor %}
  </ul>
{% endif %}

Il suffit maintenant d'inclure le fichier nouvellement créé à l'endroit voulu, probablement quelque part dans votre fichier source/_layouts/post.html

1
{% include post/related_posts.html %}

Afin de générer l'index nécessaire au calcul des articles similaires, il faut installer la gem gsl. Ajouter donc la ligne suivante dans le Gemfile

1
gem 'gsl'

Installez-la en exécutant :

1
bundle

Pour terminer, il faudra installer gsl sur votre système.

Pour MacOS :

1
brew install gsl

Pour Ubuntu/Debian :

1
$ sudo gem install gsl-bin

Il ne reste plus qu'a regénérer le contenu statique de votre blog pour voir le résultat

1
rake generate

Note

Après cette modification, vous remarquerez deux nouvelles étapes qui peuvent prendre un peu plus de temps lors du rake generate: Population LSI et Rebuilding index

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ rake preview
Starting to watch source with Jekyll and Compass. Starting Rack on port 4000
Configuration file: /Users/cedric/Code/cedricbousmanne.github.io/_config.yml
>>> Compass is watching for changes. Press Ctrl-C to Stop.
            Source: source
       Destination: public
      Generating...
[2015-10-04 21:29:47] INFO  WEBrick 1.3.1
[2015-10-04 21:29:47] INFO  ruby 2.0.0 (2014-02-24) [x86_64-darwin13.1.0]
[2015-10-04 21:29:47] INFO  WEBrick::HTTPServer#start: pid=15455 port=4000
    write public/stylesheets/screen.css

  Populating LSI...
Rebuilding index...

Bébé en balade : une journée à Trèves

Ce week-end, nous nous sommes rendu à Trèves. Cette petite ville allemande est située à seulement quelques kilomètres de la frontière avec le Grand Duché de Luxembourg. Nous nous y rendons régulièrement depuis quelques années pour changer d’air et faire un peu de shopping. Le centre-ville est très agréable et facilement accessible en poussette. Une … Lire la suite de Bébé en balade : une journée à Trèves
Continue reading

Ruby et les dépendances : RubyGems, Gemfile et Ruby Toolbox

Le nombre de Gems disponible ne fait qu'augmenter, mais il faut faire bien attention à certains détails avant d'en installer une. Continue reading