Eviter le duplicate content

Pour le visiteur, avoir une 2 ou 3 pages qui affichent le même contenu, ce n’est pas très grave. Dans le pire des cas cela le lassera de toujours lire la même chose et il ne reviendra pas…
Pour Google, le Duplicate Content n’est pas une bonne chose (le moteur de recherche essaie de trier la qualité du contenu qu’il propose dans ses résultats). Avoir le même contenu avec des URLs différentes ne lui plaît pas.

En y regardant de plus près,dans WordPress, que vous accédiez à l’une ou l’autre de ces adresses, vous obtiendrez le même résultat (sauf si le thème est optimisé correctement SEO)

http://monsite.com/categorie/non-classe/
http://monsite.com/categorie/non-classe/non-classe/

Le contenu des pages que vous obtiendrez dans l’un ou l’autre des cas sera le même : c’est ce que l’on appelle du Dulicate Content.

En ajoutant la portion de code suivante (redirection 301 ou redirection permanente) dans le fichier functions.php de votre thème vous éviterez le problème :

add_action('wp', 'baw_non_duplicate_content' );
function baw_non_duplicate_content( $wp )
{
	global $wp_query;
        // Si le nom de catégorie trouvée est différente entre le rewrite match et la variable requetée, alors on redirige
	if( isset( $wp_query->query_vars['category_name'], $wp_query->query['category_name'] )
		&& $wp_query->query_vars['category_name'] != $wp_query->query['category_name'] ):
                // L'URL correcte dans laquelle on remplace la catégorie requetée par son véritable nom
		$correct_url = str_replace( $wp_query->query['category_name'], $wp_query->query_vars['category_name'], $wp->request );
                // Redirection 301
		wp_redirect( home_url( $correct_url ), 301 );
                // Toujours die() après une redirection
		die();
	endif;
}

Voilà, vous ferez plaisir à M. Google pourra fournir du contenu unique à ses utilisateurs, et vous éviterez à vos visiteurs de tomber 2 ou 3 fois sur le même contenu.
Elle est pas belle la vie ?

Astuce trouvée sur http://www.geekpress.fr/

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *