Depuis WordPress 2.7 (au moins), il existe un bug dans la fonction htmlspecialchars_decode qui se traduit par le message d’errreur suivant :

Warning: htmlspecialchars_decode() expects parameter 1 to be string,
NULL given in xxx/wp-includes/compat.php on line 105



Pour reproduire ce bug, il suffit de créer un nouvel article et en mode HTML saisir le code suivant :

<pre escaped="true">Attention ca va planter &gt;</pre>


Publier l’article et l’afficher….


Je me suis rendu compte de ce bug suite à l’utilisation de la balise PRE pour afficher du code avec WP-syntax (cf. ici)



Ce bug est connu et référencé :

http://core.trac.wordpress.org/ticket/9090

http://wordpress.org/support/topic/242653




La solution consiste à éditer le fichier compat.php présent dans wp-include pour changer le code à la ligne 102 et 114 :


Changer à la ligne 102 :

function htmlspecialchars_decode( $str, $quote_style = ENT_COMPAT )

Pour :

function htmlspecialchars_decode( $string, $quote_style = ENT_COMPAT )

 


Et à la ligne 114 :

return wp_specialchars_decode( $str, $quote_style );

Pour :

return wp_specialchars_decode( $string, $quote_style );

Cette correction devrait être embarqué dans WordPress 2.7.2 (et dans 2.8.0 ?) et elle n’est évidemment par supportée.



PS :  sur ce site une autre correction possible.
 

Les commentaires sont fermés.