pages | ||
themes | ||
README.md |
Documentations-Linux07
Architectures des pages du site https://documentations.linux07.fr propulsé par le cms GRAV avec un thème enfant de Learn2.
Création d'un thème enfant (sur Yunohost)
- Installer le plugin the DevTools
- Naviguer en root sur l'installation de grav
cd /var/www/grav
, Puissudo -u grav php7.4 bin/plugin devtools new-theme
Ce process pose quelques questions pour créer le nouveau thème: on peut créer un thème enfant qui va suivre le thème parent avecinherit
. J'utilise un thèmeinherit
de Learn2.
Pour activer le nouveau theme on change le theme par défaut en éditant user/config/system.yaml
pages:
theme: monnouveautheme
on ajoute les lignes si elles manquent qui se trouvent dans le fichier user/themes/themeparent/themeparent.yaml
dans user/themes/monnouveautheme/monouveautheme.yaml
sudo nano user/themes/monnouveautheme/monnouveautheme.yaml
par example avec un theme enfant du theme quark
streams:
schemes:
theme:
type: ReadOnlyStream
prefixes:
'':
- 'user://themes/mytheme'
- 'user://themes/quark'
enabled: true
production-mode: true
grid-size: grid-lg
header-fixed: true
header-animated: true
header-dark: false
header-transparent: false
sticky-footer: true
blog-page: '/blog'
spectre:
exp: false
icons: false
Ensuite
certains fichiers ou lignes sont indispensables et le theme peut ne pas être fonctionnel avant de les inclure dans son theme enfant.
blueprints.yaml
- La configuration utiliser par Grav pour avoir des informations du theme.
monnouveautheme.php
- Ce fichier doit être nommé en accord avec votre theme.
monnouveautheme.yaml
- la configuration de ce fichier est utilisée par les plugins pour définir les options du theme qu'il doit utiliser.
templates/
- ce dossier contient les Twig templates pour le rendu des pages.
On doit editer user/themes/monnouveautheme/blueprints.yaml
, comme pour monnouveautheme.yaml
en copiant les lignes du theme parent par exemple user/themes/learn2/blueprints.yaml
et les coller à la fin du fichier.
Personnalisation du thème
Ensuite, si on veut personaliser le css, on peut éditer un fichier custom.css
nano user/themes/monnouveautheme/css/custom.css
Pour changer le footer mkdir user/themes/monnouveautheme/templates/partials
et nano user/themes/monnouveautheme/templates/partials/footer.html.twig