web-dev-qa-db-fra.com

Supprimer les p-tags inutiles (Pas tous les p)

J'ai supprimé wpautop de mon thème:

function disable_linebreaks($content) {
       remove_filter ('the_content','wpautop');
       return $content;
}
add_filter('the_content','disable_linebreaks',1);

Mais maintenant, lors du basculement entre HTML et Editeur, TOUS les p-tags disparaissent, même ceux que j'ai moi-même codés.

Ce que je veux, c'est empêcher que Wordpress ajoute le <p></p> - Code vide. En gros, je suis content de wpautop, c'est juste que parfois c'est trop (par exemple autour des images. Il y a toujours un p vide avant chaque image).

1
Sebastian Starke

Si ce que vous voulez est vraiment seulement

empêcher Wordpress d'ajouter un <p></p> vide

et vous seriez heureux de supprimer ceux après la récupération post de la base de données, puis

function wpse108194_remove_empty_paragraphs( $content ) {
   $content = preg_replace( '#<p>\s*</p>#', '', $content );
   return $content;
}
add_filter( 'the_content', 'wpse108194_remove_empty_paragraphs', 11 );

ça ira.

2
Johannes Pille