En caso de que quieras tener <img>
en su contenido, pero no hacer que obtengan “Auto P’d” como le gusta hacer a WordPress.
ejemplo de problema:
blah blah blah
<img src="https://css-tricks.com/snippets/wordpress/remove-paragraph-tags-from-around-images/monkey.jpg">
blah blah blah
se convierte en:
<p>blah blah blah</p>
<p><img src="https://css-tricks.com/snippets/wordpress/remove-paragraph-tags-from-around-images/monkey.jpg"></p>
<p>blah blah blah</p>
Podemos arreglarlo con esto:
function filter_ptags_on_images($content){
return preg_replace('/<p>s*(<a .*>)?s*(<img .* />)s*(</a>)?s*</p>/iU', '123', $content);
}
add_filter('the_content', 'filter_ptags_on_images');
Tenga mucho cuidado si copia y pega lo anterior. Tuve que poner un espacio de ancho cero después de la apertura en la función preg_replace para resolver un problema de representación. Al copiar y pegar, definitivamente deberá eliminar el espacio de ancho cero.
Para su archivo `functions.php`, o consulte la URL de referencia para un complemento. Con esto en su lugar, obtenemos:
<p>blah blah blah</p>
<img src="https://css-tricks.com/snippets/wordpress/remove-paragraph-tags-from-around-images/monkey.jpg">
<p>blah blah blah</p>
… lo que significa que cosas como hacer flotar las imágenes será mucho más fácil.