Génération de sitemap
Génération automatique du sitemap XML et de l'index de recherche JSON pour la découverte par les moteurs de recherche et la recherche sur le site.
Génération de sitemap
Génération automatique de sitemaps XML pour les moteurs de recherche et d’index JSON pour la recherche sur le site.
Aperçu
Le thème génère :
- Sitemap XML : pour les robots d’exploration des moteurs de recherche
- Index de recherche JSON : pour la recherche côté client
- robots.txt : instructions pour les robots d’exploration
Sitemap XML
Génération automatique
En utilisant le plugin jekyll-sitemap :
# _config.yml
plugins:
- jekyll-sitemap
Sortie
Généré à l’emplacement /sitemap.xml :
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://yoursite.com/</loc>
<lastmod>2025-01-25T00:00:00+00:00</lastmod>
</url>
<url>
<loc>https://yoursite.com/docs/</loc>
<lastmod>2025-01-20T00:00:00+00:00</lastmod>
</url>
</urlset>
Sitemap personnalisé
Créez sitemap.xml manuellement :
---
layout: null
---
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
{% for page in site.pages %}
{% unless page.sitemap == false %}
<url>
<loc>{{ page.url | absolute_url }}</loc>
<lastmod>{{ page.last_modified_at | default: site.time | date_to_xmlschema }}</lastmod>
<changefreq>{{ page.sitemap.changefreq | default: 'monthly' }}</changefreq>
<priority>{{ page.sitemap.priority | default: '0.5' }}</priority>
</url>
{% endunless %}
{% endfor %}
</urlset>
Index de recherche JSON
Fichier généré
search.json pour la recherche côté client :
[
{
"title": "Getting Started",
"url": "/docs/getting-started/",
"content": "Welcome to the documentation...",
"categories": ["docs"],
"tags": ["setup"]
}
]
Modèle de recherche
---
layout: null
---
[
{% assign pages = site.pages | where_exp: "page", "page.title" %}
{% for page in pages %}
{
"title": {{ page.title | jsonify }},
"url": {{ page.url | jsonify }},
"content": {{ page.content | strip_html | truncatewords: 100 | jsonify }},
"categories": {{ page.categories | jsonify }},
"tags": {{ page.tags | jsonify }}
}{% unless forloop.last %},{% endunless %}
{% endfor %}
]
robots.txt
Configuration de base
# robots.txt
User-agent: *
Allow: /
Sitemap: https://yoursite.com/sitemap.xml
Modèle Jekyll
---
layout: null
permalink: /robots.txt
---
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /private/
Sitemap: {{ site.url }}/sitemap.xml
Exclusion de pages
Du sitemap XML
---
sitemap: false
---
Ou avec la configuration du plugin :
# _config.yml
defaults:
- scope:
path: "admin/*"
values:
sitemap: false
De l’index de recherche
---
search: false
---
{% unless page.search == false %}
// Include in search index
{% endunless %}
Priorité et fréquence
Paramètres par page
---
sitemap:
priority: 0.8
changefreq: weekly
---
Paramètres par défaut
# _config.yml
defaults:
- scope:
path: ""
type: "posts"
values:
sitemap:
changefreq: monthly
priority: 0.7
- scope:
path: ""
type: "pages"
values:
sitemap:
changefreq: weekly
priority: 0.5
Soumission aux moteurs de recherche
Google Search Console
- Accédez à Search Console
- Ajoutez votre site
- Soumettez l’URL du sitemap :
https://yoursite.com/sitemap.xml
Bing Webmaster Tools
- Accédez à Bing Webmaster Tools
- Ajoutez votre site
- Soumettez le sitemap
Validation
Validation XML
Testez avec XML Sitemap Validator
Google Search Console
Vérifiez l’état du sitemap dans Search Console → Sitemaps
Dépannage
Sitemap introuvable
- Vérifiez que le plugin est installé
- Vérifiez que
_site/sitemap.xmlexiste - Vérifiez les permissions du fichier
Pages manquantes
- Vérifiez que la page n’est pas exclue
- Vérifiez le front matter pour
sitemap: false - Assurez-vous que la page a un titre
JSON invalide
- Recherchez les caractères non échappés
- Validez la syntaxe JSON
- Vérifiez les erreurs de modèle Liquid
Bonnes pratiques
Maintenez le sitemap à jour
- Régénérez lors du déploiement
- Incluez les dates lastmod
- Supprimez les pages effacées
Optimiser pour la recherche
- Inclure toutes les pages importantes
- Utiliser des titres descriptifs
- Garder des URL propres
Surveiller les performances
- Vérifier le statut d’indexation
- Surveiller les erreurs d’exploration
- Examiner les statistiques de recherche
Ressources associées
Voir aussi
- [[SEO]]
- [[Deployment]]
- [[Analytics]]