création d’un site sur le bonsai avec Hugo

J’ai choisi de créer un blog bilingue (français et anglais). Pour se faire, je devais transférer mon contenu de ssg vers Hugo. Ensuite, je devais créer un site multilingue.

Thème multilingue

Choisir un thème léger qui supporte déjà le multilingue.

PaperMod https://adityatelange.github.io/hugo-PaperMod/

permaliens et jolies URL

Définir le permalien dans config.yml. Dans mon cas, je voulais qu’uniquement l’année et le slug apparaissent dans l’URL.

permalinks:
  posts: /:year/:slug/

Ainsi, je pourrai répéter un sujet une seule fois par année (par ex. rempotage-pin-noir).

Dans l’entête de chaque article, spécifier un paramètre slug.

title: Kabudachi de bouleau blanc
slug: betula-kabudachi

On aura ainsi des URL adaptées pour le SEO:

/fr/2020/betula-kabudachi/index.html

https://gohugo.io/content-management/urls/

Taxonomie

Comme le site parlera de bonsaï, je vais définir une taxonomie qui regrouper les articles selon trois axes. Notez qu’avez Hugo on peut créer de nouvelles taxonomies comme l’espèce. On pourra donc afficher les articles pour une espèce en particulier.

taxonomies:
  category: categories
  tag: tags
  species: species

https://gohugo.io/content-management/taxonomies/

Catégorie

Technique (rempotage, greffe, semis, ligature), bourgeons, etc.

Tags

Style (kabudachi, forêt, sur roche, etc).

Espèce, Species

Acer palmatum, Chaenomeles japonica.

Afficher une image dans la liste d’articles

Copier le template de liste de votre thème:

/themes/papermod/layouts/_default/list.html

Et le coller dans le dossier de layouts personnalisés de Hugo:

/layouts/_default/list.html

Y insérer une section pour afficher l’image:

  {{- if isset .Params "image" }}
  <section class="entry-content">
          <p><img src="{{ .Params.image }}"></p>
  </section>
  {{- end }}

Dans l’entête des articles, ajouter un paramètre image:

image: /img/betula-kabudachi-20200326.jpg

gabarit de nouveaux articles

Modifier archetypes/posts.md:

---
title: "{{ replace (slicestr .Name 11) "-" " " | title }}"
date: {{ .Date }}
slug: "{{ slicestr .Name 11 | lower }}"
categories: [ "" ]
tags: [ "" ]
species:
image: none
author: Philippe
draft: true
---


<!--more-->
$ hugo new posts/2021-03-04-rempotage-ginkgo.md

Fonctionnalités manquantes

Un blog qui se respecte en 2021 permet aux lecteurs de laisser des commentaires et de s’abonner à une liste de diffusion. Comment vais-je faire avec un bête site statique? Ce sera le sujet des prochains articles. Pour le moment, je vais finir de transférer mon ancien contenu dans Hugo.