Devblog développement web, WordPress & WooCommerce

Créer un sitemap pour Google News dans WordPress

C

« Google actualités » s’appuie sur un format de sitemap bien particulier pour indexer des site internets dans son aggrégateur de news. C’est une niche de trafic particulièrement porteuse pour les éditeurs mais nécessite quelques adapatations par rapport à un sitemap xml classique.

Parmi les différences notables, Google News n’accepte dans ce sitemap que des urls ayant moins de 48 heures. Il est donc généralement souhaitable de produire un fichier de sitmap dédié au moteur de rechecher d’actualités et conforme à la spécifications techniques.

Pour répondre à la problèmatique du point de vue technique et en particulier dans WordPress les choses sont assez rapides à mettre en place. Une fois que l’on a bien les élements du cachier des charges en tête :

    1. Récupérer des infos génériques de son site pour l’entête
    2. Récupérer des articles éligibles
    3. Générer la route et afficher du fichier.

Tout d’abord en s’appuyant sur la configuration générale du WordPress, il sera assez facile d’utiliser d’obtenir un code générique permettant au script de s’installer sur différents site. En effet, via la récupération d’options vous obtiendrez de manière dynamique le nom et l’url du site. Cela permettra de remplir rapidement les balises de descriptions à intégrer au sitemap.

<news:publication>
<news:name>Récupérer le nom du WordPress</news:name>
<news:language>Récupérer la langue du WordPress</news:language>
</news:publication>

Pour la partie contenue, une simple boucle sur une sélection d’articles (post) fera l’affaire. Grâce à un paramètre de date dans WP_Query on obtiendra sans problème les articles publiés depuis moins de 48 heures.

Pour ce qui est enfin de l’url, à savoir l’adresse à laquelle Google pourra intérroger votre sitemap, j’ai choisi une méthode un peu radicale mais efficace : intercepter une requête arrivée en 404 via template include et servir le contenu du fichier si REQUEST_URI correspond à l’url souhaitée (ici sitemap-news.xml).

Le code que vous pouvez un intégrer directement dans un fichier php placé dans le répertoire mu-plugins de votre WordPress

Devblog développement web, WordPress & WooCommerce

Articles récents

Catégories