Fils RSS pour les
Articles
Commentaires

Lorsque je veux publier le code source de fichiers, j'utilise la version 3.5 du plugin iG:Syntax Hiliter. Tout serait pour le mieux dans le meilleur de monde si les sources à visualiser ne contiennent pas de code correspondant à un code de smiley. Comme dans mon cas, j'utilise le plugin More Smilies configuré pour utiliser le jeu de smilies Kopete, les surprises sont nombreuses:

  • les :db se transforment en :db,
  • les :primary en :primary

et ainsi de suite...

with_smiley2.jpg

Facile me direz-vous: il suffit de remplacer le caractère : par son équivalent en entité ascii : ... voici ce que ça donne:

with_entity.jpg

Il faudrait pouvoir désactiver temporairement les smilies pour l'article courant. Malheureusement activer ou désactiver les smilies est une option globale et couvre l'entièreté du blog.

Après une recherche sur le net, j'ai trouvé un article sur pure-essence.net qui donne le moyen d'y parvenir.

la méthode est simple et est basée sur

  • l'utilisation d'un champ personnalisé disable_smiley à mettre à true

champ_disable_smiley.jpg

  • la modification la fonction convert_smilies du fichier /wp-includes/functions-formatting.php pour tester la présence du champ personnalisé:
  1. function convert_smilies($text) {
  2.     global $wp_smiliessearch, $wp_smiliesreplace;
  3.     $output = '';
  4.         if (get_settings('use_smilies')) {

  1. function convert_smilies($text) {
  2.     global $wp_smiliessearch, $wp_smiliesreplace, $post;
  3.     $output = '';
  4.     $smileykey = get_post_meta($post->ID, "disable_smiley", TRUE);
  5.         if (get_settings('use_smilies') && $smileykey != 'true') {

voici le résultat:

 

without_smiley.jpg

c'est bien ce qui était recherché!

(i)ATTENTION(i)
Avec la dernière version du plugin more-smilies (2.1), c'est le code du plugin qui affiche les smilies et c'est le fichier /plugin/more-smilies/more-smilies.php qu'il faut modifier!

  1. /**
  2.      * convert_smilies from WP core
  3.      * Needs improvement
  4.      */
  5.     function convert_smilies($text) {
  6.         $output = '';
  7.         if ($this->use_smilies) {
  8.             # capture all plus tags

qu'il faut modifier en:

  1. /**
  2.      * convert_smilies from WP core
  3.      * Needs improvement
  4.      */
  5.     function convert_smilies($text) {
  6.         global $post;
  7.         $output = '';
  8.         $smileykey = get_post_meta($post->ID, "disable_smiley", TRUE);
  9.         if (($this->use_smilies) && $smileykey != 'true'){
  10.             # capture all plus tags

 


 

Tags: , , , ,

Les commentaires sont fermés.