Réécriture d'url de résultats de recherche
Résolu
Ericb2038
Messages postés
3
Statut
Membre
-
Ericb2038 Messages postés 3 Statut Membre -
Ericb2038 Messages postés 3 Statut Membre -
Bonjour,
Mon problème est le suivant :
soit :
- un formulaire de recherche simple dans lequel l'internaute tape sa recherche
pour l'affichage de la page de résultats je voudrais pouvoir générer une url du type
http://monsite.com/recherche/premier-terme-recherché-2e-terme-recherché/
(etc)
générer "premier-terme-recherché-2e-terme-recherché", etc dans l'url d'appel,
ça je vais savoir faire, mais c'est pour la redirection que je sèche un peu.
J'imagine qu'on doit pouvoir le faire dans un .htaccess via des redirections
apache un peu rusées, mais je ne vois pas trop comment.. Quelqu'un aurait une idée ?
(en fait, j'ai vu ce principe fonctionner quelque part et j'ai un client qui me le réclame :))
Merci par avance,
Eric
Mon problème est le suivant :
soit :
- un formulaire de recherche simple dans lequel l'internaute tape sa recherche
pour l'affichage de la page de résultats je voudrais pouvoir générer une url du type
http://monsite.com/recherche/premier-terme-recherché-2e-terme-recherché/
(etc)
générer "premier-terme-recherché-2e-terme-recherché", etc dans l'url d'appel,
ça je vais savoir faire, mais c'est pour la redirection que je sèche un peu.
J'imagine qu'on doit pouvoir le faire dans un .htaccess via des redirections
apache un peu rusées, mais je ne vois pas trop comment.. Quelqu'un aurait une idée ?
(en fait, j'ai vu ce principe fonctionner quelque part et j'ai un client qui me le réclame :))
Merci par avance,
Eric
A voir également:
- Réécriture d'url de résultats de recherche
- Url - Guide
- Resultats foot - Télécharger - Vie quotidienne
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Rechercher ou entrer l'adresse 4 - recherche google ✓ - Forum Réseaux sociaux
- Le fichier pdf à télécharger est disponible avec le même nom sur le site de associations.gouv.fr. mais vous ne le trouverez pas directement avec un moteur de recherche… quelle est l’url de ce fichier pdf sur le site web de associations.gouv.fr ? - Forum Réseaux sociaux
2 réponses
Bonjour,
Je ne comprend pas bien le but de la question.
Tu veux que les variables soit passées dans l'adresse c'est ça?
utilise la même redirection que d'habitude, et place tes variables dans un $_GET["taVariable"].
elles seront automatiquement placées dans l'url de ta page de destination.
Je ne comprend pas bien le but de la question.
Tu veux que les variables soit passées dans l'adresse c'est ça?
utilise la même redirection que d'habitude, et place tes variables dans un $_GET["taVariable"].
elles seront automatiquement placées dans l'url de ta page de destination.
Non en fait, je veux que mes variables composent l'URL
http://monsite.com/recherche/ce-que-l-utilisateur-a-tape-dans-le-champ-de-recherche
(c'est pour un client malade de SEO (cela dit je trouve ça très con, dans la mesure ou les bots de des moteurs ne vont pas eux faire de recherche, mais bon, on discute pas avec le client....))
Et en fait, j'ai trouvé comment faire :
mon formulaire appelle :
un dosearch.php dont le code est :
qui redirige donc vers /recherche/la-chaine-tapée-par-l'internaute
Pour interpréter cette url,
dans mon .htaccess j'ai des conditions de réécriture :
qui renvoient tout ce qui commence par "recherche/" vers resultatrecherche.php
et resultatrecherche.php récupère les termes de recherche comme ça :
Là où je coinçais c'était pour trouver exactement comment écrire la RewriteRule, elles ne sont pas spécialement intuitives à écrire, surtout quand elles comportent des "/" au milieu :)
j'ai fini par trouver la réponse là :
http://www.addedbytes.com/for-beginners/url-rewriting-for-beginners/
Merci en tous cas :)
http://monsite.com/recherche/ce-que-l-utilisateur-a-tape-dans-le-champ-de-recherche
(c'est pour un client malade de SEO (cela dit je trouve ça très con, dans la mesure ou les bots de des moteurs ne vont pas eux faire de recherche, mais bon, on discute pas avec le client....))
Et en fait, j'ai trouvé comment faire :
mon formulaire appelle :
un dosearch.php dont le code est :
$search='';
$search.=preg_replace("/\ /","-",trim($_POST['recherche']));
header("Location: /recherche/".$search) ;
qui redirige donc vers /recherche/la-chaine-tapée-par-l'internaute
Pour interpréter cette url,
dans mon .htaccess j'ai des conditions de réécriture :
RewriteEngine On # RewriteBase / RewriteRule ^recherche/([A-Za-z0-9-]+)/?$ resultatrecherche.php
qui renvoient tout ce qui commence par "recherche/" vers resultatrecherche.php
et resultatrecherche.php récupère les termes de recherche comme ça :
//nettoyage du préfixe "/recherche/ "
$search = preg_replace("/\/recherche\//","",$_SERVER['REQUEST_URI'] );
// retransforme les "-" en espaces
$search = preg_replace("/-/"," ", $search );
//traiter la recherche
et à partir de là on peut traiter normalement...
Là où je coinçais c'était pour trouver exactement comment écrire la RewriteRule, elles ne sont pas spécialement intuitives à écrire, surtout quand elles comportent des "/" au milieu :)
j'ai fini par trouver la réponse là :
http://www.addedbytes.com/for-beginners/url-rewriting-for-beginners/
Merci en tous cas :)