Comment personnaliser les liens dans wordpress sans RewriteRules Apache
Je voulais utiliser ce type d’URL dans WordPress :
/?p=%post_id%/%year%/%monthnum%/%day%/%postname%/
Je vais donc dans la partie d’admin de WordPress :
http://nicolas.ledez.free.fr/blog/monadminamoi/options-permalink.php
Et je met la bonne syntaxe dans « Custom structure » puis clique sur : « Update Permalink Structure »
Boum « 500 Internal Server Error ».
Je trouve pourquoi et supprime le fichier .htaccess (free.fr ne supporte pas les rewrite rules d’Apache dans un fichier .htaccess) je recharge ma page :
Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 1 in /mnt/127/sdb/5/6/nicolas.ledez/blog/wp-includes/classes.php on line 1554
Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 1 in /mnt/127/sdb/5/6/nicolas.ledez/blog/wp-includes/classes.php on line 1555
Comme je n’ai changé que les permalink, et que je n’arrive plus à me connecter non plus à la partie admin, je cherche dans les options contenus dans la base de donnée. Je trouve, donc j’essaye ça :
UPDATE `wp_options` SET `option_value` = ‘/?p=%post_id%/%year%/%monthnum%/%day%/%postname%/’ WHERE `option_name` =’permalink_structure’ AND `blog_id` =0;
Encore l’erreur PHP !!!
Grrr, Ok donc je passe en mode neuneu :
Je teste avec :
/%post_id%
Ok
/?p=%post_id%
Ok
/?p=%post_id%/%year%/%monthnum%/%day%/%postname%/
Ok !!!!! Yeessss !!!!!
Pourquoi ??? Aucune idée, par contre ça marche…
J’ai essayé en mettant directement la syntaxe complète, mais ça ne marche pas non plus…
Correctif : ça à l’air de mieux marcher avec :
/index.php?p=%post_id%/%year%/%monthnum%/%day%/%postname%/
Correctif 2 : ça marche encore mieux avec ça :
/index.php/%post_id%/%year%/%monthnum%/%day%/%postname%/
Trouvé sur : http://jeanjerome.free.fr/?p=10