WordPress est un CMS massivement utilisé permettant aux novices comme aux confirmés de pouvoir créer un blog.

Les microdata sont des arguments HTML5 utilisés afin d’offrir au texte une sémantique compréhensible par les moteurs de recherches, voir mon article des nouveautés HTML5.

Le soucis vient de WordPress qui refuse ces nouveaux arguments en voyant cela comme une erreur de balisage HTML et lors de l’enregistrement d’un article, corrige le texte HTML.

Il existe bien une case à cocher: « WordPress doit automatiquement corriger les balises XHTML non valides », mais WordPress continu la correction..

Modifier le kses.php

La solution est de modifier le fichier nommé kses.php situé dans wp-includes.
La modification est de la sorte:
'p' => array(
'class' => true,
'align' => true,
'dir' => true,
'lang' => true,
'style' => true,
'xml:lang' => true,
),

en
'p' => array(
'class' => true,
'align' => true,
'dir' => true,
'lang' => true,
'style' => true,
'xml:lang' => true,
'itemscope' => true,
),

Il faut ajouter la ligne 'itemscope' => true, 'itemtype' => true,'itemid' => true,'itemref' => true, en dessous des balises de structure de type bloc: <div>, <aside>, <caption>, <nav>, <article> et <section>

Puis d’ajouter la ligne 'itemscope' => true, en dessous des balises de type inline: <a>, <p>, <span>, <img>, <abbr>, <cite>, <quote>….

On sauvegarde le fichier kses.php sur le serveur, ainsi WordPress ne modifiera plus les arguments HTML microdata.

Voila, bon dév a tous !