URL rewriting et 3 paramètres alpha num - num - alphanum

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

vttattitude
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Mer Sep 13, 2006 22:29

URL rewriting et 3 paramètres alpha num - num - alphanum

Message le Mar Jan 20, 2009 13:59

Bonjour à tous,

Je rencontre actuellement un problème dans une rubrique de mon site. J'appelle un script php avec 3 paramètres (catégorie, id, produit). J'ai donc écrit la règle de réécriture suivante :

Code: Tout sélectionner
RewriteRule ^(.*)-(.*)-(.*).html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]


Jusque là tout va bien, sauf que la variable produit peut contenir des chiffres, et qu'elle peut, comme catégorie, contenir des tirets. Le chiffre qui compose la variable produit est alors confondur avec l'id. J'ai donc modifier pour arriver à ça :

Code: Tout sélectionner
RewriteRule ^(-[a-z]*)-([0-9]*)-(.*).html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]


Mais là pas mieux, l'id ne passe carrément jamais.

Qu'en pensez vous ? Revoir le code (mais comment) ? Changer le modèle d'URL (avec par exemple l'id en premier) ?

r._xmouse
Nouveau WRInaute
 
Messages: 12
Inscription: Mar Mai 11, 2004 16:48

Message le Mar Jan 20, 2009 14:06

si ta variable produits ne comporte ni "_" ou ni "/" tu peut au choix faire :
^(.*)_(.*)_(.*).html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]
ou
^(.*)/(.*)/(.*).html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Mar Jan 20, 2009 15:39

c'est surement pas (-[a-z]*) mais ([a-z-]*)

vttattitude
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Mer Sep 13, 2006 22:29

Message le Mar Jan 20, 2009 17:10

Merci.

webmasterlamogere a écrit:c'est surement pas (-[a-z]*) mais ([a-z-]*)


J'ai plus la source sous les yeux, je vais vérifier si je ne me suis pas effectivment planté !

r._xmouse a écrit:si ta variable produits ne comporte ni "_" ou ni "/" tu peut au choix faire :
^(.*)_(.*)_(.*).html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]
ou
^(.*)/(.*)/(.*).html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]


Merci pour la suggestion, je vais m'y pencher ce soir. Le problème avec cette solution, c'est qu'elle me fait perdre mes URLs et donc mon positionnement ... Dommage, j'aurais du y penser avant !

vttattitude
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Mer Sep 13, 2006 22:29

Message le Mer Jan 21, 2009 11:21

J'ai finalement trouvé la solution ultime, sans changer d'URL :

Code: Tout sélectionner
RewriteRule ^([a-z-]*)([0-9]+)-(.*)\.html$ mapage.php?categorie=$1&id=$2&produit=$3 [L]


Merci pour votre aide.


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 Alerts

  • 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.
  • Transformer des simples citations de votre site en liens
    Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).


Qui est en ligne

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