Ghost: dates en français

Voilà un petit billet qui nous permettra d'indiquer les dates au format français, c'est-à-dire jour mois année en toutes lettres et dans la langue de Booba. Autrement dit au lieu de vous retrouvez avec un October 21th, 2015 vous aurez un joli 21 octobre 2015.

Les éléments de dates

Les nomenclatures de dates anglophones étant quelque peu différentes de celles ayant cours en France et Ghost étant de conception anglaise, il est fort probable que votre thème utilise celle par défaut, en anglais donc, à savoir:

  • En anglais - MMM Do, YYYY - mois jour, année
  • En français - DD MMM YYYY - jour mois année

La première chose à faire est d'éditer les pages susceptibles d'indiquer une date afin de ré-agencer les éléments à la française. Dans la majorité des cas les pages à modifier sont donc post.hbs et partials/loop.hbs, mais il est possible que la balise {{date}} soit utilisée autre part, à vous de chercher. Vous l'avez compris recherchez chaque occurrence de cette balise dans vos pages et modifiez-la de la façon suivante:

{{date format='DD MMM YYYY'}}

Voilà, si vous relancez votre blog, vous devriez avoir un joli 21th October 2015. On tient le bon bout, passons à la suite.

Formatage des dates

Voilà, vous venez d'arranger un peu votre thème en faisant en sorte d'afficher dans le bon ordre chaque élément. Il va falloir maintenant indiquer à Ghost quel formatage utiliser, en l'occurrence le format français.

Ghost utilise moment.js, une librairie conçue entre autre pour fonctionner avec Node.js, qui par défaut est en anglais. Il ne nous reste plus donc qu'à indiquer à Ghost de formater les dates en français. Fort heureusement sa doc est plutôt complète, une rapide recherche et nous-y voilà : Changing locale globally

Pour modifier la langue de formatage il va falloir donc utiliser le code moment.lang('fr'); directement dans le core de Ghost, eh oui!

Éditez donc le fichier /core/server/helpers/date.js et ajoutez tout en bas la fameuse ligne suivante:

moment.lang('fr');

Sauvegardez et relancez votre blog ( avec Supervisor? J'en parle sur l'article Isso ).

Vous devriez avoir quelque chose qui ressemble à ça:

L’inconvénient sera qu'il va vous falloir éditer après chaque mise à jour le fichier date.js, une petite manip simple qui ne prend pas beaucoup de temps, il suffit d'y penser. Malgré mes recherches il ne me semble pas possible en l'état d'intégrer cette modification directement dans son thème, pour ainsi éviter de répéter la manipulation à chaque màj.

Si jamais vous avez une solution à ce problème, n'hésitez pas à en parler en commentaire! 😘