Sur cette page
Options du site
Ces options définissent les réglages principaux du site : titre, URL, description, menus, taxonomies, thème, métadonnées, etc.
title
Titre principal du site.
title: "<site title>"
baseline
Description courte (~ 20 caractères).
baseline: "<baseline>"
baseurl
URL de base.
baseurl: <url>
Exemple :
baseurl: http://localhost:8000/
canonicalurl
Si la valeur est true, la fonction url() renverra l’URL absolue (false par défaut).
canonicalurl: <true|false> # false by default
description
Description du site (~ 250 caractères).
description: "<description>"
menus
Les menus sont utilisés pour créer des liens de navigation dans les templates.
Un menu est une liste d’entrées, chacune définie par un identifiant unique et des propriétés (nom, URL, poids).
menus:
<name>:
- id: <unique-id> # unique identifier (required)
name: "<name>" # name displayed in templates
url: <url> # relative or absolute URL
weight: <integer> # integer value used to sort entries (lighter first)
Exemple :
menus:
main:
- id: about
name: "About"
url: /about/
weight: 1
footer:
- id: author
name: The author
url: https://arnaudligny.fr
weight: 99
Surcharger une entrée
Une entrée de menu de page peut être surchargée : utilisez l’ID de la page comme id.
L’ID d’une entrée de menu de page n’inclut pas le préfixe de langue (par exemple : docs pour la page fr/docs) : le même id cible l’entrée dans toutes les langues.
Exemple :
menus:
main:
- id: index
name: "My amazing homepage!"
weight: 1
Désactiver une entrée
Une entrée de menu peut être désactivée avec enabled: false.
Exemple :
menus:
main:
- id: about
enabled: false
taxonomies
Liste des vocabulaires, associant une valeur au pluriel à une valeur au singulier.
taxonomies:
<plural>: <singular>
Exemple :
taxonomies:
categories: category
tags: tag
Vous pouvez ensuite utiliser ces vocabulaires dans le front matter de votre contenu.
theme
Thème à utiliser, ou liste de thèmes.
theme: <theme> # theme name
# or
theme:
- <theme1> # theme name
- <theme2>
Exemples :
theme: hyde
theme:
- pwa
- hyde
date
Format de date et fuseau horaire.
date:
format: <format> # date format (optional, `F j, Y` by default)
timezone: <timezone> # date timezone (optional, local time zone by default)
format: spécificateur de format de date PHPtimezone: voir les fuseaux horaires
Exemple :
date:
format: 'j F, Y'
timezone: 'Europe/Paris'
metatags
Les metatags sont des aides SEO et réseaux sociaux qui peuvent être injectées automatiquement dans le <head>, via le template partials/metatags.html.twig.
Ce template ajoute les balises meta suivantes :
- Titre de page + titre du site, ou titre du site + baseline du site
- Description de la page/du site
- Mots-clés de la page/du site
- Auteur de la page/du site
- Directives des robots des moteurs de recherche (robots)
- Liens de favicon
- Liens de navigation (premier, précédent, suivant, dernier)
- URL canonique
- Liens alternatifs (ex. : flux RSS, autres langues)
- Liens
rel=me - Open Graph
- Identifiant de profil Facebook
- Twitter/X Card
- Balise Fediverse
- Dublin Core
- Données structurées (JSON-LD)
Options metatags
Cecil utilise le front matter de la page pour alimenter les balises meta, avec repli sur les options du site si nécessaire.
title: "Page/Site title" # used by title meta
description: "Page/Site description" # used by description meta
tags: [tag1, tag2] # used by keywords meta
keywords: [keyword1, keyword2] # obsolete in page front matter (use `tags`)
author: # used by author meta
name: <name> # author name
url: <url> # author URL
email: <email> # author email
image: image.jpg # used by Open Graph and social networks cards
canonical: # used to override the generated canonical URL
url: <URL> # absolute URL
title: "<URL title>" # optional canonical title
social: # used by social networks meta
twitter: # used by Twitter/X Card
url: <URL> # used for `rel=me` link
site: username # site username
creator: username # page author username
mastodon: # used by Mastodon meta
url: <URL> # used for `rel=me` link
creator: handle # page author account
facebook: # used by Facebook meta
url: <URL> # used for `rel=me` link
id: 123456789 # Facebook profile ID
username: username # page author username
Configuration metatags
metatags:
title: # title options
divider: " · " # string between page title and site title
only: false # displays page title only (`false` by default)
pagination: # pagination options
shownumber: true # displays page number in title (`true` by default)
label: "Page %s" # how to display page number (`Page %s` by default)
robots: "index,follow" # web crawlers directives (`index,follow` by default)
favicon: # favicon options (set `favicon: false` to disable)
image: favicon.png # path to favicon image (`favicon.png` by default)
sizes: # sizes by device
"icon": [32, 57, 76, 96, 128, 192, 228] # web browsers
"shortcut icon": [128, 196] # Android
"apple-touch-icon": [120, 152, 180] # iOS
navigation: true # includes previous and next links (`true` by default)
image: true # includes image (`true` by default)
og: true # includes Open Graph meta tags (`true` by default)
articles: "blog" # articles' section(s): a section or a list of sections (`blog` by default)
twitter: true # includes Twitter/X Card meta tags (`true` by default)
mastodon: true # includes Mastodon meta tags (`true` by default)
dc: false # includes Dublin Core meta tags (`false` by default)
data: false # includes JSON-LD structured data (`false` by default), see below for options
Données structurées
Lorsqu’elles sont activées, les données structurées sont ajoutées sous la forme d’un graphe JSON-LD d’entités liées (schema.org) :
WebSiteet son éditeur (OrganizationouPerson)WebPage(CollectionPagepour la page d’accueil, les sections et les pages de taxonomies), sauf pour la page 404BreadcrumbList: accueil, sections parentes (ou vocabulaire) et page couranteBlogPostingpour les pages de la ou des sections d’articles (voirmetatags.articles)VideoObjectpour les pages avec une vidéo et une image (utilisée comme vignette)ItemListdes entrées du menu principal
metatags.data accepte true ou un ensemble d’options :
metatags:
data:
enabled: true # enables JSON-LD structured data (`true` if `data` is a map)
article: BlogPosting # schema.org type of articles (`BlogPosting` by default, e.g. `NewsArticle`)
publisher: # entity that publishes the site
type: Organization # `Organization` (default) or `Person` (personal site)
name: <name> # site title by default (site author name for a `Person`)
logo: logo.png # favicon image (`favicon.png`) by default
url: <url> # site URL by default
sameAs: [<url>, <url>] # `url` of `social` entries by default
Le front matter d’une page peut surcharger certaines options :
metatags:
data:
enabled: false # disables structured data for this page
type: AboutPage # page type (e.g. `AboutPage`, `ContactPage`, `ProfilePage`, `FAQPage`)
article: NewsArticle # article type
debug
Active le mode debug, utilisé pour afficher des informations de débogage comme des journaux très verbeux, le dump Twig, le profileur Twig, la sourcemap SCSS, etc.
debug: true
Il existe deux autres façons d’activer le mode debug :
- Exécuter une commande avec l’option
-vvv - Définir la variable d’environnement
CECIL_DEBUGàtrue