2. Exemple de page

Ce document présente le schéma XML du protocole Sitemap.

Toutes les balises du fichier sitemap.xml doivent être protégées par échappement d’entité, et le fichier doit être encodé en UTF-8 <?xml version="1.0" encoding="UTF-8"?>.

Les balises obligatoires

Le plan du site doit :

  • Commencer par une balise d’ouverture et se terminer par une balise de fermeture <urlset></urlset>.
  • Définir la norme du protocole dans la balise <urlset> (exemple : <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">).
  • Inclure une balise pour chaque URL en tant que balise parente <url></url>.
  • Et enfin, indiquer l’url entre les balises <loc></loc>.

Exemple simplifié au maximum d’un fichier sitemaps pour 2 urls

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>https://www.yatooweb.com/</loc>
   </url>
   <url>
      <loc>https://www.yatooweb.com/dossiers/</loc>
   </url>
</urlset> 

En observant la saisie ci-dessus on pourrait se demander pourquoi les urls ne sont pas directement indiquée dans la balise <url></url>, nous aurions en effet pu avoir ce type de code :

XML
<url>https://www.yatooweb.com/dossiers/</url> //Attention cette nomenclature est incorrecte.

Si la norme a définit <url></url> comme une balise parente, c’est dans le but de pouvoir y indiquer d’autres paramètres, car on va pouvoir définir des informations propre à chaque url.

Les balises facultatives

Les balises présentées ci-dessous sont optionnelles, et leur prise en charge peut varier selon les moteurs de recherche. Consultez la documentation de chaque moteur pour plus de détails.

En outre, toutes les URL d’un plan de site doivent provenir du même domaine, comme www.exemple.com ou store.exemple.com. Pour en savoir plus, consultez la section sur l’emplacement du fichier Sitemap.

Exemple d’un fichier sitemap avec une seule URL et utilisant toutes les balises facultatives

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>https://www.yatooweb.com/</loc>
      <lastmod>2024-10-27</lastmod> // Date de la dernière mise à jour
      <changefreq>daily</changefreq> // Fréquence de mise à jour
      <priority>1</priority> // Priorité 
   </url>
</urlset>

Nous allons détaillé dans le tableau ci-après les différentes balises ainsi que leurs valeurs possibles.

BaliseDescription
<urlset>Obligatoire
<url>Obligatoire
<loc>ObligatoireURL de la page. Cette URL doit contenir moins de 2 048 caractères
(plus d’informations)
<lastmod>FacultativeLa date de la dernière modification de la page. Cette date doit être au format datetime du W3C, vous pouvez choisir d’y inclure ou non l’heure.
Exemple de formats valides :
YYYY-MM-DD soit 2026-03-21
YYYY-MM-DDThh:mm:ssTZD soit 2026-03-21T11:22:22+01:00
<changefreq>FacultativeFréquence à laquelle la page est mise à jour.
Choix possibles :
always (à chaque consultation la page est différente)
hourly (chaque heure)
daily (chaque jour)
weekly (chaque semaine)
monthly (chaque mois)
yearly (chaque année)
never (jamais)
<priority>FacultativePriorité de l’URL par rapport aux autres de votre site. Les valeurs possibles vont de 0 à 1, incrémenté par dixième.
La valeur par défaut est de « 0.5 ».

Quelles URLs peut-on mettre dans la balise <loc> ?

Uniquement les URLs absolues, c’est à dire au format https://www.yatooweb.com/dossiers/ma-page.html et jamais au format relatif du type : /dossiers/ma-page.html

Uniquement les URLs appartenant au domaine, pour un fichier hébergé sur https://www.yatooweb.com, on ne listera dans le fichier sitemap.xml que les URLs du domaine www.yatooweb.com mais pas de sousdomaine.yatooweb.com

Uniquement les URLs canoniques, (définir le terme canonique) on évitera d’y inscrire toutes les écritures dynamiques contenant des variables de tri. Par exemple, pour une page répertoriant des produits de type télévisions, l’URL canonique sera https://www.example.com/tele-60-65-pouces, on évitera d’y indexer https://www.example.com/tele-60-65-pouces?ordre_prix=croissant, la page sera différente car l’affichage des produits sera présentée par prix croissant mais en terme de contenu la page sera identique à l’URL canonique

Uniquement des URLS ayant un statut serveur HTTP 200, c’est à dire que la page existe