[Solución] Validar código de AddThis con W3C HTML Validation

Hace poco estaba haciendo la validación del W3C para la web y encontré un problema de validación a causa de algunos botones de los medios de comunicación sociales añadidos a la página web. Estos botones se agregan utilizando los botones AddThis famosos y ampliamente utilizado para compartir nuestras noticias. En la validación de que estaba recibiendo siguientes errores –

there is no attribute «fb:like:layout»

there is no attribute «g:plusone:size»

Algunas personas recomiendan usar iframe código en la inserción como una alternativa a esto, pero el hecho es que a veces no es posible. Al parecer, el atributo allowtransparency que se utiliza en el iframe tampoco se valida con éxito en el validador del W3C. Sin embargo, un sencillo truco de JavaScript puede ayudar a pasar estos botones del validador del W3C. El código del botón AddThis parece –

class=»addthis_toolbox addthis_default_style»…

Vamos a codificar el código utilizando el decodificador libre Unescape en línea y el codificador. Para codificar el código del botón AddThis. Una vez hecho se verá algo así:

%3C%64%69%76%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%74%6F%6F%6C%62%6F%78%20%61%64%64%74%68%69%73%5F%64%65%66%61%75%6C%74%5F%73%74%79%6C%65%20%22%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%62%75%74%74%6F%6E%5F%66%61%63%65%62%6F%6F%6B%5F%6C%69%6B%65%22%20%20%66%62%3A%6C%69%6B%65%3A%77%69%64%74%68%3D%22%31%32%30%22%20%66%62%3A%6C%69%6B%65%3A%6C%61%79%6F%75%74%3D%22%62%75%74%74%6F%6E%5F%63%6F%75%6E%74%22%3E%3C%2F%61%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%62%75%74%74%6F%6E%5F%74%77%65%65%74%22%3E%3C%2F%61%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%62%75%74%74%6F%6E%5F%67%6F%6F%67%6C%65%5F%70%6C%75%73%6F%6E%65%22%20%67%3A%70%6C%75%73%6F%6E%65%3A%73%69%7A%65%3D%22%6D%65%64%69%75%6D%22%3E%3C%2F%61%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%63%6F%75%6E%74%65%72%20%61%64%64%74%68%69%73%5F%70%69%6C%6C%5F%73%74%79%6C%65%22%3E%3C%2F%61%3E%0A%3C%2F%64%69%76%3E

Ahora bien, para hacer que los botones se vean correctamente en la página web, es necesario unescape () la cadena codificada. A continuación, basta con utilizar el document.write () de JavaScript y ya está. Su archivo de origen debe contener el código JavaScript como:

script type=»text/javascript»>document.write(unescape(‘%3C%64%69%76%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%74%6F%6F%6C%62%6F%78%20%61%64%64%74%68%69%73%5F%64%65%66%61%75%6C%74%5F%73%74%79%6C%65%20%22%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%62%75%74%74%6F%6E%5F%66%61%63%65%62%6F%6F%6B%5F%6C%69%6B%65%22%20%20%66%62%3A%6C%69%6B%65%3A%77%69%64%74%68%3D%22%31%32%30%22%20%66%62%3A%6C%69%6B%65%3A%6C%61%79%6F%75%74%3D%22%62%75%74%74%6F%6E%5F%63%6F%75%6E%74%22%3E%3C%2F%61%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%62%75%74%74%6F%6E%5F%74%77%65%65%74%22%3E%3C%2F%61%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%62%75%74%74%6F%6E%5F%67%6F%6F%67%6C%65%5F%70%6C%75%73%6F%6E%65%22%20%67%3A%70%6C%75%73%6F%6E%65%3A%73%69%7A%65%3D%22%6D%65%64%69%75%6D%22%3E%3C%2F%61%3E%0A%3C%61%20%63%6C%61%73%73%3D%22%61%64%64%74%68%69%73%5F%63%6F%75%6E%74%65%72%20%61%64%64%74%68%69%73%5F%70%69%6C%6C%5F%73%74%79%6C%65%22%3E%3C%2F%61%3E%0A%3C%2F%64%69%76%3E’));

Espero que os sirva de ayuda 🙂

Victor

Me llamo Víctor López y nací en Zaragoza el 16 de Diciembre de 1984.Esta web la monté exactamente el 23 de Mayo del 2005 con la idea de publicar mis experiencias personales, cosas curiosas que veía a mi alrededor (tanto en Internet como en mi vida) y el poder tener mi propio espacio web en la red. Si quieres puedes ver las estadísticas del año 2010.Ingeniero Superior en informática (terminé la carrera en 2006), desde pequeño ya estaba totalmente convencido a lo que me iba a dedicar en mi vida, la informática. Quizás porque mi padre tenía un Spectrum y me pegaba horas trasteándolo o quizás porque desde pequeño siempre me han gustado “los chismes”. El caso es que empezó a gustarme este mundo de la informática.Profesionalmente soy Analista-Programador Senior en PHP y me dedico al análisis, desarrollo y programación de páginas web y al desarrollo de aplicaciones (principalmente web en PHP, empecé a programar en el año 2002 en PHP), creación, alojamiento, optimización (diseño, SEO, publicidad), puesta en marcha de webs y potenciándolas.Actualmente soy Lead Integration Engineer en EnGrande.com – BudGetPlaces.com, además de formar parte de Homein.com (anteriormente he trabajado en Atrapalo.com, Camyna.com y Sync.es).Socio fundador de Coompy.es Alquilar habitación – Compartir piso.Partidario del software libre y usuario asiduo de Ubuntu y CentOS. Fui usuario de Mac pero ahora ya he vuelto al buen camino con Linux (Ubuntu distro).Sobre mi filosofía de vida, te invito a que leas este artículo: “Tu eres el resultado de ti mismo“. Si lo lees, entenderás mi punto de vista de la vida.Intento estar lo más lejos posible de la monotonía y considero mi trabajo como un hobby, me gusta aprender cosas nuevas cada día y afrontar nuevas metas y proyectos.En mi tiempo libre me gusta practicar cualquier deporte (el fútbol especialmente), me gusta competir (sea el ámbito que sea), los coches, las buenas películas/series y viajar.Personalmente considero que lo primero en esta vida es la salud y las personas, dejando atrás otras cosas, como puede ser el dinero, la fama y todas esas chorradas, que cuanto más las tienen las personas, más las quieren y menos les importan los demás. Y creo que el respeto y educación es fundamental.Pues eso es todo, un breve resumen de mi persona.Si te quieres anunciar en mi blog, contactar conmigo ya sea para la contratación de mis servicios, ofertas, agradecimientos, quejas, insultos, amenazas y/o similares, puedes mandarme un correo cuando quieras.Mi correo personal de contacto es: http://helektron.com/contacto-personal/Puedes seguir este blog por Google Plus, Facebook, Twitter, RSS y por mail.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *