Routes
Les routes sont utilisées pour configurer la manière dont des requêtes spécifiques sont traitées. Une route fait correspondre le chemin de la requête et détermine quel contenu renvoyer à l’utilisateur. Par exemple, si le chemin de la requête est /tag/my-tag, la route détermine qu’elle doit afficher tag.twig et renvoyer la réponse à l’utilisateur.
- Routes par défaut
- Personnaliser les permaliens des articles/pages
- Personnaliser d’autres routes par défaut
- Routes personnalisées
- Conflits de routes
- Suffixes et préfixes
- Créer un site web
- Plusieurs collections d’articles
Paramètres des routes : Console → Paramètres → Routes
Routes par défaut
Un nouveau blog aura ces 5 routes par défaut.
post/{slug}page/{slug}index/tag/tag/{slug}tag.slug = {slug}author/author/{slug}author.slug = {slug}Le filtre d'articles est une expression FilterQ pour filtrer les articles. Ces articles filtrés seront envoyés au modèle en tant que
variable _posts.
Elle n'est utilisée que dans les pages de listing comme index, tag, author. Les paramètres correspondants ({slug}) peuvent être utilisés dans cette expression.
En plus de ces routes par défaut, il existe des routes spéciales, non personnalisables.
/styles.css/assets/{file_name}/media/{file_name}/p/{hash}/robots.txt/sitemap.xml, /sitemap-pages.xml, /sitemap-posts-x.xmlPersonnaliser les permaliens des articles/pages
Vous pouvez modifier la valeur de correspondance des routes post et page pour changer les permaliens des articles/pages. Par défaut, elle ressemble à /{slug}. Vous pouvez la remplacer par une structure différente pouvant inclure la date, le tag et/ou le nom de l’auteur. Voici quelques exemples.
/{year}/{month}/{day}/{slug}/{tag}/{slug}/{author}/{slug}
Notez que {slug} est toujours requis. Les espaces réservés suivants sont pris en charge.
Espaces réservés de base :
{slug}{tag}{author}Veuillez noter que si vous utilisez {tag} (ou {author}) dans
l'URL de l'article/page, tous les articles doivent avoir au moins un tag (ou auteur). Sinon, l'URL
de l'article/page affichera une erreur 404.
Espaces réservés basés sur le temps :
- Représentent la date de publication de l’article
- Seul l’anglais en minuscules est pris en charge pour les noms de mois et de jours
{year}2022{year_short}99 ou 22{month}01 ou 12{month_number}1 à 12{month_short}jan à dec{month_long}january à december{day}01 à 31{day_number}1 à 31{day_year}1 à 365{day_week}mon à sun{day_week_long}monday à sunday{day_week_number}1 à 7{hour}00 à 23{minute}00 à 59{second}00 à 59{unix}1448406000Personnaliser d'autres routes par défaut
Comme pour post et page, les routes, d’autres routes par défaut (index, tag, author, et search) sont personnalisables dans une certaine mesure. Voici quelques idées :
/author/{slug}→/creator/{slug}/tag/{slug}→/category/{slug}/→/blog
Veuillez noter que vous (ou les développeurs de thèmes) pouvez également ajouter des routes personnalisées en ajoutant des fichiers route-{route}.twig aux fichiers de modèle. Voir ici pour plus de
détails.
Routes personnalisées
En plus des 6 routes par défaut, vous pouvez ajouter vos propres routes. Voici quelques exemples d’utilisation :
- Créer des pages de destination personnalisées
- Créer de nouvelles collections d’articles
- Créer des flux RSS personnalisés, par exemple pour un podcast
Veuillez noter que vous (ou les développeurs de thèmes) pouvez également ajouter des routes personnalisées en ajoutant des fichiers route-{route}.twig aux fichiers de modèle. Voir ici pour plus de
détails.
Conflits de routes
En général, des conflits de routes peuvent survenir lorsque deux routes ou plus ont la même valeur de correspondance. Dans Hyvor Blogs, les routes post et page peuvent avoir les mêmes valeurs de correspondance. (Vous pouvez le constater, les valeurs par défaut de ces deux routes sont identiques : /{slug}). Cependant, les correspondances des autres routes ne peuvent pas avoir de valeurs dupliquées.
Suffixes et préfixes
Ces suffixes sont pris en charge :
/feed- Pour le flux atom (posts_filterdoit être défini)/page/{page_number}- Pour la pagination
Les correspondances peuvent être préfixées par un code de langue. Consultez la section langues pour configurer plusieurs langues sur votre blog.
Créer un site web
Nous appelons généralement un site web « un blog » lorsqu’il contient des articles et que la page d’accueil les liste tous. C’est le comportement par défaut de Hyvor Blogs. Même en dehors de cet usage, vous pouvez utiliser Hyvor Blogs pour créer un site web général. Par exemple, vous pouvez créer une page de destination pour la page d’accueil, et placer votre blog dans le sous-répertoire /blog.
Plusieurs collections d'articles
Par défaut, votre blog possède une seule collection d’articles, et tous les articles seront listés sur la page d’index. Que faire si vous souhaitez avoir des collections séparées, par exemple des articles de blog et des épisodes de podcast dans le blog ? Vous pouvez utiliser les routes et les tags pour y parvenir.
- Nous ajoutons un tag
podcastà tous les articles de podcast. - Nous pouvons personnaliser la route
index(/) et son modèle (index.twig) pour afficher un aperçu des articles de blog et des épisodes de podcast. Pour ce faire, vous devrez mettre à jourindex.twiget utiliser notre API de données pour récupérer les articles séparément. - Nous ajoutons deux nouvelles routes avec un nouveau modèle :
/blog-> pour lister les articles de blog (en utilisant le filtretag.slug != podcast)/podcast-> pour lister les épisodes de podcast (en utilisant le filtretag.slug = podcast)