Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gestion des liens #6

Open
remillc-udem opened this issue Feb 20, 2024 · 3 comments
Open

Gestion des liens #6

remillc-udem opened this issue Feb 20, 2024 · 3 comments

Comments

@remillc-udem
Copy link
Contributor

La gestion des liens hypertextes entre les pages du site est un enjeux certain dans un scénario de backend pauvre.

Je créé cette issue afin que l'on note des observations les concernant et les discute.

@msevigny
Copy link
Collaborator

Ouais... par curiosité, j'ai googlé "Astro plugin link checker", rien de transcendant, mais pour le plugin Starlight d'Astro, il y en a un pour les fichiers markdown / MDX: https://github.com/HiDeoo/starlight-links-validator. Je ne sais pas si c'est bloquant que ce soit avec Starlight, mais ça peut donner des idées. Peut-être y en a-t-il d'autres. Et aussi, je ne sais pas si je comprends bien le processus de "build" pour ce type d'outils, mais peut-on imaginer un script au moment du build qui vérifie les liens internes du site généré? Genre?

@remillc-udem
Copy link
Contributor Author

Je connaissais pas le thème Starlight. C'est très intéressant. Ce serait un bon point de départ pour nos contenus détaillés. Peut-être aussi pour le prototype. Je me demande si on devrait pas utiliser ce kit plutôt que l'actuel.

Concernant Starlight Links Validator, à première vue, il ne fonctionne qu'en tant que plugin pour Starlight. À vérifier. Anyway, c'est un vérificateur de liens, ce qui est intéressant.

@remillc-udem
Copy link
Contributor Author

Voici quelques cas types concernant la problématique des liens.

Un lien dans un contenu

obtenir/pret-renouvellement-retour.mdx
---
title: Prêt, renouvellement, retour
---

…
Consulter la page [Prêt entre bibliothèques](/obtenir/peb) pour les modalités spécifiques 
aux prêts provenant d'une bibliothèque autre que les bibliothèques universitaires québécoises.
…

Dans ce cas-ci, le lien est relatif à partir de la racine, mais on peut aussi utiliser un lien relatif tout court:

---
title: Prêt, renouvellement, retour
---

…
Consulter la page [Prêt entre bibliothèques](peb) pour les modalités spécifiques 
aux prêts provenant d'une bibliothèque autre que les bibliothèques universitaires québécoises.
…

On peut aussi utiliser la syntaxe html directement dans un fichier mdx:

---
title: Prêt, renouvellement, retour
---

…
Consulter la page <a href="peb">Prêt entre bibliothèques</a> pour les modalités spécifiques 
aux prêts provenant d'une bibliothèque autre que les bibliothèques universitaires québécoises.
…

Un menu de navigation secondaire

Typiquement: le menu de gauche d'une section.

Les aspects particuliers à ce type de liens sont (en excluant les considérations relatives au visuel) :

  • La structure du menu est créée à partir de l'arborescence des fichiers / dossiers des contenus. Il faut voir si on a des besoins qui ne cadrent pas avec cette contrainte;
  • On veut généralement afficher un libellé court qui est bien souvent différent du libellé employé comme titre de la page;
  • On veut contrôler l'ordre dans lequel s'affichent les pages d'une section;
  • Certaines pages d'une section ne sont pas affichées dans le menu secondaire de la section

Ces 3 infos peuvent être ajoutées au frontmatter de chaque fichier mdx faisant office de page, par exemple, en s'inspirant des menus sidebar de Starlight:

obtenir/pret-renouvellement-retour.mdx
---
title: Prêt, renouvellement, retour
sidebar:
  label: Prêt
  order: 1
  hidden: false
---

 Fusce egestas sapien sit amet nisi tempus molestie. Cras nunc urna, ullamcorper at pretium eu, condimentum nec ipsum.

Dans ce cas là, les liens du menu doivent être générés automatiquement par le front end.

Importation de composants

La documentation d'Astro indique qu'il faut importer les composants pour pouvoir les utiliser:

obtenir/pret-renouvellement-retour.mdx
---
title: Prêt, renouvellement, retour
---

import Button from '../components/Button.astro';

Etiam sed enim auctor, vestibulum augue et, pulvinar velit.

<Button primary href="/nous-joindre">Écrivez-nous!</Button>

Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.

L'importation de composants alourdis le processus d'écriture. Ne peut-elle être faite automatiquement, après analyse du contenu de la page?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants