Redirection de paramètre dans l'URL

Discussion dans 'URL Rewriting et .htaccess' créé par Crunch, 3 Novembre 2013.

  1. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Bonsoir,

    Je me casse la tête depuis quelques jours déjà et je ne trouve pas de solution exacte donc je viens faire appel à vous.

    Je développe un nouveau site (sous WP) et j'utilise des paramètres dans les URL pour appeler certains fichiers dans le but d'obtenir une liste d'articles ou d'images par exemple. Jusque la tout fonctionne correctement mais je souhaiterais proposer une adresse plus propre.

    Ce que j'ai actuellement : http://monsite.fr/fiches-jeux/nom-du-jeu?filtre=test
    En gras ce sont les champs classiques qui ne doivent pas changer.

    Je souhaiterais avoir des adresses du style : http://monsite.fr/fiches-jeux/nom-du-jeu/test/

    A noter que "nom-du-jeu" doit être redirigé dynamiquement car ma liste étant très grande, je ne souhaite par aller dans mon htaccess sans arrêt pour ajouter une adresse.

    Merci d'avance pour l'aide apportée.
     
  2. Marie-Aude
    Marie-Aude WRInaute accro
    Inscrit:
    5 Juin 2006
    Messages:
    16 473
    J'aime reçus:
    34
    Il suffit de mettre une regle d'url rewriting dans le htaccess, avant les règles wordpress
     
  3. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Oui ça je sais. C'est la règle que j'ai du mal à trouver justement.
     
  4. Giustino
    Giustino WRInaute discret
    Inscrit:
    19 Novembre 2011
    Messages:
    141
    J'aime reçus:
    0
    J'ai déjà eu au moins un cas sur ce forum où WordPress gérait apparemment lui-même les redirections en fonction des paramètres de configuration accessibles à l'admin. Donc, sois certains de vérifier si tu ne peux pas passer par là avant toute chose, histoire de ne pas avoir des incohérences entre WP et ton htaccess.

    Néanmoins, si tu veux la règle de réécriture qui fera ton bonheur...
    Code:
    RewriteEngine on
    RewriteRule     ^fiches-jeux/(.+)/(.+)/$     fiches-jeux/$1?filtre=$2 [L]
    
    Par contre, si ton ancien format d'url est déjà indexé dans les moteurs de recherche, il faut empêcher l'accès désormais afin d'éviter le duplicate content. Tu risques de rencontrer une boucle de redirection en faisant celà. Je t'invite donc à jeter un oeil à mon tutoriel à ce sujet: https://www.webrankinfo.com/forum/t/tutoriel-eviter-les-boucles-de-redirection.168006/
     
  5. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Merci pour la règle d'écriture. A peine postée sur le forum que je viens de la poser dans mon htaccess.

    Malheureusement, le code ne donne rien. Je l'ai placé avant et après la boucle WP du htaccess au cas où l'un de deux fonctionnerait mais la redirection ne se fait pas (idem en testant la page manuellement avec l'URL attendue). WordPress s'avère très pratique depuis des années que je l'utilise sauf sur ce point sur lequel je bloque.
     
  6. Giustino
    Giustino WRInaute discret
    Inscrit:
    19 Novembre 2011
    Messages:
    141
    J'aime reçus:
    0
    Peux-tu afficher ton htaccess ?
    L'idéal serait de placer la règle que je t'ai donnée juste après le "RewriteEngine on" pour passer devant les règles WP.
     
  7. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Aucun problème, le voici :

    Code:
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule     ^fiches-jeux/(.+)/(.+)/$     fiches-jeux/$1?filtre=$2 [L]
    RewriteBase /ppsv/
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /ppsv/index.php [L]
    </IfModule>
    
    # END WordPress
    Sachant que c'est du local, je me suis permis d'ajouter "/ppsv/" dans le RewriteRule pour essayer mais toujours rien.
    Idem en plaçant mon RewriteRule sous le "RewriteRule ^index\.php$ - [L]".
     
  8. Giustino
    Giustino WRInaute discret
    Inscrit:
    19 Novembre 2011
    Messages:
    141
    J'aime reçus:
    0
    Ton "RewriteBase" défini la base de réécriture, tu n'as donc pas besoin de le réécrire dans tes règles.
    Comme ceci:

    Code:
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /ppsv
    
    RewriteRule ^fiches-jeux/(.+)/(.+)/$   fiches-jeux/$1?filtre=$2 [L]
    
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . index.php [L]
    </IfModule>
    
    Si tu essayes d'accéder à http://localhost/ppsv/fiches-jeux/un-nom-de-jeu/test/ tu es logiquement censé avoir le même contenu que http://localhost/ppsv/fiches-jeux/un-nom-de-jeu?filtre=test

    Néanmoins, j'ai pu constater que bon nombre de personnes faisaient face à des problèmes en réécrivant les urls via htaccess sous des cms tels que WordPress car il est normalement prévu pour le gérer en interne (via la configuration accessible à l'admin). Tu devrais donc pouvoir le paramétrer sans avoir besoin du htaccess (à vérifier)
     
  9. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Effectivement, WordPress doit le gérer différemment car cela ne fonctionne toujours pas.

    En interne, je n'ai aucun module qui permet de le gérer nativement. On peut gérer l'écriture des URL via l'interface de WordPress mais uniquement ceux des articles en ajoutant un ID, la date, la catégorie ou autres mais rien de très poussé (et donc rien pour mon besoin).
     
  10. Giustino
    Giustino WRInaute discret
    Inscrit:
    19 Novembre 2011
    Messages:
    141
    J'aime reçus:
    0
    "Ca ne fonctionne pas" = ... ?

    Quelle est l'erreur obtenue lorsque tu essayes d'accéder à l'url au format réécrit ?
    Boucle de redirection ? bon/mauvais contenu ? Url correcte dans la barre du browser ?
    Décris moi le plus possible afin de trouver une solution à ton problème.
     
  11. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Dans la barre d'adresse, quand je passe par mon paramètre, rien ne se passe de spécial : j'obtiens la page avec le contenu désiré mais avec le paramètre dans l'URL donc comme si je n'avais fait aucune modification.

    Quand je passe avec l'URL désirée, WordPress ne trouve rien et me renvoie vers une 404. J'ai essayé avec différents paramètres "au cas où" mais cela n'a rien changé bien évidemment.
     
  12. Giustino
    Giustino WRInaute discret
    Inscrit:
    19 Novembre 2011
    Messages:
    141
    J'aime reçus:
    0
    Ceci est tout à fait normal car la règle que je t'ai donnée ne remplacera pas http://localhost/ppsv/fiches-jeux/un-nom-de-jeu?filtre=test en http://localhost/ppsv/fiches-jeux/un-nom-de-jeu/test/.

    En fait, l'utilité de cette règle est que si tu essayes d'accéder à la nouvelle url (http://localhost/ppsv/fiches-jeux/un-nom-de-jeu/test/), elle va pointer sur l'ancien contenu et tu es donc censé obtenir le même contenu qu'à http://localhost/ppsv/fiches-jeux/un-nom-de-jeu?filtre=test

    Par contre, ceci est embêtant et devrait fonctionner.
     
  13. Crunch
    Crunch Nouveau WRInaute
    Inscrit:
    3 Novembre 2013
    Messages:
    7
    J'aime reçus:
    0
    Je te confirme que WordPress ne prend pas en compte cette redirection comme je l'avais testé.

    Je ne pense pas que cela soit lié au local, ça m'étonnerait fortement donc bon, il doit exister une autre méthode pour WP.
     
Chargement...
Similar Threads - Redirection paramètre Forum Date
Redirection url avec paramètres tracking dans Google Analytics Google Analytics 23 Novembre 2019
Redirection sans paramètres dans l'URL Netlinking, backlinks, liens et redirections 12 Juillet 2017
Redirection externe avec paramètres URL Rewriting et .htaccess 26 Avril 2016
Redirection 301 avec paramètre Débuter en référencement 8 Avril 2015
Comment faire ? Redirection d'url avec paramètres Netlinking, backlinks, liens et redirections 10 Octobre 2013
Redirection htaccess et paramètres GET URL Rewriting et .htaccess 12 Septembre 2013
Redirection simple htaccess URL avec plusieurs paramètres URL Rewriting et .htaccess 10 Septembre 2013
Redirection avec paramètre URL Rewriting et .htaccess 18 Mars 2013
Redirection 301 supprimer les parametres URL Rewriting et .htaccess 2 Juillet 2012
Redirection et conservation des paramètres URL Rewriting et .htaccess 8 Décembre 2011