De nombreux sites d'e-commerce ont recours à une technique de SEO très puissante : elle consiste à générer des titres et des descriptions dynamiques, c'est-à-dire qui dépendent de l'URL de la page sur laquelle vous vous trouvez. Nous allons voir comment faire grâce au plugin Yoast en PHP.
Grâce à cette technique, vous allez pouvoir optimiser le référencement de vos pages, et permettre à Google de comprendre à quoi correspondent les paramètres présents dans vos URLs.
Prenons l'exemple du site Zalando, qui est un bon exemple de SEO dynamique :
- pour l'URL zalando.fr/jeans-homme/, le titre est "Jeans homme en ligne sur la boutique Zalando".
- Si on sélectionne les marques Levi's et Pepe Jeans, l'URL devient zalando.fr/jeans-homme/levis.pepe-jeans/, et le titre devient : "Jeans homme Levi's®, Pepe Jeans en ligne sur la boutique Zalando".
La même chose se passe pour la méta description de chaque page. Voyons comment répliquer cette SEO dynamique.
Le code pour WordPress et Yoast
Tout d'abord, vous devez avoir installé le plugin Yoast SEO, qui vous permet d'assigner à chaque page un titre et une méta description, qui sont au départ statiques (elles ne dépendent pas des paramètres de l'URL).
Ensuite, nous allons ajouter un filtre qui permet de modifier les titres et méta descriptions de Yoast (anciennement appelé wp-seo). Ce code est à ajouter dans votre fichier functions.php, qui se trouve habituellement dans wp-content/themes/<votre thème>/functions.php.
add_filter( 'wpseo_title', 'seo_title');
add_filter( 'wpseo_metadesc', 'seo_description');
Dans ce code, seo_title et seo_description correspondent à des fonctions php que nous allons créer : ce sont elles qui modifieront votre SEO.
Passons à la création de ces fonctions. A la racine de votre site wordpress, créez un nouveau fichier : seo.php. Puis, rajoutez cette ligne dans votre fichier functions.php :
include("seo.php");
A vous maintenant de créer les fonctions seo_title() et seo_description() dans seo.php. Commençons par seo_title :
function seo_title($title)
{
return $title;
}
Cette fonction basique permet simplement de renvoyer le titre de Yoast, qui n'est donc pas modifié. Nous allons maintenant modifier ce titre en fonction de l'URL de notre page.
Prenons l'exemple de la page /jeans de Modeseeker. Si l'utilisateur sélectionne la marque Levi's, l'URL devient modeseeker.com/jeans/?brand=levis. Nous allons donc récupérer la marque sélectionnée pour l'inclure dans le titre SEO.
function seo_title($title)
{
if(isset($_GET['brand'])) // si une marque est sélectionnée
{
$brand=$_GET['brand'];
return "Jeans ".$brand." • Comparateur de promotions";
}
return $title; //si aucune marque n'est sélectionnée, titre par défaut
}
Si une marque est sélectionnée, le titre de la page Jeans deviendra donc : "Jeans Levi's • Comparateur de promotions".
Nous n'avons plus qu'à faire de même avec la méta description, et nous voici avec une SEO dynamique parfaitement fonctionnelle.
Il est également souhaitable de modifier l'URL canonique de nos pages pour indiquer à Google quelle est la page par défaut (celle qui ne contient pas de paramètres). Il suffit de rajouter le code suivant à functions.php, et de créer une fonction seo_canonical() similaire à celle vue précédemment.
add_filter( 'wpseo_canonical', 'seo_canonical');
Bon courage, et n'hésitez pas à commenter l'article si vous avez des questions, nous nous ferons un plaisir d'y répondre.