Comment convertir les espaces %20 en tiret ?
5 messages • Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- Pascal Richard
- Nouveau WRInaute
- Messages: 12
- Inscription: Mar Sep 13, 2005 15:43
Comment convertir les espaces %20 en tiret ?
Bonjour,
J'ai regardé avec attention dans le forum avant de poster ce message.
Je suis en train de faire des tests rewriting et j'ai une url initiale de ce type :
http://www.site.com/dossier/index.php?a ... 0actualite
mon fichier htaccess
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^article-([0-9]+)-([a-zA-Z]+)\.html$ /dossier/index.php?act=comment&idnews=$1&titre=$2 [L]
mon url rewriting devrait être la suivante :
http://www.site.com/dossier/article-12- ... alite.html
Mais le problème, c'est l'espace qui est interprété par %20 dans le titre de ma news.
Comment, pour le titre, je peux convertir %20 (ou tout autre signe de ponctuation) en (tiret) - afin que je puisse obtenir une url propre ?
Merci par avance pour vos conseils
J'ai regardé avec attention dans le forum avant de poster ce message.
Je suis en train de faire des tests rewriting et j'ai une url initiale de ce type :
http://www.site.com/dossier/index.php?a ... 0actualite
mon fichier htaccess
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^article-([0-9]+)-([a-zA-Z]+)\.html$ /dossier/index.php?act=comment&idnews=$1&titre=$2 [L]
mon url rewriting devrait être la suivante :
http://www.site.com/dossier/article-12- ... alite.html
Mais le problème, c'est l'espace qui est interprété par %20 dans le titre de ma news.
Comment, pour le titre, je peux convertir %20 (ou tout autre signe de ponctuation) en (tiret) - afin que je puisse obtenir une url propre ?
Merci par avance pour vos conseils
- magic corp.
- WRInaute impliqué

- Messages: 425
- Inscription: Jeu Juin 17, 2004 9:56
Petite fonction perso, que j'utilise pour convertir du texte pour le mettre dans mes URL.
Elle vire les accent, met en minuscule et remplace tout les caractère non alphanumerique par des tirets.
- Code: Tout sélectionner
function tep_text_for_uri($text) {
$tofind = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ";
$replac = "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn";
$text = strtr($text,$tofind,$replac);
$text = strtolower($text);
$text = ereg_replace("[^a-zA-Z0-9]", "-", $text);
while (strstr($text, '--'))
$text = str_replace('--', '-', $text);
return(ereg_replace("-$", "", $text));
}
Elle vire les accent, met en minuscule et remplace tout les caractère non alphanumerique par des tirets.
- Pascal Richard
- Nouveau WRInaute
- Messages: 12
- Inscription: Mar Sep 13, 2005 15:43
Merci "magic corp" pour cette regex que j'ai donc placé dans le fichier function.
Elle fonctionne, c'est très efficace, la syntaxe est correcte maintenant les espaces sont remplacés par des tirets.
Mais je ne parviens pas à atteindre la page en question.
Cela vient peut-être du fait que la variable du titre à elle seule affiche les tirets de la regex. Ce qui pourrait gêner l'interprétation pour le rewriting... C'est curieux pourtant, à moins que le problème se situe dans le .htaccess
Pour le post de "mate", les espaces convertis en +, je ne suis pas certain que ce soit optimal pour le référencement... merci quand même je vais essayer de tester cela.
Si vous avez une idée en ce qui concerne la cible de la page...
Merci pour votre aide
Elle fonctionne, c'est très efficace, la syntaxe est correcte maintenant les espaces sont remplacés par des tirets.
Mais je ne parviens pas à atteindre la page en question.
Cela vient peut-être du fait que la variable du titre à elle seule affiche les tirets de la regex. Ce qui pourrait gêner l'interprétation pour le rewriting... C'est curieux pourtant, à moins que le problème se situe dans le .htaccess
Pour le post de "mate", les espaces convertis en +, je ne suis pas certain que ce soit optimal pour le référencement... merci quand même je vais essayer de tester cela.
Si vous avez une idée en ce qui concerne la cible de la page...
Merci pour votre aide
- Pascal Richard
- Nouveau WRInaute
- Messages: 12
- Inscription: Mar Sep 13, 2005 15:43
Bonjour,
Juste pour vous informer que tout fonctionne normalement après avoir fait une petite modification dans mon fichier htaccess.
J'ai donc remplacé :
très simplement par :
Encore merci pour votre aide
Bonne continuation à vous.
Juste pour vous informer que tout fonctionne normalement après avoir fait une petite modification dans mon fichier htaccess.
J'ai donc remplacé :
- Code: Tout sélectionner
RewriteRule ^article-([0-9]+)-([a-zA-Z]+)\.html$
très simplement par :
- Code: Tout sélectionner
RewriteRule ^article-([0-9]+)-(.*)\.html$
Encore merci pour votre aide
Bonne continuation à vous.
5 messages • Page 1 sur 1
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 :
- Tiret ou underscore ? Enfin la réponse !
- L'underscore bientôt un séparateur de mots pour Google ?
- Gmail Mobile : lire ses mails sur son mobile
- Plusieurs tests sur le référencement en cours sur WRI
- Pourquoi il ne faut pas utiliser d'underscore dans les URL
- Apprendre à utiliser Google Ad Manager
- Optimiser les URL pour le référencement
- Les informations de la Google Toolbar
- Prise en compte de la mise en page HTML par les moteurs de recherche
- Les moteurs tiennent compte des mots-clés dans les URL
- comment convertir une date en secondes ????
- Stream .ogg , comment faire pour convertir ?
- Le tiret gagne le match Tiret contre Underscore
- Qqun a til déjà réussi a convertir son phpbb2 vers phpbb3 si oui comment
- Comment faire afficher tous les espaces adsence ?
- domain name : tiret ou pas tiret
- Tiret or not tiret...vos suggestions ?
- Comment convertir un code HTML en code PHP ?
- Comment neutraliser les espaces les points slash dans l'url
- Tiret ou pas tiret
- convertir xml en gz
- Convertir datetime en time()
- Convertir .swf en .flv
- convertir un fichier video
- Convertir un forum XMB
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



le forum