déc
29
WordPress et ses guillemets
Catégorie: Wordpress | 1 commentaire | 608 lectures
Vous l'avez sans doute remarqué, WordPress convertit désormais les guillemets traditionnels (comprenez ceux accessibles directement sur le clavier) par des beaux chevrons français. Hoho, c'est joli. Pas seulement. C'est surtout plus respectueux de notre langue française.
WordPress prend des allures de Word et ses automatismes insupportables. Certes, c'est bien pratique mais le résultat est parfois inverse à l'idée de base notamment tout ceux qui ont eu la mauvaise bonne idée de faire les choses à moitié. C'est-à-dire ceux qui utilisent les guillemets anglais avec leur espace en interne. Que se passe-t-il ? La fonction de conversion rencontre un premier guillemet anglais et le change par un chevron français ouvrant suivi d'un espace insécable. Ensuite, il détecte le second guillemet anglais (censé fermer la citation) mais la présence de l'espace le trompe et il en fait un chevron français ouvrant suivi d'un espace insécable. Toute la difficulté du script réside dans l'absence de distinction entre un guillemet anglais d'entrée et de fin.

Capture Lumieredelune.com
Les automatismes c'est mal. Non seulement c'est bête comme chou mais bien souvent il faut passer derrière pour éviter les gourdes à l'insu de notre plein gré. Et puis ça généralise tout. Forcément, on ne lui demande pas d'être intelligent. Quoique... ce serait bien si les programmeurs pouvaient lui ajouter des exceptions. Par exemple, les guillemets anglais sont acceptés notamment en citation de second niveau ou pou les citations en langue anglaise. Ils ont aussi leur place dans un langage de programmation. Le remplacement automatique rend le code source erroné et inutilisable par les visiteurs [²].

Capture Abricocotier.fr
Pour se débarrasser de cette sale manie, il faut ajouter quelques lignes de code dans la page functions.php. Ces lignes empêchent les changements automatiques des guillemets dans les titres, le contenu et les commentaires.
1 2 3 4 5
remove_filter('the_title', 'wptexturize');
remove_filter('the_content', 'wptexturize');
remove_filter('comment_text', 'wptexturize');
Vous savez ce qu'il vous reste à faire pour éviter le massacre.
[¹] L'important d'utiliser des outils pour son blog: « Du code dans ses billets »

Il y a aussi the_excerpt (si je ne me suis pas trompé dans l'orthographe ^^).