[WordPress] Supprimer les attributs de largeur et hauteur sur les images (#rwd)

WordPress vous permet de choisir plusieurs tailles d’images et même d’en ajouter. Mais le gros hic de la plateforme, c’est qu’elle ajouter systématiquement des attributs de tailles (width et height) en dur dans les billets. Je ne te fais pas un dessin jeune webdesigner, ça va poser un problème avec la grande mode du responsive webdesign.

J’ai d’abord pensé à supprimer ces attributs en base (ce que j’ai d’ailleurs fait comme un idiot), mais les nouveaux billets sont à nouveau pollués par ces attributs.

Voici donc un hack qui permet de supprimer la hauteur et la largeur des images à la volée dans les billets de WordPress. Il faut l’insérer dans le fichier functions.php de votre thème.

function supprimer_hauteur_et_largeur_image($content) {
   $content= preg_replace( '/(height|width)="d*"s/', "", $content);
   return $content;
}

add_filter( 'the_content', 'supprimer_hauteur_et_largeur_image' );

Bien entendu, cette opération doit avoir un petit coût lors du rendu des billets. Mais avec un bon plugin de cache, plus de problème.

Nota: on me souffle dans l’oreillette qu’il serait possible de supprimer ces tailles lors de l’insertion du code HTML de l’image dans l’éditeur. Dans ce cas, il n’y a plus de coût supplémentaire mais c’est irréversible. Il faut alors utiliser le filtre image_send_to_editor en lieu et place de the_content.

★★★★★

A lire également