Structure
Ce document fixe la structure des fichiers HTML du thème Osuny.
Style
- Indentation = 2 espaces
- utilisation du tiret
{{- -}}lorsque l’on veut supprimer des espaces entres des éléments d’inline. Le HTML étant minifié il n’est pas nécessaire d’en mettre partout.
{{ if something }}
something
{{ end }}
<p>
{{- if something -}}
<span>something</span>
{{- end -}}
</p>Partiels
Appel d’un partiel avec un seul paramètre :
{{ partial "programs/single/image.html" .Params.image }}Appel d’un partiel avec plusieurs paramètre en utilisant dict :
{{ partial "contents/list.html" (dict
"context" .
"contents" .Params.contents
) }}Précision sémantique
| Terme | Hugo | Osuny |
|---|---|---|
layouts | Fichiers HTML utilisés par le site | Fichiers HTML utilisés pour mettre en page possibles des objets (en cartes, en grille…) |
partials | Composants utilisés par les fichiers natifs | Composants Osuny utilisés par les fichiers spécifiques Osuny |
Un dossier pour chaque objet
- section.html
- single.html
layouts/partials/programsLes objets Osuny (organizations, posts, pages, events…) peuvent s’afficher de 3 façons : dans une section, dans un bloc ou dans une page.
Dans la section et dans le bloc, il s’agit de lister des objets en utilisant une mise en page (layout) et des options.
Les fichiers à la racine du dossier layouts d’Hugo, dans /layouts (attention, pas les layouts Osuny !) suivent la logique de Hugo (par exemple list.html et single.html) et appellent les partials Osuny.
Section
- hero.html
- section.html
C’est la page native de Hugo pour lister les objets d’un type.
Elle est paginée.
Certains objets, comme Page, sont un peu spéciaux : ils sont à la fois une page et une liste (de ses enfants).
Ce distingo est fait dans les fichiers natifs Hugo, à la racine de layouts.
La section est aussi utilisée par les taxonomies, pour afficher une catégorie de formations par exemple.
Single
- hero.html
- single.html
Une single représente la page d’un objet.
Le dossier single contient des objets nécessaires à l’affichage de la page.
Ce sont souvent de simple “passe-plats” vers des partiels plus communs.
Partials
- cards-item.html
- cards.html
- program.html
- programs.html
Le dossier partials contient toujours un dossier layouts, avec un dossier par layout.
Les fichiers cards.html et cards-item.html pourraient s’appeler list.html et item.html, mais cela causerait des onglets qui ont tous le même nom dans l’éditeur de code.
Le partiel programs.html est une liste de formations paginée avec options, utilisée dans la section et dans les catégories de formations.