Un thème Jekyll pour cours-web.ch, créé pour publier facilement des supports de cours avec Github Pages.
Un explicatif vidéo du fonctionnement de ce thème Jekyll: https://www.youtube.com/watch?v=ISvUpva_Ovc
Pour utiliser ce thème dans un site Github Pages, ajouter le code suivant dans le fichier _config.yml :
remote_theme: coursweb/jk-theme
title: Titre exemple
description: Description de cet exemple
lang: fr-FR
robots: noindex, nofollow
# menu 
chapters:
 - title: Cours-Web
   url: https://cours-web.ch/
 - title: MDN
   url: https://developer.mozilla.org/fr/
# pied de page   
footer_col_1: <ul class="contact-list">
  <li>Eracom, Lausanne</li>
  <li>2022</li></ul>
footer_col_2: <ul class="social-media-list"><li><a href="https://github.com/">Lien Github</a></li></ul>
Ce thème produit deux menus de navigation:
- Un menu de premier niveau, destiné à envoyer vers d'autres cours ou à un index global. Configurable dans _config.yml.
- Un menu de deuxième niveau, qui contient les différentes pages du site. Toutes les pages utilisant layout: pagesont automatiquement prises en compte.
Pour le menu de premier niveau, voici comment déclarer les pages:
chapters:
 - title: Cours-web
   url: https://cours-web.ch/
 - title: Serveurs
   url: https://cours-web.ch/serveurs/
Pour ajouter des pages au site, vous devez créer des fichiers au format Markdown. Ces fichiers devront avoir l'extention .md, et doivent commencer par quelques lignes de code selon le format suivant:
---
layout: page
title: Titre de la page
permalink: url-de-la-page.html
---
Le paramètre permalink est optionnel.
L'ordre des pages est purement alphabétique. Vous pouvez utiliser une numérotation (dans les noms de fichiers) pour déterminer l'ordre, par exemple: 10-typographie.md, 20-webfonts.md, 30-sources.md, etc.
permalink: index.html. Sans cela, votre page d'accueil affichera le contenu du README avec une mise en page cassée.
Pour voir des exemples, vous pouvez consulter les différents dossiers sous https://github.com/coursweb
Si vous voulez inclure le contenu du README, p.ex. dans votre page d'accueil, vous pouvez le faire avec cette ligne de code:
{% include_relative README.md %}
Le pied de page est divisé en trois colonnes. Le contenu peut être renseigné dans _config.yml de la façon suivante:
footer_col_1: <ul class="contact-list">
  <li>Contact Information</li>
  <li>2017–2021</li></ul>
footer_col_2: <ul class="social-media-list"><li><a href="https://github.com/github-link">Github Link</a></li></ul>
footer_col_3: Un cours sur diverses procédures pour gérer un serveur web.
L'indexation par les moteurs de recherche peut être empêchée en ajoutant le paramètre suivant à _config.yml:
robots: noindex, nofollow
Ce thème est sous licence MIT, il est donc open-source. C'est la licence généralement utilisée par les thèmes Jekyll.
Il est possible de spécifier le processeur dans _config.yml, avec cette ligne: markdown: GFM. Cette variante nommée GitHub-flavored Markdown (GFM) a quelques avantages, notamment: chaque URL devient un lien, même sans la syntaxe markdown. Parmi les inconvénients: certaines balises sont prohibées, comme la balise iframe. Cela rend impossible l'intégration de vidéos Youtube.
- Documentation Jekyll: https://jekyllrb.com/docs/themes/
- Documentation Github Pages: https://cours-web.ch/git/github-pages.html