Si sueles mostrar fragmentos de código en tu blog, seguro que conoces lo que puede suponer para los desarrolladores el formateo automático de WordPress. La solución es simple: usa un shortcode para quitar las funciones de formato automático en ciertas partes del texto.
function my_formatter($content) {
$new_content = '';
$pattern_full = '{([raw].*?[/raw])}is';
$pattern_contents = '{[raw](.*?)[/raw]}is';
$pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);
foreach ($pieces as $piece) {
if (preg_match($pattern_contents, $piece, $matches)) {
$new_content .= $matches[1];
} else {
$new_content .= wptexturize(wpautop($piece));
}
}
return $new_content;
remove_filter('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');
add_filter('the_content', 'my_formatter', 99);
Uso:
[ raw ]Este trozo de texto no será formateado automáticamente por WP.[ /raw ] //eliminar los espacios blancos del shortcode
Fuente: Foro de soporte de WordPress via Cats who Code.
Hola!
Tenés idea si existe alguna forma de eliminar la etiqueta
que automáticamente inserta wordpress? Porque no puedo ejecutar correctamente los shortcuts por esas etiquetas que pone. Y poner ese código en el archivo functions tampoco parece servir, porque aparecen las etiquetasantes del [ raw]Hola Fede,
hemos actualizado el código (a ver si ahora te va mejor). No debería ponerte ninguna etiqueta code.
Cuéntanos si ya te funciona.