August 1st, 2008 @ 2:42pm | njames | Categories WordPress | No Comments »
Il y a un comportement automatique de WordPress qui m'agace beaucoup, si le texte de votre billet contient deux tirets (double dash) consécutifs, WordPress les transforme en 1 tiret long – s'ils ne sont pas entourés d'espaces, et un tiret long — s'il le sont.
C'est particulièrement agacant, surtout quand on publie des fragments de code...
J'ai beau être de nature plutôt ouverte, je ne comprends pas ce qui à pu motiver les développeurs à intégrer cela.

Comment désactiver se comportement?
Une solution est d'écrire l'entité - à la place de chaque tiret, mais ça ne me convient pas du tout. Peut-être une solution ici, mais datant de fin 2006, elle doit être adapter à WordPress2.6.

En fait, la solution est dans ce billet du blog LinuxCrew:

To disable this you should edit /wp-includes/formatting.php:

  • to disable only replacement -- into —, just remove '--' and ' -- ' from the following line:
    $static_characters = array_merge(array('---', ' -- ', '--', 'xn–', '...', '``', '\'s', '\'\'', ' (tm)'), $cockney);
    and remove second and third elements from: $static_replacements = array_merge(...) line.
  • to disable any characters replacements made by wordpress you can comment the following lines:
    $curl = str_replace($static_characters, $static_replacements, $curl);
    $curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
    In other words, after commenting they should look like:
    //$curl = str_replace($static_characters, $static_replacements, $curl);
    //$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);

July 30th, 2008 @ 11:33am | njames | Categories WordPress | No Comments »
  • acronym: Permet de formater le contenu des billets avec des balises <acronym> pour une liste d'acronymes prédéfinis. Il est dit compatible jusque WordPress2.5 (le 2008-07-30) sur wordpress.org, mais apparemment ce plugin fonctionne très bien pour WordPress2.6. Voir aussi la webpage de l'auteur. Un onglet Acronyms est disponible dans le panel Manage de l'interface d'administration pour gérer les acronymes. Il y a aussi le plugin ubernyms, mais il est nettement plus élaboré, permet de faire du remplacement de chaine de caractère prédéfinie.
  • bib2html: Ce plugin permet d'intégrer dans un billet WordPress une référence bibliographique par un BibTeX, et permet d'afficher le BibTeX en un clic sur la référence (par javascript). Il est très pratique car on peut donner un BibTeX classique, mais ce plugin accepte aussi un lien vers citeulike ou BibSonomy. Il est dit compatible jusque WordPress2.3 (le 2008-07-30) sur wordpress.org, mais apparemment ce plugin fonctionne très bien pour WordPress2.6. Voir aussi la webpage de l'auteur.
  • syntaxHighlighter: permet de publier des fragments de code dans un billet, affiche les numéros de ligne et accepte de nombreux langage pour la coloration syntaxique.
  • WP-Syntax: également un syntax highlighter mais supporte le langage GeSHi, supporte un plus grand nombre de langage que le plugin syntaxHightlighter.
  • del.ico.us for WordPress: permet d'afficher les derniers posts d'un compte del.ico.us. (voir la homepage du plugin).
  • exec-php: pour imbriquer du PHP dans le contenu d'un post.
  • PJW MIME config: pour ajouter facilement via un plugin, des MIME types à la liste des MIME autorisés lors d'un upload de fichier (par exemple text/xml n'est pas autorisé par défaut).
Quelque chose que j'aimerai bien pouvoir faire aussi, c'est ajouter des boutons dans TinyMCE qui est l'éditeur HTML de WordPress, notamment:
  • un bouton pour rendre des chaines de caractère insécable, ça peut être très pratique pour les commandes UNIX qui ne sont pas très longues (et eventuellement encapsulées dans une balise HTML <code>).
On peut écrire des custom buttons en passant par des plugins pour MCE Editor. Il y a également un plugin TinyMCE Advanced pour WordPress, peut-être à investiguer. NOTES:
  • ne pas oublier de désactiver la notification automatique de weblogs linkés dans les posts (dans Setting > Discussion).


 Valid XHTML 1.0 Transitional Valid CSS! WordPress