Du coté Redirection

Information sur l'article

Enregistré le 11 Juil 2008 - Vu 1681 fois
Impression: Imprimer l'article
  • Sociale bookmarking: Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Partage ce code sur Facebook
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Eviter le duplicate content avec des urls contenant des mots clé
Votre avis: 
 
Ecrit par :  forty
 

Eviter le duplicate content avec des urls contenant des mots clé


Si nous avons ajouté des mots clé dans nos url avec une règle de réécriture, il est impératif de s'assurer lors d'un changement de ces mots clé que nous ne pouvons pas avoir de duplicate content.
Nous allons donc voir comment mettre en place une redirection 301 dès que l'url est différente de celle que nous attendons.
Nous allons donc repartir de l'exemple donnée pour l'ajout de mots clé dans l'url avec une url de la forme fichier-le-titre-de-mon-article-41701.html.
Nous pouvons écrire une fonction qui nous génère le lien à partir du titre de l'article et de l'id :



.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
.16
.17
.18
.19
.20
.21
.22
 

<?php
function get_lien_article($id) {
  $id_esc mysql_real_escape_string($id);
  $query_titre mysql_query("SELECT titre FROM articles WHERE id='$id_esc' ");
  $titre mysql_result($query_titre0'titre');
  $titre_reecrit format_url($titre$type);
  return '/fichier-'.$titre_reecrit.'-'.$id.'.html';
}

// la fonction pour formater vos urls
// elle est differente de celle donné dans l'article de Koogar 
// mais tout aussi performante :)
function format_url($nom)
{
    $accent="ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿ";
    $noAccent="aaaaaaaceeeeiiiidnoooooouuuuybsaaaaaaaceeeeiiiidnoooooouuuyyby";
    $reecriture=strtr(trim($nom),$accent,$noAccent);
    $url=preg_replace("# #","-",$reecriture);
    return  $url;
}
?>

Grâce à cette fonction nous pouvons maintenant vérifier que l'url appelée est bien celle attendue.
Ce code modifie l’entête de la page, il est donc indispensable de le mettre avant tout affichage de contenu.
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
 

<?php
$url_attendue get_lien_article($_GET['id']);
$url_reelle $_SERVER['REQUEST_URI'];
if ($url_attendue != $url_reelle) {
  header('Status: 301 Moved Permanently'false301);
  header('Location: ' $url_attendue);
  exit;
}
?>

Avec cette solution, il n’y a qu’une version de la page accessible et pas de perte d’ancienneté !

Et voilà : nous avons une belle url avec des mots clé et aucun risque de contenu dupliqué !
Ajouter un commentaire

RSS
Articles


RSS
commentaires

 
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
Offres d'emploi

Déposer vos articles

Déposer vos articles

Nous accueillons avec plaisir les articles et les critiques de livres, et nous encourageons les entreprises à contribuer avec les rapports d'industrie sur l'utilisation avantageuse de PHP. Vous pouvez également soumettre des articles de journaux et les publications de la presse professionnelle telles que les annonces de produits, et nous serons heureux de les publier sur notre site.

Contactez-nous