Redirections sous Wordpress : création d'expressions régulières
Fermé
AurelieLi
Messages postés
80
Date d'inscription
vendredi 15 avril 2016
Statut
Membre
Dernière intervention
20 juillet 2020
-
17 déc. 2018 à 22:37
AurelieLi Messages postés 80 Date d'inscription vendredi 15 avril 2016 Statut Membre Dernière intervention 20 juillet 2020 - 26 déc. 2018 à 17:58
AurelieLi Messages postés 80 Date d'inscription vendredi 15 avril 2016 Statut Membre Dernière intervention 20 juillet 2020 - 26 déc. 2018 à 17:58
A voir également:
- Redirections sous Wordpress : création d'expressions régulières
- Wordpress download - Télécharger - Blog & CMS
- Modifier un site wordpress sans supprimer celui déjà existant - Forum Wordpress
- Safari ne peut pas ouvrir la page car il y a eu trop de redirections ✓ - Forum MacOS
- Aspirer site wordpress ✓ - Forum Webmastering
- Safari ne peut pas ouvrir la page - Forum MacOS
1 réponse
bartaba31
Messages postés
33
Date d'inscription
mardi 18 décembre 2018
Statut
Membre
Dernière intervention
21 décembre 2018
11
18 déc. 2018 à 11:22
18 déc. 2018 à 11:22
Hello,
En gros ton expression :
/(\d{4})/(\d{2})/(.*)\.html
\d c'est tous les nombres
{4} c'est 4 fois
Et les parenthèses permettent de le récupérer dans la variable $1
Donc si tu veux récupérer ça :
/article-dark-shadows-embarquez-pour-collinswood-105373457.html
/(\w+)/\.html
En ça :
/article-dark-shadows-embarquez-pour-collinswood-105373457/
/$1/
Un site qui peux t'aider à tester tes expressions : https://regex101.com/
En gros ton expression :
/(\d{4})/(\d{2})/(.*)\.html
\d c'est tous les nombres
{4} c'est 4 fois
Et les parenthèses permettent de le récupérer dans la variable $1
Donc si tu veux récupérer ça :
/article-dark-shadows-embarquez-pour-collinswood-105373457.html
/(\w+)/\.html
En ça :
/article-dark-shadows-embarquez-pour-collinswood-105373457/
/$1/
Un site qui peux t'aider à tester tes expressions : https://regex101.com/
18 déc. 2018 à 14:18
Merci de cette réponse.
C'est fou que ce soit si compliqué sur le web de trouver l'explication de base pour tout ça, j'ai vraiment beaucoup de mal à comprendre comment bâtir ces expressions... J'ai déjà créé dans les 150 redirections au cas par cas mais je crois que j'avais migré 1600 articles, je n'ai pas fini ;-)
Quand je mets /(\w+)/\.html sous https://regex101.com/ il me dit donc : "Your pattern contains one or more errors, please see the explanation section above. / An unescaped delimiter must be escaped with a backslash (\) / An unescaped delimiter must be escaped with a backslash (\)..."
Je continue désespérément de chercher un site qui explique les bases de tout ça...
Bon après-midi !
18 déc. 2018 à 14:31
En fait sur le site, les / ne sont pas interprété. Essaie avec \/(\w|\-)+\.html
Tu peux voir sur le site que le / de départ est déja en tout début d'expression.
En fait le \ permet d'échapper le caractère qui suit.
Si tu met / alors le système va croire que l'expression commence ici
Si tu met \/ alors le système va comprendre que tu recherches un /
Le \w permet de chercher un caractère alphabétique
Le \- permet de chercher un tiret
Donc le \w|\- permet de chercher une lettre ou un tiret dans le texte.
Le + permet de dire "Une ou plusieurs fois"
Enfin les parenthèses permettent de récupérer ce texte dans la valeur $1
L'expression en la lisant est donc : Recherche tout ce qui commence par une lettre ou un tiret, une ou plusieurs fois, puis un point puis html
On met \. pour "échapper" le point car en expression régulière celui-ci désigne n'importe quel caractère.
A ta dispo si tu as des questions
19 déc. 2018 à 12:02
Merci, je fais des tests. J'en ai cauchemardé cette nuit de toutes ces erreurs ;-)
Ton message d'hier m'a permis de corriger l'expression qui ne fonctionnait plus mais m'avait dépannée en 2016.
Fonctionne bien désormais (c'était le "cas de figure 1") :
/(\d{4})/(\d{2})/(.*)\.html
/$1-$2-$3\/
===> Youhou !
J'ai aussi indiqué :
\/(\w|\-)+\.html
/$1/
===> J'ai l'impression que la règle a été utilisée une fois. Je me rends compte que je devrais peut-être mettre /$1\/ plutôt...
J'espère que cela n'a rien à voir mais l'accès à mon blog et son back-office ont été moins rapides après ça.
Je surveille si les redirections sont bien employées par le plugin et s'il reste des soucis. Si tout finit par s'arranger, je viendrais clore la discussion.
Bonne journée
26 déc. 2018 à 17:58
Eureka, tout fonctionne !
Je teste, pour finaliser, une 3e regex :
url source: \/article-(.*)-(d*).html
url cible: \/$1\/
(Pour les très vieux articles over-blog, qui avaient une structure différente).
Bonnes fêtes !