Un widget es conocido en otros entornos como Gadgets, Gizmos o Wizbangs y permite personalizar un blog basado en wordpress sin tener ningún conocimiento de html y usando mecanismos de drag and drop.
Este mismo concepto es usado en muchos otros entornos para referise a trozos de software que implementan funcionalidades frecuentemente y que ofrecen información visual. En Wikipedia hay un artículo donde se puede conocer más de este tema, yo referencio el primer párrafo.
”En informática, un widget es una pequeña aplicación o programa, usualmente presentado en archivos o ficheros pequeños que son ejecutados por un motor de widgets o Widget Engine. Entre sus objetivos están los de dar fácil acceso a funciones frecuentemente usadas y proveer de información visual. Sin embargo los widgets pueden hacer todo lo que la imaginación desee e interactuar con servicios e información distribuida en Internet; pueden ser vistosos relojes en pantalla, notas, calculadoras, calendarios, agendas, juegos, ventanas con información del clima en su ciudad, etcétera.”
Los widget en general pueden ser programados en diferentes lenguajes, en particular para internet se pueden programar en javascript, como componentes basados en flash u otros.
Aplicaciones como meebo, adSense u otros ofrecen trozos de código que permiten desplegar contenido. Portales como widgetbox se pueden descargar cientos de widget para utilizar en las páginas web, wikies, blogs, etc. Y los nuevos “Desktop” virtuales o “págians personalizadas” como iGoogle se basan en el uso de widget que permiten al usuario configurar lo que quiere ver en su página personal y como lo quiere ver. O los widget para los servicios de mensajería como yahoo o msn live que permiten agregar funcionalidades de terceros a estas aplicaciones.
El siguiente código es un ejemplo de widget de meebo
<!-- Beginning of meebo me widget code.
Want to talk with visitors on your page?
Go to http://www.meebome.com/ and get your widget! -->
<embed src="http://widget.meebo.com/mm.swf?luSGZzLDaL" type="application/x-shockwave-flash" wmode="transparent" width="160" height="250"></embed>
El siguiente es un ejemplo de código de un widget de un reloj:
<script src="http://www.clock-desktop.com/js/embed.js"></script>
<script type="text/javascript" language="JavaScript">obj=new Object;
obj.clockfile="http://www.clock-desktop.com/js-clock/cowboy.7art";
obj.width=152;obj.height=112;obj.wmode="transparent";showClock(obj);</script>
Con solo copiar este código dentro de nuestra página web, o incorporandolo dentro de la semántica de un wiki (Ej en dokiwiki, se coloca dentro de las etiquetas <html>codigo widget</html>) , o dentro de un sidebar de un blog.
En algunos casos, y dependiendo del tipo de widget, un widget puede causar retardos en la carga de una página.