Skip to content
Snippets Groups Projects
Commit 5f50d690 authored by Hugo Trentesaux's avatar Hugo Trentesaux
Browse files

doc

parent 7be92341
No related branches found
No related tags found
No related merge requests found
# Zola theme based on w3.css framework
# Site web de Duniter
This zola theme is made to provide easy access to basic zola features with decent looking responsive layout. It also provied an opinionated methodology to customize it.
Ce site est réalisé en Zola et sert de support technique pour présenter et utiliser le logiciel Duniter. Il présente également les concepts de bases d'une monnaie libre et du fonctionnement de la monnaie ğ1.
## Usage
## Utilisation
This theme uses the "include" feature that is not supported by Zola theme manager. It is not made to work out-of the box on an existing site but rather to start a new one from scratch. So first step is to clone it.
Pour modifier le site localement, veuillez d'abord cloner le dépôt :
```
git clone
git clone https://git.42l.fr/HugoTrentesaux/zola-duniter
```
This theme uses Forkawesome as icon provider, you can get it as a submodule
La plupart des composants sont directement inclus, mais certains comme Forkawesome (pour les icones) sont disponibles comme sous-module git. Vous pouvez les ajouter avec :
```
git submodule init
git submodule update
```
The theme includes a lot of files not as submodules (katex, fonts, demo images...) and weights 10Mo
But do not panic, the output website will remain light!
Après avoir installé [Zola](https://www.getzola.org/documentation/getting-started/installation/), lancez dans le dossier principal :
SEO :
titre de page
meta description
meta keywords
robots.txt
sitemap.xml (à compléter, l'URL doit être complète)
\ No newline at end of file
```
zola serve
```
et cliquez sur le lien [http://127.0.0.1:1111](http://127.0.0.1:1111) pour consulter le site localement (rafraîchi automatiquement en cas de modification).
## Vue d'ensemble
La plupart du contenu du site est situé dans dans le dossier `content` sous forme de fichiers Markdown (texte amélioré) avec des métadonnées en en-tête. Les fichiers statiques (images, documents) sont pour la plupart dans le dossier `static`, une grande partie étant dans le dossier `PELICAN`, issu de la migration du site initial. Le thème est constitué de fichiers html utilisant un langage de templates situés dans le dossier `templates`. Enfin, certaines feuilles de style sont rédigées en sass (css amélioré) dans le dossier `sass` alors que d'autres sont écrites en css et situés avec les fichiers statiques.
## Contribuer
Pas besoin d'être à l'aise avec `git`, `zola`, `html`, `css`, `javascript`, `markdown` pour contribuer simplement (même si ces connaissances sont nécessaires pour réaliser des modifications complexes). Il vous suffira de suivre le [guide adapté](./doc/README.md).
\ No newline at end of file
+++
aliases = [ "ucoin-at-the-5th-freedom-money-meeting",]
date = 2015-02-05
title = "uCoin aux 5èmes Rencontres des Monnaies Libres !"
date = 2015-02-05
aliases = [ "ucoin-at-the-5th-freedom-money-meeting",]
[extra]
thumbnail = "/PELICAN/images/calendar.svg"
......
# Guide de contribution
Ce guide tout public va vous aider à réaliser une contribution sur le site web, en fonction de la nature de la modification que vous souhaitez apporter.
## Introduction
Le contenu du site est rédigé sous forme de fichiers texte avec une partie "en-tête" contenant des métadonnées au format TOML (`clé = "valeur"` par exemple), et une partie contenu rédigée en Markdown. Certaines pages spécifiques contiennent la métadonnées "template" qui pointe vers une page rédigée en html. Cela permet plus de souplesse dans la rédaction de la page, contre une légère perte en simplicité.
```txt
+++
en-tete
+++
contenu
```
- [en lire plus sur l'en-tête](./en-tete.md)
- [en lire plus sur le contenu](./contenu.md)
- [en lire plus sur les pages custom](./custom.md)
\ No newline at end of file
# Contenu
Le contenu est rédigé au format [Markdown](https://daringfireball.net/projects/markdown/syntax) comme le forum. Il peut inclure du html, mais veuillez ne pas en abuser. Il peut contenir des shortcodes définis dans le template.
## Liens internes
Pour faire un lien interne, le mieux et d'utiliser un lien absolu préfixé d'un `@` sous la forme suivante :
```
[lien](@/wiki/fichier.md)
```
Cela permet de vérifier à la compilation qu'aucun lien interne n'est cassé.
## Table des matières
Pour insérer une table des matières, il suffit d'écrire `[TOC]` (table of contents) à l'endroit désiré.
## Shortcodes
Les shortcodes permettent d'insérer un bout de html réutilisable. Ils sont définis dans le dossier `templates/shortcodes`, un shortcode par fichier. Par exemple :
```
{{ youtube(id="Wl959QnD3lM") }}
```
sera remplacé par :
```html
<div class="embed">
<iframe src="https://www.youtube.com/embed/Wl959QnD3lM" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
</div>
```
Si vous pensez que votre code html peut être réutilisé, n'hésitez pas à écire un shortcode.
# Page custom
Pour écrire une page custom, veuillez vous inspirer du template `/templates/custom/skeleton.html`.
Créez également une page markdown avec un en-tête spécifiant ce template et les métadonnées habituelles.
Vous pouvez écire une feuille de style en sass dans le dossier `sass` ou en css dans le dossier `static` et l'inclure via le bloc `extrahead`.
\ No newline at end of file
# En tête
L'en-tête est au format [TOML](https://github.com/toml-lang/toml) qui est à la fois lisible par l'humain et la machine. La documentation complète est [disponible en anglais](https://www.getzola.org/documentation/content/page/#front-matter), mais je parle ici uniquement des champs spécifiques à ce site. Les champs sont optionnels pour la plupart, mais les remplir augmente la qualité de l'information présente sur le site.
## Exemple
Voici un exemple d'en-tête d'article:
```toml
+++
title = "uCoin aux 5èmes Rencontres des Monnaies Libres !"
date = 2015-02-05
description = "Le projet uCoin sera sous les projecteurs des 5èmes Rencontres des Monnaies Libres (RML ou Freedom Money Meeting - FMM) ces 4 et 5 Juin 2015 à Paris ! Cet événement sera une grande occasion pour nous de présenter le logiciel."
aliases = [ "ucoin-at-the-5th-freedom-money-meeting", "ucoin-meeting"]
template = "page.html"
[taxonomies]
authors = [ "cgeek",]
tags = [ "RML", "RML5",]
category = [ "Évènements",]
[extra]
thumbnail = "/PELICAN/images/calendar.svg"
+++
```
## Titre
Le titre de la page sera indiqué dans les liens et dans la description des moteurs de recherche. Veuillez le choisir court et clair.
## Date
La date s'exprime au format AAAA-MM-JJ. Elle est importante pour les articles du blog et moins pour les simples pages de wiki.
## Description
La description s'affiche dans la page d'actualités pour les articles et apparaît dans les résultats de moteur de recherche. Une bonne longueur est entre deux et quatre lignes (150-300 caractères).
## Alias
Le champ `aliases` permet d'indiquer plusieurs liens pour une page. C'est utile pour faire des redirections (changement d'emplacement d'un contenu) ou générer un lien court.
## Template
Le champ `template` permet de spécifier un template personnalisé. Par défaut, les pages sont rendues avec le template `page.html` et les sections avec le template `section.html`. Si le but est uniquement der partager des fichiers, vous pouvez utiliser le thème `gallery.html`.
## Taxonomies
Cette sous-partie permet de définir des catégories (pour l'instant authors, tags, category) aidant à regrouper les articles concernant un même sujet ou écrit par un même auteur. Il n'y a pas vraiment de limites de mots à utiliser, mais veuillez vous renseigner sur les catégories existantes par exemple en vous rendant sur la page `/tags/`.
## Extra
Cette sous-partie permet de définir des paramètres spécifiques au thème. J'en fais la liste exhaustive ici :
- `hide = true` permet de cacher la page des menus
- `thumbnail = "/PELICAN/images/calendar.svg"` permet d'indiquer une illustration pour un article
- `katex = true` permet de charger le code pour rendre les formules latex
\ No newline at end of file
......@@ -3,7 +3,8 @@
{% block title %}<title>Duniter | {{page.title}}</title>{% endblock title %}
{% block description %}<meta name="description" content="{{ page.description }}">{% endblock description %}
{% block keywords %}{% if page.taxonomies.tags %}<meta name="keywords" content="
{%- for tag in section.taxonomies.tags %}{{tag}},{% endfor %}">{% endif %}{% endblock keywords %}
{%- for tag in page.taxonomies.tags %}{{tag}},{% endfor %}">{% endif %}{% endblock keywords %}
{% block extrahead %}<link rel="stylesheet" type="text/css" href="/custom.css">{% endblock extrahead %}
{% block content %}
<main id="accueil" class="w3-container">
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment