[URL REWR.] Petit code pour avoir le titre d'une page en url

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics


SuperPJ
WRInaute passionné
WRInaute passionné
 
Messages: 513
Inscription: Sam Jan 15, 2005 5:44

[URL REWR.] Petit code pour avoir le titre d'une page en url

Message le Lun Aoû 01, 2005 6:39

Pour améliorer le référencement et surtout le positionnement de vos pages sur Google vous pouvez remplacer toutes vos url du type "article.php?id=1" par "titre-de-l-article-1.html".

Pour ce faire vous devez remplacer ça :

Code: Tout sélectionner
// *************** FONCTION PRINCIPALE *************** //

$sql = mysql_query("SELECT id,titre FROM table_articles");

while ( $resultat = mysql_fetch_array($sql,MYSQL_ASSOC) )
{
   echo "<A HREF=\"article.php?id=$resultat[id]\">$resultat[titre]</A><BR>\n";
}


// ******************* TEXTE GENERE ******************* //
//
// <A HREF="article.php?id=1">Plus que jamais, la guerre fait rage entre les moteurs de recherche</A>
// <A HREF="article.php?id=4">Classement général des moteurs de recherche en 2004</A>
// <A HREF="article.php?id=7">Quels sont les atouts de Mozbot face à Google, Yahoo et MSN Search =)</A>



... par ça :

Code: Tout sélectionner
// **** LES 2 FONCTIONS SONT A METTRE DE PREFERENCE DANS UN INCLUDE **** //

// Procédure qui définit les paramètres de conversion
function title_to_file_info ()
{
   // Extension des noms de fichiers qui vont être générés
   $extension = '.html';
   // Nombre maximum de caractères que comportera le nom de fichier généré
   $caracteres = 50;
   // Dans le nom de fichier généré, remplacer ces caractères ...
   $car_speciaux = array( 'à','â','ä','È','É','é','è','ê','ë','î','ï','ô','ù','û','ç' );
   // ... par ceux-ci
   $car_normaux = array( 'a','a','a','E','E','e','e','e','e','i','i','o','u','u','c' );

   // Retourner les variables à la fonction principale "title_to_file()"
   return array( $extension, $caracteres, $car_speciaux, $car_normaux );
};


// Fonction principale
function title_to_file ( $id, $titre )
{
   // On récupère les variables
   list( $extension, $caracteres, $car_speciaux, $car_normaux ) = title_to_file_info();
   
   // Supprime de $titre les accents, trémas et cédilles
   $fichier = str_replace($car_speciaux, $car_normaux, $titre);
   // Convertit en minuscules
   $fichier = strtolower( $fichier );
   // Remplace les caractères non-alphanumériques par des tirets
   $fichier = eregi_replace( "[^A-Za-z0-9]", '-', $fichier );
   // Remplace les tirets multiples par un tiret unique
   $fichier = ereg_replace( "\-+", '-', $fichier );
   // Supprime le dernier caractère si c'est un tiret
   $fichier = rtrim( $fichier, '-' );
   // Limite la chaine aux $caractères premiers caractères
   $fichier = substr( $fichier , 0, $caracteres );
   // Applique l'extension au nom de fichier ainsi obtenu
   $fichier = "$fichier-$id$extension";
   
   // Retourner le nom de fichier obtenu
   return $fichier;
}

// ************************ FIN DES 2 FONCTIONS ************************ //



// *************** FONCTION PRINCIPALE *************** //

$sql = mysql_query("SELECT id,titre FROM table_articles");

while ( $resultat = mysql_fetch_array($sql,MYSQL_ASSOC) )
{
   echo "<A HREF=\"".title_to_file($resultat['id'],$resultat['titre'])."\">$resultat[titre]</A><BR>\n";
}


// ******************* TEXTE GENERE ******************* //
//
// <A HREF="plus-que-jamais-la-guerre-fait-rage-entre-les-mote-1.html">Plus que jamais, la guerre fait rage entre les moteurs de recherche</A>
// <A HREF="classement-general-des-moteurs-de-recherche-en-200-4.html">Classement général des moteurs de recherche en 2004</A>
// <A HREF="quels-sont-les-atouts-de-mozbot-face-a-google-yaho-7.html">Quels sont les atouts de Mozbot face à Google, Yahoo et MSN Search =)</A>



Puis dans le .htaccess vous faîtes :
Code: Tout sélectionner
RewriteEngine on
RewriteRule -([0-9]+)\.html$  /article.php?id=$1 [L]


_________________________________________________

C'est ce que j'ai fait pour mon annuaire MyPhpAnnuaire -http://annuaire.audiencestv.com et ça aide pas mal au niveau du référencement Google :P


Tilt
WRInaute passionné
WRInaute passionné
 
Messages: 818
Inscription: Sam Mar 26, 2005 11:48

Message le Lun Aoû 01, 2005 9:48

merci beaucoup de proposer cette solution.
à ton avis, quelle est l'incidence:
- de placer l'id en fin d'url et non pas au début (style "34-titre-de-la-page.html) ?
- d'ajouter ".html" Pourquoi ne pas laisser "www.dom.com/titre-de-la-page-34/"

Super contribution en tout cas.


SuperPJ
WRInaute passionné
WRInaute passionné
 
Messages: 513
Inscription: Sam Jan 15, 2005 5:44

Message le Lun Aoû 01, 2005 14:27

Tilt a écrit:Super contribution en tout cas.

Merci :oops:
A ton avis, quelle est l'incidence:
- de placer l'id en fin d'url et non pas au début (style "34-titre-de-la-page.html) ?

Au niveau de Google honnêtement je n'en ai aucune idée. Je ne sais pas s'il référence mieux dans un cas que pour l'autre. Pour autant je trouve que mettre l'id à la fin c'est mieux au niveau de l'utilisateur humain qui lira l'url.

- d'ajouter ".html" Pourquoi ne pas laisser "www.dom.com/titre-de-la-page-34/"

Là encore tu as raison, on pourrait simplement simuler un répertoire. Même si personnellement je préfère garder un nom de fichier ".html" pour la simple raison que les articles sont en fait des fichiers.


Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Code, JotSpot

  • Analyseur d'entête HTTP
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Analyse du référencement Google
    Cet outil vous donne un petit résumé de l'état de référencement de votre site dans Google.
  • Analyse de popularité
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités