Bonjour,
Frustrant de passer des heures à tester une règle et y être presque, mais de ne pas trouver exactement...
Je cherche donc les conseils éclairés d'un killer du Rewrite en espérant pouvoir bientôt aider les autres pour de tels cas "complexes" ! (pour moi...)
Mes termes de l'URL en "dur" en pseudo HTML, à rediriger vers une page PHP avec des paramètres, étant séparés par des "/" (forward slash), j'ai séparé les termes de rewriting par ([^/]+) ce qui je pensais signifie "n'importe quoi jusqu'au prochain slash" ? Toujours est-il qu'après des heures d'essai, j'arrive à la conclusion suivante : ma règle marche en fait bien, MAIS s'arrête de fonctionner lorsque l'un des termes contient un tiret...
Exemple à réaliser :
Mes liens "en dur" sont par ex.
voile-annonces/voiliers-a-vendre/morbihan/beneteau/voilier-poids-leger/1212.html
Il me faudrait que ces liens soient transformés en "batoccase-details-annonce-fr-1212.html" car cette structure de liens est prise en compte par une règle suivante.
(Cette partie là marche, donc un appel direct de batoccase-details-annonce-fr-1212.html affiche bien la bonne annonce détaillée.)
Si je fais
RewriteRule voile-annonces/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([0-9]+)\.html$ https://www.webrankinfo.com/dossiers/conseils/relancer-referencement [NC]
alors mon appel ci-dessus redirige bien vers le forum, c'est donc qu'il répond à la structure ? Mais je remplace le test vers le forum par ma vraie regle batoccase-details-annonce-fr-$5.html alors cassé...
J'ai testé avec différents mots-clefs sans aucun sens mais qui suivaient ce schéma :
voile-annonces/truc/pagesuivante/machin/voila/1212.html
et cela fonctionne, mais si je teste avec les URL réels que mon site contient alors la règle ne passe plus !
et donc
http://www.(domaine)/voile-annonces/voilier-poids-leger/beneteau/beneteau/beneteau/1212.html
marche, et
http://www.(domaine)/voile-annonces/voiliers-a-vendre/morbihan/beneteau/voilier-poids-leger/1212.html
ne marche plus !
Merci de votre attention et de votre expertise...
Frustrant de passer des heures à tester une règle et y être presque, mais de ne pas trouver exactement...
Je cherche donc les conseils éclairés d'un killer du Rewrite en espérant pouvoir bientôt aider les autres pour de tels cas "complexes" ! (pour moi...)
Mes termes de l'URL en "dur" en pseudo HTML, à rediriger vers une page PHP avec des paramètres, étant séparés par des "/" (forward slash), j'ai séparé les termes de rewriting par ([^/]+) ce qui je pensais signifie "n'importe quoi jusqu'au prochain slash" ? Toujours est-il qu'après des heures d'essai, j'arrive à la conclusion suivante : ma règle marche en fait bien, MAIS s'arrête de fonctionner lorsque l'un des termes contient un tiret...
Exemple à réaliser :
Mes liens "en dur" sont par ex.
voile-annonces/voiliers-a-vendre/morbihan/beneteau/voilier-poids-leger/1212.html
Il me faudrait que ces liens soient transformés en "batoccase-details-annonce-fr-1212.html" car cette structure de liens est prise en compte par une règle suivante.
(Cette partie là marche, donc un appel direct de batoccase-details-annonce-fr-1212.html affiche bien la bonne annonce détaillée.)
Si je fais
RewriteRule voile-annonces/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([0-9]+)\.html$ https://www.webrankinfo.com/dossiers/conseils/relancer-referencement [NC]
alors mon appel ci-dessus redirige bien vers le forum, c'est donc qu'il répond à la structure ? Mais je remplace le test vers le forum par ma vraie regle batoccase-details-annonce-fr-$5.html alors cassé...
J'ai testé avec différents mots-clefs sans aucun sens mais qui suivaient ce schéma :
voile-annonces/truc/pagesuivante/machin/voila/1212.html
et cela fonctionne, mais si je teste avec les URL réels que mon site contient alors la règle ne passe plus !
et donc
http://www.(domaine)/voile-annonces/voilier-poids-leger/beneteau/beneteau/beneteau/1212.html
marche, et
http://www.(domaine)/voile-annonces/voiliers-a-vendre/morbihan/beneteau/voilier-poids-leger/1212.html
ne marche plus !
Merci de votre attention et de votre expertise...