Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Borrar código que sobra de los textarea en WordPress
#1
La tag HTML textarea es un modo estupendo de mostrar una lista larga de contenido sin que tu entrada se alargue hasta el infinito, pues restringe el contenido del texto contenido en la misma a una caja en la que tu defines el ancho y el largo de la misma. El problema es que añade códigos de sobra que seguro que no querrás mostrar.

O sea, que si introduces un textarea, digamos, así:
1 <textarea rows="10" cols="40">Aquí el texto larguísimo</textarea>

WordPress te muestra un truño de este estilo, con un montón de tags de párrafo (p), saltos de línea (br) y otros códigos HTML que no están en el texto original y que, por supuesto, no quieres que se vean …
textarea sucio

textarea sucio

Si quieres solucionarlo es sencillo, solo tienes que añadir esto a tu plugin de funciones o archivo functions.php de tu tema activo, guardas los cambios y ya no tendrás más códigos sobrantes en tus textarea:
01 //Limpiar los textarea de br,p, y demás basura
02 function clean_textarea2($matches) {
03 if ( is_array($matches) )
04 $text = $matches[1] . $matches[2] . "</textarea>";
05 else
06 $text = $matches;
07
08 $text = str_replace('<br />', '', $text);
09 $text = str_replace('<p>', "\n", $text);
10 $text = str_replace('</p>', '', $text);
11 $text = str_replace('“', '"', $text);
12 $text = str_replace('”', '"', $text);
13 $text = str_replace('‘', "'", $text);
14 $text = str_replace('’', "'", $text);
15 $text = str_replace('′', "'", $text);
16
17 return $text;
18 }
19 function clean_textarea($pee, $br = 1) {
20 if (strpos($pee, '<textarea') !== false)
21 $pee = preg_replace_callback('!(<textarea.*?>)(.*?)</textarea>!is', 'clean_textarea2', $pee );
22 return $pee;
23 }
24
25 add_filter('the_content', 'clean_textarea');

Obtienes un textarea limpito de porquería …
textarea limpio

textarea limpio

Si sigues Ayuda WordPress y te has fijado bien en el código en realidad lo que estamos haciendo es una sustitución de texto mediante str_replace, de manera que cuando encuentra un elemento indeseado lo sustituye por un espacio en blanco, algo similar a lo que ya hemos hecho para, por ejemplo, cambiar el saludo de WordPress sin modificar la traducción, quitar HTML de los comentarios, sustituir unas palabras por otras (precioso y útil para muchas cosas) y otros muchos trucos que ya hemos visto.

Otra posibilidad es desactivar el wpautop a voluntad, o probar con el plugin PS disable auto formatting, pero personalmente me parece mejor el método anterior, y funciona siempre.


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
Bombilla Temas Wordpress GRATIS calidad PREMIUM nicarao 9 252 03-10-2018, 05:44 PM
Último mensaje: DamianUzcanga
  100 Temas WordPress Gratis 2018 (Parte 5) Sprystate 1 100 07-09-2018, 01:10 PM
Último mensaje: York0x
  100 Temas WordPress Gratis 2018 (Parte 4) Sprystate 0 58 06-09-2018, 10:54 PM
Último mensaje: Sprystate
  100 Temas WordPress Gratis 2018 (Parte 3) Sprystate 0 69 06-09-2018, 10:19 PM
Último mensaje: Sprystate
  100 Temas WordPress Gratis 2018 (Parte 2) Sprystate 1 66 06-09-2018, 10:11 PM
Último mensaje: York0x
  100 Temas WordPress Gratis 2018 (Parte 1) Sprystate 0 66 06-09-2018, 09:29 PM
Último mensaje: Sprystate
  Agregar un anuncio de adsense desde el editor de temas de WordPress cmascreativo.ml 1 51 06-09-2018, 06:20 AM
Último mensaje: jcifuentes
  Top 3 plugins para build wordpress PabloA3 2 79 06-09-2018, 04:37 AM
Último mensaje: jcifuentes
  Mi experiencia con wordpress en producción yuma2009 7 262 03-09-2018, 10:34 PM
Último mensaje: yuma2009
  Como usar el plugin WordPress Popular Posts cmascreativo.ml 1 48 02-09-2018, 08:35 AM
Último mensaje: ReyNexo23



Usuarios navegando en este tema: 1 invitado(s)