Il y a quelques jours, j’ai partagé une solution DIY pour des images sémantiquement correctes avec Jekyll.

Aujourd’hui je veux vous parler d’une option alternative : le plugin jekyll-figure.

Installer jekyll-figure

jekyll-figure, comme beaucoup de plugins, est une Ruby gem.

C’est pratique, parce qu’installer des gems et les garder à jour est super facile !

Il suffit d’ajouter une ligne au Gemfile à la racine de notre dossier Jekyll :

group :jekyll_plugins do # Tous nos plugins
    gem "jekyll-feed", "~> 0.9" # Intégré à Jekyll par défaut
    gem "jekyll-seo-tag", "~> 2.1" # Intégré à Jekyll par défaut
    gem "jekyll-figure" # On ajoute une nouvelle ligne pour chaque nouveau plugin
end

Puis une commande toute simple (dans votre dossier Jekyll) installera tous les nouveaux plugins :

bundle install

Pour vérifier et installer des mises à jour de gems, y compris de jekyll lui-même, c’est comme ça :

bundle update

Utiliser jekyll-figure

Pour générer une image avec légende en HTML sémantiquement correct avec jekyll-figure, rien de plus simple.

Voici l’utilisation du plugin en Markdown :


{% figure caption:"Le logo de **Jekyll** et son clin d'oeil à Robert Louis Stevenson" %}
![Le logo de Jekyll](/assets/images/2018-08-07-jekyll-logo.png)
{% endfigure %}

Comme vous le voyez, il suffit d’entourer notre image Markdown des tags Liquid {% figure %} et {% endfigure %} en y précisant notre légende avec caption:"Ma légende".

Et, cerise sur le gâteau, on peut aussi utiliser Markdown dans la légende ! Ici, je voulais “Jekyll” en gras.

Résultat :

Le logo de Jekyll
Le logo de Jekyll et son clin d’oeil à Robert Louis Stevenson

Pour plus d’infos sur l’installation et l’utilisation de jekyll-figure, rendez-vous sur sa repo Github !

Alors, quelle option utiliser ? Le plugin ou la solution DIY ?

Plugins ou DIY ?

Avec Wordpress, la question ne se pose même pas.

C’est un système complexe, et les plugins font partie à part entière du processus de développement web. On ne peut pas faire sans !

Besoin d’un formulaire ? Contact Form 7.
Commerce en ligne ? WooCommerce.
Dupliquer un article? Duplicate.
SEO ? Jetpack.
Trop de spams ? Aksimet.

Mais avec Jekyll, c’est une autre histoire. J’adore le contrôle que ça me donne sur mes sites :

Besoin d’un formulaire ? on programme un <form>.
Dupliquer un article ? cp article.md article-copie.md.

Bien sûr, pour des fonctionnalités plus techniques (par exemple pour faire une recherche sur le site ou intégrer des Analytics), un plugin peut toujours aider.

Mais surtout, les plugins permettent d’ajouter des fonctionnalités sans altérer le code de Jekyll ou d’un thème.

Et, comme je veux que mon code source soit facilement réutilisable par d’autres, je dois justement ne pas toucher au code de Jekyll.

Tout ce qu’on devra faire pour réutiliser mon code sera d’installer le même plugin. C’est beaucoup plus facile que de recréer une fonctionnalité DIY en ajoutant un include au thème !

Moralité : j’ai fait la paix avec les plugins !