Rewriter juste UN lien, faire savoir la fin de la chaine $
10 messages • Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
Rewriter juste UN lien, faire savoir la fin de la chaine $
Bonjour
Je possède un forum sur lequel j'essaye de Rewriter uniquement 1 Lien sous forme "showforum=1" en "Titre-f1.html"
Voici le code qui concerne la règle de réécriture
Ca se passe très bien... Seulement malheureusement cette règle réécrira aussi les lien de type " "showforum=10" "showforum=11" "showforum=12"...
Comment indiquer la fin de la chaine pour que seul "showforum=1" soit réécrit et pas les autres
Merci
Je possède un forum sur lequel j'essaye de Rewriter uniquement 1 Lien sous forme "showforum=1" en "Titre-f1.html"
Voici le code qui concerne la règle de réécriture
- Code: Tout sélectionner
$this->ipsclass->skin['_wrapper'] = preg_replace("'{$boardurl}\?showforum=1'","{$this->ipsclass->vars['board_url']}/Titre-f1.html",$this->ipsclass->skin['_wrapper']);
Ca se passe très bien... Seulement malheureusement cette règle réécrira aussi les lien de type " "showforum=10" "showforum=11" "showforum=12"...
Comment indiquer la fin de la chaine pour que seul "showforum=1" soit réécrit et pas les autres
Merci
en testant le caractere suivant (ici il ne doit pas etre un chiffre), c'est un peu retord mais ca marche
- Code: Tout sélectionner
$pattern = "#\?showforum=(1)?[^0-9]#i";
c'est la syntaxe PCRE qu'utilise Apache dans son moteur de réécriture mais les delimitateurs de fin sont differents ( # ou ' pour les PCRE )
... son probleme n'est pas la puisque les délimitateurs sont placés, il est dans la capture.
... son probleme n'est pas la puisque les délimitateurs sont placés, il est dans la capture.
J'ai teste et malheureusement les liens ne sont pas réécrits, ça n'y fait rienKOogar a écrit:en testant le caractere suivant (ici il ne doit pas etre un chiffre), c'est un peu retord mais ca marche
- Code: Tout sélectionner
$pattern = "#\?showforum=(1)?[^0-9]#i";
- Code: Tout sélectionner
<?php
$subjects = "*******?showforum=1*******";
$subjects = preg_replace("#\?showforum=(1)?[^0-9]#i","/Titre-f1.html",$subjects);
print_r("$subjects");
# AFFICHE
# *******/Titre-f1.html******
$subjects = "*******?showforum=10*******";
$subjects = preg_replace("#\?showforum=(1)?[^0-9]#i","/Titre-f1.html",$subjects);
print_r("$subjects");
# AFFICHE
# *******?showforum=10*******
?>
- Code: Tout sélectionner
$this->ipsclass->skin['_wrapper'] = preg_replace("'{$boardurl}\?showforum=(1)?[^0-9]'","{$this->ipsclass->vars['board_url']}/Titre-f1.html",$this->ipsclass->skin['_wrapper']);
chez moi ca marche, mais ce n'est pas ca ce que tu veux faire ?
En effet sans le #i les liens sont bien réécrits Merci à toi
sauf que le guillemet derrière n'est pas pris en compte à cause du "?" et on se retrouve avec un lien "http://***Titre.html title="
l'antislash ne résout pas le problème comme avec le "?" de juste avant dans le lien
l'antislash ne résout pas le problème comme avec le "?" de juste avant dans le lien
- Code: Tout sélectionner
$this->ipsclass->skin['_wrapper'] = preg_replace("'{$boardurl}\?showforum=1[^0-9]'","{$this->ipsclass->vars['board_url']}/Titre-f1.html",$this->ipsclass->skin['_wrapper']);
j'avais mis le "?" au cas ou tu chercherais d'autre valeur que 1( tu n'avais pas donner avant le contenu de la chaine de travail -> "http://***Titre.html title=" ), ca etant enleve le, ca ne changera rien au masque sauf ca devrait prendre en compte le guillement maintenant et matcher avec le masque.
Voilà je viens de terminer, j'ai réussi en ajouant un secon " derrière un antislash pour qu'il soit pris en compte sans faire bugger le code, ce qui fait à la fin: Titre-f1.html\""
J'espère que ça n'a aucune incidence négative.... sur le premier " qui n'était pas pris en compte juste avant.
Encore Merci KOogar
J'espère que ça n'a aucune incidence négative.... sur le premier " qui n'était pas pris en compte juste avant.
- Code: Tout sélectionner
$this->ipsclass->skin['_wrapper'] = preg_replace("'{$boardurl}\?showforum=1[^0-9]'","{$this->ipsclass->vars['board_url']}/Titre-f1.html\"",$this->ipsclass->skin['_wrapper']);
Encore Merci KOogar
10 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 :
Consultez la description détaillée des produits ou services de Google suivants : Googlebot, YouTube, Google Space
- Tester la validité d'un lien
Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs). - Calculer le ratio de liens profonds
Cet outil vous permet de calculer le taux de liens profonds vers un site web. Un lien profond est un lien qui ne pointe pas vers la page d'accueil mais au contraire vers une page interne du site. Les sites dont l'essentiel du référencement vient de leurs inscriptions dans des annuaires ont un taux de liens profonds faible ; à l'inverse, les sites de référence ont souvent un taux de liens profonds plus important, signe que leur contenu a suscité de nombreux liens spontanés. - Transformer des textes non cliquables 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





le forum