Uno de los errores más comunes, y que más fallos feos dan en cualquier WordPress es cuando se copia-pega texto desde Microsoft Word. Es una práctica terrible, que no me canso de repetir que se evite.
Y es que si te ves «obligado» a crear un texto en MS Word, siempre puedes pegarlo en el editor HTML para que no herede las tags HTML que el propio Word genera. Incluso WordPress incorpora en el editor un icono para pegar desde Word, que hace precisamente esto.
Y es que no es una manía, pues hay ocasiones en que ese tonto y simple hecho de copiar y pegar desde Word a el editor Visual de WordPress puede destrozar incluso el diseño de tu web, así que no lo tomes a broma.
Pero si ni con esas los redactores de tu WordPress hacen caso siempre puedes recurrir a un pequeño código para eliminar sin piedad esas tags HTML de Word que nada bueno hacen.
Para ello solo tienes que incorporar estas líneas a tu plugin de funciones, o al fichero functions.php
del tema activo:
//Eliminar HTML de Word function limpiarHTML($html) { $html = ereg_replace("<(/)?(font|span|del|ins)[^>]*>","",$html); $html = ereg_replace("<([^>]*)(class|lang|style|size|face)=("[^"]*"|'[^']*'|[^>]+)([^>]*)>","<\1>",$html); $html = ereg_replace("<([^>]*)(class|lang|style|size|face)=("[^"]*"|'[^']*'|[^>]+)([^>]*)>","<\1>",$html); return $html }
Guardas los cambios y ya estarás libre de sorpresas inesperadas.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Interesante la recomendación. Pero, ¿en qué consisten las tags HTML? ¿Qué son?
Son las etiquetas de lenguaje de programación HTML, que Word usa propias, distintas a veces de las estándar en web, y esto provoca problemas de visualización del contenido. Es como formatos que no reconoce la web estándar por decirlo de algún modo. En el código están ejemplos de algunas de esas tags que incluye Word y que ese código anula.
Fernando,
He copiado y pegado en mi archivo de funciones personales y ocurre un error cuando intento activar el plugins en la última línea del método antes del «return». ¿Me puedes ayudar con esto?
me parece que el error esta en las comillas dobles, deberías probar con las comillas simples
me jodieron el blog con esto,,esto es una basura,remuevan este codigo de aqui,,y eviten accion legal contra ustedes.
Tengo una duda, como lo manda a llamar, no tiene algun hook, y tambien me causa error las dobles comillas, hacen un cierre en la declaracion:
ereg_replace(«]*)(class|lang|style|size|face)=(«[^»]*»|'[^’]*’|[^>]+)([^>]*)>»,»»,$html)
le he puesto la para indicar que es comilla doble dentro de una declaracion de cadena que lleva comilla doble:
$html = ereg_replace(«]*)(class|lang|style|size|face)=(«[^»]*»|'[^’]*’|[^>]+)([^>]*)>»,»»,$html);
también lo intento pero sigue fallando, lo solucionaste??? gracias
No, no lo he logrado hacer funcionar, yo creo (lamentablemente) que es un timo este codigo. Le hemos preguntado y ha visto nuestros comentarios Fernando pero aun asi no ha contestado. 🙁
Insisto en preguntar, despues de pegarlo en functions como se utiliza? cual es el hook?
El código introducido me da error. Habéis conseguido averiguar el fallo de alguna de las lineas?? gracias
Olviden este código. Búscando soluciones llegué al plugin «safe paste». Hasta el momento es lo que necesitaba.