<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nosolocodigo - Desarrollo web con Joomla, Wordpress y software libre &#187; APIs</title>
	<atom:link href="http://www.nosolocodigo.com/category/apis/feed" rel="self" type="application/rss+xml" />
	<link>http://www.nosolocodigo.com</link>
	<description>Blog de desarrollo web, Joomla, Wordpress y software libre</description>
	<lastBuildDate>Mon, 06 Sep 2010 23:10:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Módulo de Google Friend Connect para Joomla, Joomla-FriendConnect</title>
		<link>http://www.nosolocodigo.com/modulo-de-google-friend-connect-para-joomla-joomla-friendconnect</link>
		<comments>http://www.nosolocodigo.com/modulo-de-google-friend-connect-para-joomla-joomla-friendconnect#comments</comments>
		<pubDate>Wed, 13 Jan 2010 11:00:26 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[Joomla]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[friendconnect]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[modulo]]></category>
		<category><![CDATA[noticia]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/?p=1929</guid>
		<description><![CDATA[Acaba de ser anunciado en el blog de Google Social Web un nuevo módulo para Joomla (también para Drupal) que permite integrar fácilmente el sistema de web social de Google Friend Connect con Joomla. Aunque esto ya era posible antes mediante módulos de tipo &#8220;custom HTML&#8221;. Con este nuevo módulo, cada vez que alguien accede [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/tutorial-para-desarrollar-componente-con-el-api-de-joomla-1-6-y-google-maps' rel='bookmark' title='Permanent Link: Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps'>Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps</a></li>
<li><a href='http://www.nosolocodigo.com/nueva-api-de-google-google-contacts-api' rel='bookmark' title='Permanent Link: Nueva API de Google: Google Contacts API'>Nueva API de Google: Google Contacts API</a></li>
<li><a href='http://www.nosolocodigo.com/estadisticas-de-ecommerce-para-virtuemart-con-google-analytics' rel='bookmark' title='Permanent Link: Estadísticas de eCommerce para VirtueMart con Google Analytics'>Estadísticas de eCommerce para VirtueMart con Google Analytics</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2010/01/google-friend-connect-joomla.jpg" alt="" title="google-friend-connect-joomla" width="140" height="140" class="alignright size-full wp-image-1936" /></p>
<p><a href="http://googlesocialweb.blogspot.com/2010/01/add-social-features-to-your-cms-friend.html">Acaba de ser anunciado en el blog de Google Social Web</a> un nuevo <b><a href="http://joomla-friendconnect.googlecode.com/">módulo para Joomla</a></b> (también para Drupal) que permite <b>integrar fácilmente el sistema de web social de Google Friend Connect con Joomla</b>. Aunque esto ya era posible antes mediante módulos de tipo &#8220;custom HTML&#8221;. Con este nuevo módulo, cada vez que alguien  accede al sitio mediante Google Friend Connect usando el botón de Sign In, <b>se crea una nueva cuenta en la base de datos de Joomla y se asocia a la cuenta de Google Friend Connect</b>, después el usuario puede modificar sus datos de usuario mediante la interfaz nativa de Joomla y loguearse normalmente usando el sistema nativo de Joomla si así lo prefiere.<br />
Esto es algo muy importante, ya que muchos administradores son reacios a usar este tipo de sistemas por que pierden información de sus usuarios que quieren aprovechar para realizar boletines, etc..</p>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2010/01/logged_in.png" alt="Google Friend Connect for Joomla, logged_in" title="Google Friend Connect for Joomla, logged_in" width="427" height="293" class="aligncenter size-full wp-image-1934 borde" /></p>
<p>Otra característica que me ha llamado la atención es la posibilidad de usar <b>AdSense integrado con Google Friend Connect</b>, con lo que los bloques de publicidad no solo se mostrarían usando la información contextual del sitio web, sino también las preferencias del usuario que obtiene Google de su cuenta de usuario, algo que podría aumentar el CTR de la página.</p>
<p>El módulo implementa todos los <b>gadgets disponibles para Google Friend Connect</b> como:</p>
<ul>
<li>Social Bar</li>
<li>Members</li>
<li>Comentarios de página</li>
<li>Ratings and Reviews</li>
<li>Suscripción a newsletter</li>
<li>Encuestas</li>
<li>Contenido destacado</li>
<li>Recomendaciones</li>
<li>Adsense</li>
</ul>
<p>Puedes ver las <a href="http://code.google.com/p/joomla-friendconnect/wiki/features?tm=6">características del módulo en la Wiki del proyecto</a>.</p>
<p>La instalación es muy sencilla, solamente hay que instalar el módulo que <a href="http://joomla-friendconnect.googlecode.com/files/joomla-friendconnect.1.0.0.zip">puedes descargar de la página de Google Code de joomla-friendconnect</a>.</p>
<p>Después tienes que crear tantas instancias del módulo como gadgets quieras e indicar el tipo de gadget que quieres mostrar.<br />
<img src="http://www.nosolocodigo.com/wp-content/uploads/2010/01/module_details.png" alt="Google Friend Connect for Joomla, module details" title="Google Friend Connect for Joomla, module details" width="501" height="363" class="aligncenter size-full wp-image-1930 borde" /></p>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2010/01/module_params.png" alt="Google Friend Connect for Joomla, module params" title="Google Friend Connect for Joomla, module params" width="491" height="310" class="aligncenter size-full wp-image-1932 borde" /></p>
<p>Ver <a href="http://code.google.com/p/joomla-friendconnect/wiki/installation">manual de instalación</a>.<br />
Ver <a href="http://demo02.globant.com/joomla">demo del sistema implementado en Joomla</a>.</p>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect&amp;title=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect&amp;notes=%0D%0A%0D%0AAcaba%20de%20ser%20anunciado%20en%20el%20blog%20de%20Google%20Social%20Web%20un%20nuevo%20m%C3%B3dulo%20para%20Joomla%20%28tambi%C3%A9n%20para%20Drupal%29%20que%20permite%20integrar%20f%C3%A1cilmente%20el%20sistema%20de%20web%20social%20de%20Google%20Friend%20Connect%20con%20Joomla.%20Aunque%20esto%20ya%20era%20posible%20antes%20mediante%20m%C3" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect&amp;t=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect&amp;title=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect&amp;annotation=%0D%0A%0D%0AAcaba%20de%20ser%20anunciado%20en%20el%20blog%20de%20Google%20Social%20Web%20un%20nuevo%20m%C3%B3dulo%20para%20Joomla%20%28tambi%C3%A9n%20para%20Drupal%29%20que%20permite%20integrar%20f%C3%A1cilmente%20el%20sistema%20de%20web%20social%20de%20Google%20Friend%20Connect%20con%20Joomla.%20Aunque%20esto%20ya%20era%20posible%20antes%20mediante%20m%C3" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=M%C3%B3dulo%20de%20Google%20Friend%20Connect%20para%20Joomla%2C%20Joomla-FriendConnect+http%3A%2F%2Fwww.nosolocodigo.com%2Fmodulo-de-google-friend-connect-para-joomla-joomla-friendconnect" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/tutorial-para-desarrollar-componente-con-el-api-de-joomla-1-6-y-google-maps' rel='bookmark' title='Permanent Link: Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps'>Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps</a></li>
<li><a href='http://www.nosolocodigo.com/nueva-api-de-google-google-contacts-api' rel='bookmark' title='Permanent Link: Nueva API de Google: Google Contacts API'>Nueva API de Google: Google Contacts API</a></li>
<li><a href='http://www.nosolocodigo.com/estadisticas-de-ecommerce-para-virtuemart-con-google-analytics' rel='bookmark' title='Permanent Link: Estadísticas de eCommerce para VirtueMart con Google Analytics'>Estadísticas de eCommerce para VirtueMart con Google Analytics</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/modulo-de-google-friend-connect-para-joomla-joomla-friendconnect/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</title>
		<link>http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics</link>
		<comments>http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics#comments</comments>
		<pubDate>Wed, 23 Sep 2009 23:45:04 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[analitycs]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[truco]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/?p=1456</guid>
		<description><![CDATA[El seguimiento de eventos en Google Analytics es una herramienta muy potente y útil. En esta ocasión la he implementado en el blog como prueba para llevar las estadísticas de los comentarios que se van recibiendo. La finalidad es curiosear con la herramienta, conocerla un poco más y comprobar el comportamiento de los lectores de [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/estadisticas-de-ecommerce-para-virtuemart-con-google-analytics' rel='bookmark' title='Permanent Link: Estadísticas de eCommerce para VirtueMart con Google Analytics'>Estadísticas de eCommerce para VirtueMart con Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics' rel='bookmark' title='Permanent Link: Seguimiento de eventos con el API de Google Analytics'>Seguimiento de eventos con el API de Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics' rel='bookmark' title='Permanent Link: Controla las imágenes rotas de tu web con jQuery y Google Analytics'>Controla las imágenes rotas de tu web con jQuery y Google Analytics</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>El<a href="http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics"> seguimiento de eventos en Google Analytics</a> es una herramienta muy potente y útil. En esta ocasión la he implementado en el blog como prueba para llevar las estadísticas de los comentarios que se van recibiendo. La finalidad es curiosear con la herramienta, conocerla un poco más y comprobar el comportamiento de los lectores de nosolocodigo.</p>
<p>Para gestionar el control de eventos, he creado la<strong> categoría Blog</strong>, y la<strong> acción Comentario</strong>. El <strong>Label es la URL de la página</strong> donde se realiza el comentario, de esta forma, cuando vaya a contenido &gt; Seguimiento de eventos, podré ordenar los resultados por número de comentarios por artículo.</p>
<p>Para implementarlo, he utilizado jQuery, aunque sería muy sencillo hacerlo con otra librería o incluso sin ninguna. Como utilizo WordPress, me he dirijído a<a href="http://www.nosolocodigo.com/tutorial-como-hacer-theme-wordpress-ficheros"> los ficheros del theme</a>, y he abierto el<strong> fichero comments.php</strong>, donde se encuentra el código necesario para enviar comentarios. Al abrirlo, me encuentro con algo como lo que se muestra a continuación.</p>
<pre><code>

&lt;form action="&lt;?php echo get_option('siteurl'); ?&gt;/wp-comments-post.php" method="post" id="commentform"&gt;;

&lt;?php if ( $user_ID ) : ?&gt;
&lt;p&gt;
    Has ingresado como &lt;a id="url" href="&lt;?php echo get_option('siteurl'); ?&gt;/wp-admin/profile.php"&gt;
&lt;?php echo $user_identity; ?&gt;&lt;/a&gt;.
    &lt;a href="&lt;?php echo get_option('siteurl'); ?&gt;/wp-login.php?action=logout" title="Salir de esta cuenta"&gt;Salir&lt;/a&gt;
&lt;/p&gt;

&lt;?php else : ?&gt;
&lt;p&gt;
    &lt;input type="text" name="author" id="author" value="&lt;?php echo $comment_author; ?&gt;" size="22" tabindex="1" /&gt;
    &lt;label for="author"&gt;&lt;small&gt;Nombre &lt;?php if ($req) echo "(Requerido)"; ?&gt;&lt;/small&gt;&lt;/label&gt;&lt;/p&gt;
&lt;p&gt;
    &lt;input type="text" name="email" id="email" value="&lt;?php echo $comment_author_email; ?&gt;" size="22" tabindex="2" /&gt;
    &lt;label for="email"&gt;&lt;small&gt;Email (No será publicado) &lt;?php if ($req) echo "(requerido)"; ?&gt;&lt;/small&gt;&lt;/label&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;input type="text" name="url" id="url" value="&lt;?php echo $comment_author_url; ?&gt;" size="22" tabindex="3" /&gt;
    &lt;label for="url"&gt;&lt;small&gt;Website o Blog&lt;/small&gt;&lt;/label&gt;
&lt;/p&gt;
&lt;?php endif; ?&gt;
&lt;p&gt;
    &lt;textarea name="comment" id="comment" cols="100%" rows="10" tabindex="4"&gt;&lt;/textarea&gt;
&lt;/p&gt;
&lt;p&gt;
<strong>    &lt;input name="submit" type="submit" id="submit" tabindex="5" value="Enviar Comentario" /&gt;</strong>
    &lt;input type="hidden" name="comment_post_ID" value="&lt;?php echo $id; ?&gt;" /&gt;
&lt;/p&gt;

&lt;?php do_action('comment_form', $post-&gt;ID); ?&gt;
&lt;/form&gt;
</code></pre>
<p>El<strong> input de tipo submit que se encuentra al final del formulario</strong> es el encargado de enviar la información del formulario al servidor. Para interceptar el evento click, introduzco el siguiente código de jQuery, que define un handler que avisa a Google Analytics para que se registre el evento. El código se muestra a continuación.</p>
<pre><code>
jQuery('#commentform input[type = submit]').click(function(){
      pageTracker._trackEvent('Blog' , 'Comentario' , document.location.pathname,document.getElementById('comment').value.length  );
});
</code></pre>
<p><strong>Explicación:</strong><br />
El método _trackEvent admite 4 parámetros:</p>
<ol>
<li>Nombre de la categoría.</li>
<li>Nombre de la acción.</li>
<li>Nombre de la etiqueta. El pathname de la URL.</li>
<li>Valor numérico del evento, en este caso el número de caracteres que contiene el comentario.</li>
</ol>
<p>Con esto ya se empezarán a registrar todos los comentarios en Google Analytics. Ahora vamos a ver que datos obtenemos.</p>
<p>Cuando entramos a Google Analytics, vamos a <strong>Contenido &gt; Seguimiento de eventos</strong>. Después pulsamos sobre <strong>Categorías </strong> y seleccionamos la <strong>categoría Blog.</strong> En la categoría Blog seleccionamos la <strong>acción Comentario</strong>, y se muestra algo como lo que se puede ver en la imagen.</p>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2009/09/comentariosOrden.png" alt="comentariosOrden" title="comentariosOrden" width="400" height="206" class="aligncenter size-full wp-image-1457 borde "  /></p>
<p>Después, si quieres<a href="http://www.google.es/support/googleanalytics/bin/answer.py?hl=es&#038;answer=108040"> puedes definir un segmento avanzado</a> para que se filtren las visitas que hayan hecho un comentario y poder realizar informes más precisos. Una vez realizado el segmento avanzado, si pulsas sobre <strong>Panel</strong>, se verá algo como lo siguiente.</p>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2009/09/segmentoAvanzadoComentarios.png" alt="segmentoAvanzadoComentarios" title="segmentoAvanzadoComentarios" width="624" height="265" class="aligncenter size-full wp-image-1461" /></p>
<p>Ahora, si vas a <strong>Usuarios</strong>, puedes obtener más información sobre los usuarios que comentan en tu blog. Los datos se empiezan a mostrar a partir del día 10 de Septiembre, como se puede ver en el gráfico, día en que puse el código de seguimiento.</p>
<div id="attachment_1459" class="wp-caption aligncenter" style="width: 351px"><img src="http://www.nosolocodigo.com/wp-content/uploads/2009/09/procedenciaComentarios.png" alt="Datos de los usuarios por ubicación" title="Datos de los usuarios por ubicación" width="341" height="204" class="size-full wp-image-1459" /><p class="wp-caption-text">Datos de los usuarios por ubicación</p></div><br />
<div id="attachment_1460" class="wp-caption aligncenter" style="width: 292px"><img src="http://www.nosolocodigo.com/wp-content/uploads/2009/09/procednciaComentarios2.png" alt="Datos de los usuarios por ubicación en España" title="Datos de los usuarios por ubicación en España" width="282" height="221" class="size-full wp-image-1460" /><p class="wp-caption-text">Datos de los usuarios por ubicación en España</p></div>
<p>Como curiosidad decir que el 100% de las personas que comentan aquí usa Firefox. El 86% usa Windows , el resto Linux.</p>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics&amp;title=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20&amp;notes=El%20seguimiento%20de%20eventos%20en%20Google%20Analytics%20es%20una%20herramienta%20muy%20potente%20y%20%C3%BAtil.%20En%20esta%20ocasi%C3%B3n%20la%20he%20implementado%20en%20el%20blog%20como%20prueba%20para%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20que%20se%20van%20recibiendo.%20La%20finalidad%20es%20curiosear%20con%20la%20" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics&amp;t=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics&amp;title=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20&amp;annotation=El%20seguimiento%20de%20eventos%20en%20Google%20Analytics%20es%20una%20herramienta%20muy%20potente%20y%20%C3%BAtil.%20En%20esta%20ocasi%C3%B3n%20la%20he%20implementado%20en%20el%20blog%20como%20prueba%20para%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20que%20se%20van%20recibiendo.%20La%20finalidad%20es%20curiosear%20con%20la%20" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=Como%20llevar%20las%20estad%C3%ADsticas%20de%20los%20comentarios%20de%20tu%20blog%20con%20Google%20Analytics%20+http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/estadisticas-de-ecommerce-para-virtuemart-con-google-analytics' rel='bookmark' title='Permanent Link: Estadísticas de eCommerce para VirtueMart con Google Analytics'>Estadísticas de eCommerce para VirtueMart con Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics' rel='bookmark' title='Permanent Link: Seguimiento de eventos con el API de Google Analytics'>Seguimiento de eventos con el API de Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics' rel='bookmark' title='Permanent Link: Controla las imágenes rotas de tu web con jQuery y Google Analytics'>Controla las imágenes rotas de tu web con jQuery y Google Analytics</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Controla las imágenes rotas de tu web con jQuery y Google Analytics</title>
		<link>http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics</link>
		<comments>http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics#comments</comments>
		<pubDate>Tue, 15 Sep 2009 02:13:25 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[analitycs]]></category>
		<category><![CDATA[codigo]]></category>
		<category><![CDATA[eventos]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/?p=1309</guid>
		<description><![CDATA[Hay pocas cosas más feas que el icono que se muestra cada vez que se intenta cargar una imagen y por algún motivo no se encuentra. Este icono resulta muy feo, además de provocar en el usuario la sensación de que el sitio web está descuidado y con errores. Una solución podría ser visitar todo [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics' rel='bookmark' title='Permanent Link: Como llevar las estadísticas de los comentarios de tu blog con Google Analytics'>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics' rel='bookmark' title='Permanent Link: Seguimiento de eventos con el API de Google Analytics'>Seguimiento de eventos con el API de Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/carga-lento-google-analytics-en-tu-web' rel='bookmark' title='Permanent Link: Carga lento Google analytics en tu web?'>Carga lento Google analytics en tu web?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2009/09/broken_image_necklace.jpg" alt="Imagen no encontrada" title="Imagen no encontrada" width="300" height="300" class="alignright size-full wp-image-1310 borde" style="margin-bottom:15px;margin-left:15px;" />Hay pocas cosas más feas que el icono que se muestra cada vez que se intenta cargar una imagen y por algún motivo no se encuentra. Este icono resulta muy feo, además de <strong>provocar en el usuario la sensación de que el sitio web está descuidado y con errores</strong>.<br />
Una solución podría ser visitar todo el sitio en busca de imágenes no encontradas y arreglando el problema uno a uno, aunque no creo que tengas ganas de hacerlo, la verdad, sobre todo en sitio que tienen bastantes páginas.</p>
<p>Existe otra solución mucho más inteligente que pasa por usar<strong> Javascript y jQuery</strong> puede ayudarnos mucho en esta tarea. </p>
<p>Esta solución consiste en poner un pequeño código Javascript en la plantilla de tu web que nos avise cuando encuentre alguna imagen rota. Se supone que se tiene cargado el framework jQuery y el <strong>código de Google Analytics ga.js</strong>.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'img'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">error</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Blog'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Imagen_rota'</span><span style="color: #339933;">,</span> $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'src'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
				src<span style="color: #339933;">:</span> <span style="color: #3366CC;">'http://www.nosolocodigo.com/imagen-rota.jpg'</span><span style="color: #339933;">,</span>
				alt<span style="color: #339933;">:</span> <span style="color: #3366CC;">'Lo siento, imagen no disponible.'</span><span style="color: #339933;">,</span>
				style<span style="color: #339933;">:</span><span style="color: #3366CC;">'border: 1px solid #000000;'</span>
			<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>El código recorre todas las imágenes de la página y les asigna una función al evento error. El evento error se dispara cuando una imagen no se ha podido cargar por cualquier motivo, generalmente porque no se encuentra disponible en la ruta especificada. La función <strong><a href="http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics">envía un evento a Google Analytics</a> con la categoría <em>Blog</em>, acción <em>Imagen_rota</em> y una etiqueta con el <em>atributo src</em></strong>, es decir, la imagen que no carga debidamente.</p>
<p>Después de reportar el evento a Google Analytics, se cambia la imagen por una imagen creada a nuestro gusto que indique al usuario que la imagen pedida no está disponible, de esta forma queda todo mucho más homogéneo y el usuario sabe que la imagen no se ha cargado. También se le añade un atributo alt y un estilo inline, esto último queda a gusto del consumidor. De esta forma el usuario no tiene que verse el horrible icono de la discordia cada vez que una imágen no se encuentre disponible.</p>
<p>Otra opción sería reportar a Google Analytics y eliminar la imagen para que no aparezca nada, en este caso el código a utilizar sería el siguiente:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'img'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">error</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Blog'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Imagen_rota'</span><span style="color: #339933;">,</span> $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'src'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Una vez puesto esto solo falta esperar a recibir los informes de Google Analytics, ir a la sección Contenido > Seguimiento de Eventos y consultar la categoría Blog. Luego pinchar la acción Imagen_rota y aparecerá una lista de URLs con imágenes que por algún motivo no se han podido cargar.</p>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics&amp;title=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics&amp;notes=Hay%20pocas%20cosas%20m%C3%A1s%20feas%20que%20el%20icono%20que%20se%20muestra%20cada%20vez%20que%20se%20intenta%20cargar%20una%20imagen%20y%20por%20alg%C3%BAn%20motivo%20no%20se%20encuentra.%20Este%20icono%20resulta%20muy%20feo%2C%20adem%C3%A1s%20de%20provocar%20en%20el%20usuario%20la%20sensaci%C3%B3n%20de%20que%20el%20sitio%20web%20est%C3%A1%20descuidado%20y%20co" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics&amp;t=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics&amp;title=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics&amp;annotation=Hay%20pocas%20cosas%20m%C3%A1s%20feas%20que%20el%20icono%20que%20se%20muestra%20cada%20vez%20que%20se%20intenta%20cargar%20una%20imagen%20y%20por%20alg%C3%BAn%20motivo%20no%20se%20encuentra.%20Este%20icono%20resulta%20muy%20feo%2C%20adem%C3%A1s%20de%20provocar%20en%20el%20usuario%20la%20sensaci%C3%B3n%20de%20que%20el%20sitio%20web%20est%C3%A1%20descuidado%20y%20co" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=Controla%20las%20im%C3%A1genes%20rotas%20de%20tu%20web%20con%20jQuery%20y%20Google%20Analytics+http%3A%2F%2Fwww.nosolocodigo.com%2Fcontrola-las-imagenes-rotas-con-jquery-y-google-analytics" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics' rel='bookmark' title='Permanent Link: Como llevar las estadísticas de los comentarios de tu blog con Google Analytics'>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics' rel='bookmark' title='Permanent Link: Seguimiento de eventos con el API de Google Analytics'>Seguimiento de eventos con el API de Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/carga-lento-google-analytics-en-tu-web' rel='bookmark' title='Permanent Link: Carga lento Google analytics en tu web?'>Carga lento Google analytics en tu web?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Seguimiento de eventos con el API de Google Analytics</title>
		<link>http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics</link>
		<comments>http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics#comments</comments>
		<pubDate>Fri, 11 Sep 2009 09:39:46 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Mootools]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/?p=1190</guid>
		<description><![CDATA[Google Analytics es uno de los mejores sistemas para llevar las estadísticas de un sitio web. Además de tener un panel de control muy completo, mediante el cual observar y medir las estadísticas de nuestra web, también tiene un API Javascript que permite llevar a cabo métricas más afinadas, como por ejemplo medir eventos de [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics' rel='bookmark' title='Permanent Link: Como llevar las estadísticas de los comentarios de tu blog con Google Analytics'>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics' rel='bookmark' title='Permanent Link: Controla las imágenes rotas de tu web con jQuery y Google Analytics'>Controla las imágenes rotas de tu web con jQuery y Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/chuleta-de-google-analytics-en-pdf' rel='bookmark' title='Permanent Link: Chuleta de Google Analytics en PDF'>Chuleta de Google Analytics en PDF</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><img src="http://www.nosolocodigo.com/wp-content/uploads/2008/02/google-analytics-logo.jpg" alt="Logo de Google Analytics" title="Logo de Google Analytics" width="266" height="60" class="alignright size-full wp-image-50" style="margin:20px;" />Google Analytics es uno de los mejores sistemas para llevar las estadísticas de un sitio web. Además de tener un panel de control muy completo, mediante el cual observar y medir las estadísticas de nuestra web, también tiene un <strong>API Javascript</strong> que permite llevar a cabo métricas más afinadas, como por ejemplo medir eventos de interfaz de usuario.El uso normal que se le da a Google Analytics una vez instalado, e ver las páginas vistas, las visitas, el navegador más utilizado del sitio, el porcentaje de rebote&#8230;Con el API de Google Analytics se puede ir un paso más allá y llevar la cuenta de <strong>eventos personalizados</strong>, lo que los de Google llaman seguimiento de eventos (event tracking). También se pude llevar la cuenta de los enlace salientes, es decir, cuales son las páginas externas de tu sitio que la gente más visita, llevar la cuenta de <strong>eventos de usuario</strong>, como darle al play en un video,  pasar las diapositivas de un slideshow, etc&#8230; Otro uso interesante que se le puede dar a Google Analytics es, por qué no,  llevar las estadísticas de las excepciones lanzadas por Javascript en tu sitio web, es decir, usar Google Analitycs como herramienta de reporte de errores de tu aplicación Javascript.</p>
<p>El seguimiento de eventos se introdujo con el <strong>fichero ga.js</strong>. Hasta entonces, para seguir eventos de usuario había que crear URLs virtuales,  luego se contaban las visitas de esa URLs y se podía saber cuantas veces se había efectuado el evento. El problema es que con esta forma de manejar los eventos, al número de visitas se le sumaba el número de eventos, por lo que pierdes veracidad en el análisis del sitio al inflarse las estadísticas. Por lo tanto es <strong>mejor usar eventos</strong>.</p>
<h2>Implementación con Javascript</h2>
<p>En todo momento se supone que se ha cargado la librería ga.js que proporciona Google Analytics para llevar el seguimiento, como se muestra a continuación.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&nbsp;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span> 
<span style="color: #003366; font-weight: bold;">var</span> gaJsHost <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;https:&quot;</span> <span style="color: #339933;">==</span> document.<span style="color: #660066;">location</span>.<span style="color: #660066;">protocol</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">?</span> <span style="color: #3366CC;">&quot;https://ssl.&quot;</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;http://www.&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span>unescape<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;%3Cscript src='&quot;</span> <span style="color: #339933;">+</span> gaJsHost <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span> 
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span> 
<span style="color: #003366; font-weight: bold;">var</span> pageTracker <span style="color: #339933;">=</span> _gat._getTracker<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;TuClaveDeAnalytics&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
pageTracker._initData<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
pageTracker._trackPageview<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Imagina que quieres llevar un control del número de personas que pincha sobre el icono RSS del blog y del número de personas que  se suscribe al RSS por email mediante el formulario de FeedBurner.<br />
Para ello se puede crear la categoría RSS, y la acción &#8220;click&#8221; para cuando se haga click, y submit para cuando se envíe un formulario. Las etiquetas sirven para diferenciar las acciones, por ejemplo si tengo 3 iconos diferentes de RSS, puedo ponerle a cada uno la categoría &#8220;RSS&#8221;, acción &#8220;click&#8221;, pero cambiarles las etiquetas, y ponerle (por ejemplo) a uno &#8220;icono_grande&#8221;, &#8220;icono_footer&#8221; e &#8220;icono_barra_lateral&#8221;. De esta forma se pueden diferenciar claramente en que icono se ha hecho click, y saber que icono es el que llama más la atención a los usuarios.</p>
<h3>Número de gente que pincha sobre el enlace del Feed/Twitter</h3>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">&nbsp;
Icono de RSS que enlaza a mi feed
&lt;a href=&quot;http://feeds.feedburner.com/nosolocodigo&quot; id=&quot;enlace_feed&quot;&gt;
	&lt;img src=&quot;icono_rss.jpg&quot; /&gt;
&lt;/a&gt;
&nbsp;
&nbsp;
Formulario de envío del email
&lt;form  id=&quot;suscribete_email&quot;&gt;
&lt;input type=&quot;text&quot; &gt;
&lt;input type=&quot;submit&quot; value=&quot;Enviar&quot; id=&quot;enviar_email&quot; /&gt;
&lt;/form&gt;</pre></td></tr></table></div>


<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&nbsp;
<span style="color: #009966; font-style: italic;">/* Sintaxis:  pageTracker._trackEvent('Categoría', 'acción', 'etiqueta');&quot; */</span>
&nbsp;
<span style="color: #009966; font-style: italic;">/* Código que realizará el seguimiento */</span>
<span style="color: #009966; font-style: italic;">/*Se presupone que se ha cargao la librería y las llamadas se están realizando en el evento ready*/</span>
&nbsp;
$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#enlace_feed'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
      pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'RSS'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'click'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Icono'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'# enviar_email '</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
      pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'RSS'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'submit'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'formulario de envío'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Una vez Google reciba los datos, accede a tu panel de control, en la sección <em>Contenido > Seguimiento de eventos</em>.<br />
<img src="http://www.nosolocodigo.com/wp-content/uploads/2009/09/principales_eventosRSS_2.jpg" alt="Seguimiento de eventos con Google Analytics y Javascript" title="Seguimiento de eventos con Google Analytics y Javascript" width="460" height="109" class="aligncenter size-full wp-image-1194" /></p>
<h3>Seguimiento de enlaces salientes</h3>
<p>Puede resultar muy útil saber a que sitios se quieren dirigir nuestros usuarios. Si el enlace en el que pinchan es interno, Analytics nos lo dirá, por que la página de destino lleva el código de seguimiento y lo registra. Pero si el enlace es de un dominio que no manejamos nosotros Analytics no lo puede saber. Para averiguarlo podemos generar un evento cada vez se haga click en cualquier enlace que no sea de nuestro dominio, y enviar la URL de destino como etiqueta del evento. Mira el ejemplo y verás.</p>
<p><strong>Mootools</strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">window.<span style="color: #660066;">addEvent</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'load'</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
   <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>pageTracker<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	$$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'a[href^=http]'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>el<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>el.<span style="color: #660066;">get</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;href&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">match</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'^http://nosolocodigo.com'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #339933;">!</span>el.<span style="color: #660066;">get</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;href&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">match</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'^http://www.nosolocodigo.com'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
&nbsp;
			el.<span style="color: #660066;">addEvent</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'click'</span><span style="color: #339933;">,</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #003366; font-weight: bold;">var</span> destino <span style="color: #339933;">=</span>  el.<span style="color: #660066;">get</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'href'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">replace</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'http://'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                                        pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'External'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Click'</span><span style="color: #339933;">,</span> destino <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  
			<span style="color: #009900;">&#125;</span>.<span style="color: #660066;">bind</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p><strong>jQuery</strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'a'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>  
       <span style="color: #003366; font-weight: bold;">var</span> href <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'href'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  
&nbsp;
       <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>href.<span style="color: #660066;">match</span><span style="color: #009900;">&#40;</span><span style="color: #009966; font-style: italic;">/^https?\:/i</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>href.<span style="color: #660066;">match</span><span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">domain</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>  
              $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>  
                  <span style="color: #003366; font-weight: bold;">var</span> destino <span style="color: #339933;">=</span> href.<span style="color: #660066;">replace</span><span style="color: #009900;">&#40;</span><span style="color: #009966; font-style: italic;">/^https?\:\/\//i</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  
                  pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'External'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Click'</span><span style="color: #339933;">,</span> destino <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  
              <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  
       <span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<h3>Tiempo de carga de la página</h3>
<p>Un dato interesante es el tiempo que tarda en cargar la página de media a nuestros usuarios, de esta forma podemos saber si tenemos que optimizar la velocidad o no. Google Analytics no informa de este dato, pero se puede generar un evento que envíe el tiempo que tarda en cargar la página, y luego ver cual es la velocidad media con la que se carga nuestra web. Una aproximación muy buena es la que hacen en <a href="http://www.panalysis.com/tracking-webpage-load-times.php">panalysis</a>. Para calcular el tiempo que tarda en cargar la página (aproximadamente) hay que poner este código en el head.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&nbsp;
<span style="color: #003366; font-weight: bold;">var</span> inicio <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> trackPageLoadTime<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> fin <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #339933;">;</span>
&nbsp;
	mlsegundos <span style="color: #339933;">=</span> fin.<span style="color: #660066;">getTime</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> inicio.<span style="color: #660066;">getTime</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        valoracion <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mlsegundos  <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
            valoracion <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Muy Rapido&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span> <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mlsegundos  <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">5000</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
            valoracion <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Rapido&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span> <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mlsegundos  <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">10000</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
           valoracion <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Medio-Lento&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span> <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mlsegundos  <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">30000</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
                 valoracion <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Lento&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
                valoracion <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;Catastrofe&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
	pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Page load time&quot;</span> <span style="color: #339933;">,</span> valoracion <span style="color: #339933;">,</span> document.<span style="color: #660066;">location</span>.<span style="color: #660066;">pathname</span> <span style="color: #339933;">,</span>  Math.<span style="color: #660066;">round</span><span style="color: #009900;">&#40;</span>mlsegundos <span style="color: #339933;">/</span><span style="color: #CC0000;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
window.<span style="color: #000066;">onload</span> <span style="color: #339933;">=</span> trackPageLoadTime<span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Si te fijas, ahora utilizamos un cuarto parametro. Este parametro es el valor, y ha de ser un entero. Por tanto al final queda de la siguiente manera: <em>Categoría->Page load time, Acción-> valoracion (Rapido, muy rapido&#8230;), Etiqueta-> path, Valor->Tiempo en segundos</em>.</p>
<h3>Más ocurrencias</h3>
<p>Haciendo un uso inteligente de los bloques <span class="inline-code">try/catch/finally</span> podemos saber si nuestros usuarios tienen errores en la aplicación o no. Puede resultar útil para depurar aplicaciones que ya están en marcha, obteniendo datos estadísticos bastante jugosos, como por ejemplo,  haciendo uso de los segmentos avanzados podemos saber que navegador genera más errores, que sistema operativo, si las conexiones lentas son más propicias a errores que las rápidas, si la tasa de errores es muy elevada&#8230;En fin, mucha información. Implementarlo es muy simple, mira este pequeño ejemplo.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">try</span><span style="color: #009900;">&#123;</span>
   	<span style="color: #006600; font-style: italic;">//Codigo javascript</span>
&nbsp;
<span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>err<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
&nbsp;
 	pageTracker._trackEvent<span style="color: #009900;">&#40;</span>DEBUG<span style="color: #339933;">,</span> excepciones<span style="color: #339933;">,</span> err.<span style="color: #660066;">description</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
 <span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Otro posible uso sería en <strong>formularios</strong>. En el evento click del botón de envío, al hacer las validaciones, puedes llevar un log y ver cuantas veces el usuario se está equivocando al rellenarlo. De esta forma <strong>puedes obtener datos y saber si el formulario es usable o no</strong>.</p>
<h3>Otros usos interesantes del API de Google Analytics </h3>
<ul>
<li><strong>Páginas AJAX incrustadas</strong>. Páginas que se van recargando asíncronamente, como Tuenti o Facebook, no podrían llevar la cuenta de visitas si no fuera por estas características. En este caso sería mejor usar el evento <span class="inline-code">trackPageView(&#8220;/URL&#8221;)</span></li>
<li><strong>Descarga de ficheros</strong>. Contabilizar cuantas veces se descarga un fichero. Se pueden utilizar etiquetas para diferenciar entre ficheros. Una buena catalogación sería:<em> Categoría-> Ficheros, Acción->PDF/ZIP/RAR/DOC&#8230;, Etiqueta->Nombre del fichero</em>. Utilizar un sistema de nombrado coherente es esencial.</li>
<li><strong>Llevar un control estadístico de los comentarios que te hacen en el blog</strong>. Generando un evento cada vez que alguien envíe un comentario podemos sacar muy buen información, como a que horas se comenta más, que perfil de gente comenta más; los usuarios recurrentes o los nuevos, en que países te comentan más&#8230; se me hace la boca agua&#8230;). Una buena catalogación sería:<em> Categoría-> Blog, Acción->Comentario, Etiqueta->URL_articulo/nombre_usuario</em>.</li>
</ul>
<p>Creo que con estos ejemplos queda clara la potencia de los eventos de Google Analytics, que si encima lo combinamos con los nuevos frameworks Javascript, como jQuery o Mootools, te permite hacer cosas, que años atrás hubieran resultado imposibles. <strong>Próximamente más</strong> tips de Google Analytics.</p>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics&amp;title=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics&amp;notes=Google%20Analytics%20es%20uno%20de%20los%20mejores%20sistemas%20para%20llevar%20las%20estad%C3%ADsticas%20de%20un%20sitio%20web.%20Adem%C3%A1s%20de%20tener%20un%20panel%20de%20control%20muy%20completo%2C%20mediante%20el%20cual%20observar%20y%20medir%20las%20estad%C3%ADsticas%20de%20nuestra%20web%2C%20tambi%C3%A9n%20tiene%20un%20API%20Javascript%20que" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics&amp;t=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics&amp;title=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics&amp;annotation=Google%20Analytics%20es%20uno%20de%20los%20mejores%20sistemas%20para%20llevar%20las%20estad%C3%ADsticas%20de%20un%20sitio%20web.%20Adem%C3%A1s%20de%20tener%20un%20panel%20de%20control%20muy%20completo%2C%20mediante%20el%20cual%20observar%20y%20medir%20las%20estad%C3%ADsticas%20de%20nuestra%20web%2C%20tambi%C3%A9n%20tiene%20un%20API%20Javascript%20que" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=Seguimiento%20de%20eventos%20con%20el%20API%20de%20Google%20Analytics+http%3A%2F%2Fwww.nosolocodigo.com%2Fseguimiento-de-eventos-con-el-api-de-google-analytics" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics' rel='bookmark' title='Permanent Link: Como llevar las estadísticas de los comentarios de tu blog con Google Analytics'>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics' rel='bookmark' title='Permanent Link: Controla las imágenes rotas de tu web con jQuery y Google Analytics'>Controla las imágenes rotas de tu web con jQuery y Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/chuleta-de-google-analytics-en-pdf' rel='bookmark' title='Permanent Link: Chuleta de Google Analytics en PDF'>Chuleta de Google Analytics en PDF</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds</title>
		<link>http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds</link>
		<comments>http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds#comments</comments>
		<pubDate>Wed, 26 Aug 2009 19:25:42 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/?p=911</guid>
		<description><![CDATA[Hoy he necesitado cargar un RSS externo desde una web, y había que hacerlo con Javascript. El problema es que desde Javascript solo se puede hacer peticiones asíncronas a URL&#8217;s de tu propio dominio, debido a restricciones de seguridad. El otro día estuve viendo cómo cargar los frameworks más famosos y las API&#8217;s de Google [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics' rel='bookmark' title='Permanent Link: Seguimiento de eventos con el API de Google Analytics'>Seguimiento de eventos con el API de Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google' rel='bookmark' title='Permanent Link: Como cargar tu framework Javascript más rápido usando el CDN de Google'>Como cargar tu framework Javascript más rápido usando el CDN de Google</a></li>
<li><a href='http://www.nosolocodigo.com/tutorial-para-desarrollar-componente-con-el-api-de-joomla-1-6-y-google-maps' rel='bookmark' title='Permanent Link: Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps'>Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Hoy he necesitado cargar un RSS externo desde una web, y había que hacerlo con Javascript. El problema es que desde Javascript solo se puede hacer peticiones asíncronas a URL&#8217;s de tu propio dominio, debido a restricciones de seguridad.</p>
<p>El otro día estuve viendo <a href="http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google">cómo cargar los frameworks más famosos y las API&#8217;s de Google desde el CDN de Google</a>. Google también permite cargar sus API&#8217;s AJAX mediante este método, y entre estas API&#8217;s se encuentra el API AJAX de Google para feeds, que <strong>permite cargar cualquier RSS de cualquier dominio haciendo uso solamente de Javascript</strong>, eliminando la necesidad de crear un proxy en el servidor, ya que Google lo crea por ti. Las <strong>ventajas</strong> están bastante claras:</p>
<ol>
<li>Menos lógica en el servidor.</li>
<li>Menos sobrecarga en el servidor</li>
<li>Las ventajas de usar un CDN externo para cargarJavascript.</li>
</ol>
<p>La dirección del feed RSS que voy a utilizar es la de<a href="http://twitter.com/nosolocodigo"> mi cuenta de Twitter</a>. Para obtener la dirección solamente hay que abrir el enlace que proporciona Twitter en su página web.</p>
<p style="text-align:center">
<img class="aligncenter size-full" title="Obtener la URL del feed de twitter" src="http://www.nosolocodigo.com/wp-content/uploads/2009/08/teitterFeedUrl.png" alt="Obtener la URL del feed de twitter" width="211" height="159" />
</p>
<h2>Usando el objeto FeedControl</h2>
<p>El objeto FeedControl, permite añadir todos los feeds que quieras mediante le método <span class="inline-code">addFeed</span> y luego, mediante el método <span class="inline-code">draw</span>, inyecta el contenido de estos en el elemento DOM especificado.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://www.google.com/jsapi&quot;&gt;&lt;/script&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
	google.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;jquery&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;1.3.2&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	google.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;feeds&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #003366; font-weight: bold;">function</span> inicio<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #003366; font-weight: bold;">var</span> feedControl <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">feeds</span>.<span style="color: #660066;">FeedControl</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                feedControl.<span style="color: #660066;">addFeed</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;http://twitter.com/statuses/user_timeline/29672915.rss&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;Twitter&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                feedControl.<span style="color: #660066;">draw</span><span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;contenedor&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	google.<span style="color: #660066;">setOnLoadCallback</span><span style="color: #009900;">&#40;</span>inicio<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
&nbsp;
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>El <strong>código HTML</strong> se muestra a continuación:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">   &lt;body&gt;
         &lt;div id=&quot;contenedor&quot; &gt; &lt;/div&gt;
   &lt;/body&gt;</pre></td></tr></table></div>

<p >En el div identificado con la palabra <em>&#8220;contenedor&#8221;</em> se cargará automáticamente el contenido del Feed. En la imagen se puede observar el resultado.</p>
<p style="text-align: center;"><img class="aligncenter size-full borde" title="widget de twitter con API AJAX de Google" src="http://www.nosolocodigo.com/wp-content/uploads/2009/08/widgetTwitter01.png" alt="widget de twitter con API AJAX de Google" width="330" height="463" />
</p>
<p>
Luego, viendo el código HTML generado mediante un inspector HTML como Firebug o el que trae IE 8, se puede crear un código CSS para cambiarle la apariencia. Este método es muy cómodo, pero si se necesita más control sobre el código generado se puede utilizar <strong>el objeto Feed, que proporciona más control</strong>.</p>
<h2>Usando el objeto Feed</h2>
<p>El objeto Feed <strong>permite cargar el documento XML que compone el Feed y tratarlo como un objeto JSON </strong>(comportamiento por defecto). Después se itera sobre el objeto JSON y se inyecta directamente sobre el DOM de la página.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://www.google.com/jsapi&quot;&gt;&lt;/script&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
google.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;feeds&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> inicio<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #003366; font-weight: bold;">var</span> feed <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">feeds</span>.<span style="color: #660066;">Feed</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;http://twitter.com/statuses/user_timeline/29672915.rss&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	feed.<span style="color: #660066;">setNumEntries</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">//Por defecto son 4</span>
		feed.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>result<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>result.<span style="color: #660066;">error</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #003366; font-weight: bold;">var</span> contenedor <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;contenedor&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #003366; font-weight: bold;">var</span> tmpStr <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;&quot;</span><span style="color: #339933;">;</span>
				tmpStr <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;&lt;h2&gt; &lt;a href='&quot;</span><span style="color: #339933;">+</span>result.<span style="color: #660066;">feed</span>.<span style="color: #660066;">link</span><span style="color: #339933;">+</span><span style="color: #3366CC;">&quot;'&gt; &quot;</span> <span style="color: #339933;">+</span> result.<span style="color: #660066;">feed</span>.<span style="color: #660066;">title</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;&lt;/a&gt;&lt;/h2&gt;&quot;</span><span style="color: #339933;">;</span>
				contenedor.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">+=</span>  tmpStr<span style="color: #339933;">;</span>
&nbsp;
				<span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> i <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&lt;</span> result.<span style="color: #660066;">feed</span>.<span style="color: #660066;">entries</span>.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #003366; font-weight: bold;">var</span> entry <span style="color: #339933;">=</span> result.<span style="color: #660066;">feed</span>.<span style="color: #660066;">entries</span><span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
					<span style="color: #003366; font-weight: bold;">var</span> tmpStr <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;&quot;</span><span style="color: #339933;">;</span>
					tmpStr <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;&lt;div class='entrada'&gt; &quot;</span><span style="color: #339933;">;</span>
					tmpStr <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;&lt;img src='twitter.png' alt='Icono de Twitter' class='icono' /&gt; &quot;</span><span style="color: #339933;">;</span>
					tmpStr <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;&lt;div class='contenido'&gt;&lt;a href='&quot;</span><span style="color: #339933;">+</span>entry.<span style="color: #660066;">link</span><span style="color: #339933;">+</span><span style="color: #3366CC;">&quot;'&gt;&quot;</span><span style="color: #339933;">+</span> entry.<span style="color: #660066;">contentSnippet</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;&lt;/a&gt;&lt;/div&gt;&quot;</span><span style="color: #339933;">;</span>
					<span style="color: #003366; font-weight: bold;">var</span> fecha <span style="color: #339933;">=</span> entry.<span style="color: #660066;">publishedDate</span>.<span style="color: #660066;">split</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot; &quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					tmpStr <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;&lt;div class='fecha'&gt; &quot;</span> <span style="color: #339933;">+</span> fecha<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot; &quot;</span> <span style="color: #339933;">+</span>fecha<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">+</span><span style="color: #3366CC;">&quot; &quot;</span> <span style="color: #339933;">+</span> fecha<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">3</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot; &quot;</span><span style="color: #339933;">+</span> fecha<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">4</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">+</span><span style="color: #3366CC;">&quot;&lt;/div&gt;&quot;</span><span style="color: #339933;">;</span>
					tmpStr <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;&lt;/div&gt; &quot;</span><span style="color: #339933;">;</span>
					contenedor.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">+=</span>  tmpStr<span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span>
&nbsp;
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
google.<span style="color: #660066;">setOnLoadCallback</span><span style="color: #009900;">&#40;</span>inicio<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Breve <strong>explicación </strong>del código:</p>
<ol>
<li>En el constructor del objeto Feed se pasa como parámetro la URL del feed RSS.</li>
<li>El método <span class="inline-code">setNumEntries</span> establece el número de items descargados del feed.</li>
<li>El método load <strong>carga el feed en la variable result</strong>.</li>
<li><span class="inline-code">result.feed.entries </span> es un array de objetos con la información de cada item del feed. Se itera sobre este array y se va inyectando la información de los feed en el DOM.</li>
</ol>
<p>El código HTML es el mismo que el usado en el primer ejemplo. Luego con un poco de CSS se le da un poco de apariencia al widget.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">&nbsp;
<span style="color: #00AA00;">*</span><span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#contenedor</span><span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">280px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding-left</span><span style="color: #00AA00;">:</span><span style="color: #933;">15px</span><span style="color: #00AA00;">;;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#contenedor</span> h2 a<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#FF4D07</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">font-size</span><span style="color: #00AA00;">:</span><span style="color: #933;">20px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">font-family</span><span style="color: #00AA00;">:</span><span style="color: #ff0000;">&quot;Trebuchet MS&quot;</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
div.entrada<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
&nbsp;
<span style="color: #00AA00;">&#125;</span>
div<span style="color: #6666ff;">.entrada</span> img.icono<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span><span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin-right</span><span style="color: #00AA00;">:</span><span style="color: #933;">15px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
div<span style="color: #6666ff;">.contenido</span> a<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#09399F</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
div.fecha<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">font-family</span><span style="color: #00AA00;">:</span><span style="color: #ff0000;">&quot;Trebuchet MS&quot;</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">font-size</span><span style="color: #00AA00;">:</span><span style="color: #933;">12px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span> <span style="color: #cc00cc;">#7F7F7F</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>El<strong> resultado final</strong> es este:</p>
<p style="text-align:center;">
<img class="size-full wp-image-916  aligncenter" title="widget de twitter creado con el API de Google para feeds" src="http://www.nosolocodigo.com/wp-content/uploads/2009/08/widgetTwitter02.png" alt="widget de twitter creado con el API de Google para feeds" width="318" height="333" />
</p>
<h2>Conclusión</h2>
<p>La potencia de esta API está bastante clara, nos proporciona una forma rápida y cómoda de acceder a los feeds RSS de cualquier parte. Teniendo en cuenta que ahora hay muchos servicios como redes sociales, etc&#8230; que proporcionan esta información mediante RSS, nos <strong>abre un abanico de posibilidades a la hora de mejorar nuestros diseños</strong> añadiendo información en tiempo real sobre, por ejemplo, nuestros últimos tweets.</p>
<h2>Enlaces relevantes</h2>
<ul>
<li>
<a href="http://www.nosolocodigo.com/snipets/widget-twitter/index.html">Ver Ejemplo en funcionamiento</a>
</li>
<li>
         <a href="http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google"> Cargar frameworks y API&#8217;s Javascript desde el CDN de Google</a>
   </li>
<li>
         <a href="http://code.google.com/intl/es-ES/apis/ajaxfeeds/">Sitio oficial del API AJAX de Google para feeds</a>
   </li>
</ul>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds&amp;title=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds&amp;notes=Hoy%20he%20necesitado%20cargar%20un%20RSS%20externo%20desde%20una%20web%2C%20y%20hab%C3%ADa%20que%20hacerlo%20con%20Javascript.%20El%20problema%20es%20que%20desde%20Javascript%20solo%20se%20puede%20hacer%20peticiones%20as%C3%ADncronas%20a%20URL%27s%20de%20tu%20propio%20dominio%2C%20debido%20a%20restricciones%20de%20seguridad.%0D%0A%0D%0AEl%20otro%20d" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds&amp;t=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds&amp;title=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds&amp;annotation=Hoy%20he%20necesitado%20cargar%20un%20RSS%20externo%20desde%20una%20web%2C%20y%20hab%C3%ADa%20que%20hacerlo%20con%20Javascript.%20El%20problema%20es%20que%20desde%20Javascript%20solo%20se%20puede%20hacer%20peticiones%20as%C3%ADncronas%20a%20URL%27s%20de%20tu%20propio%20dominio%2C%20debido%20a%20restricciones%20de%20seguridad.%0D%0A%0D%0AEl%20otro%20d" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=Como%20crear%20un%20widget%20de%20Twitter%20con%20Javascript%20%20y%20el%20API%20AJAX%20de%20Google%20para%20feeds+http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/seguimiento-de-eventos-con-el-api-de-google-analytics' rel='bookmark' title='Permanent Link: Seguimiento de eventos con el API de Google Analytics'>Seguimiento de eventos con el API de Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google' rel='bookmark' title='Permanent Link: Como cargar tu framework Javascript más rápido usando el CDN de Google'>Como cargar tu framework Javascript más rápido usando el CDN de Google</a></li>
<li><a href='http://www.nosolocodigo.com/tutorial-para-desarrollar-componente-con-el-api-de-joomla-1-6-y-google-maps' rel='bookmark' title='Permanent Link: Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps'>Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Como cargar tu framework Javascript más rápido usando el CDN de Google</title>
		<link>http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google</link>
		<comments>http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google#comments</comments>
		<pubDate>Fri, 21 Aug 2009 10:18:48 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[CDN]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/?p=884</guid>
		<description><![CDATA[El API de bibliotecas AJAX de Google es una red de distribución de contenidos (CDN) creada por Google, que ofrece un servicio para que los desarrolladores web puedan cargar los frameworks Javascript más populares desde ella, evitando así la necesidad de alojar los ficheros Javascript en el servidor de la aplicación. Últimamente he hecho bastante [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds' rel='bookmark' title='Permanent Link: Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds'>Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds</a></li>
<li><a href='http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics' rel='bookmark' title='Permanent Link: Controla las imágenes rotas de tu web con jQuery y Google Analytics'>Controla las imágenes rotas de tu web con jQuery y Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics' rel='bookmark' title='Permanent Link: Como llevar las estadísticas de los comentarios de tu blog con Google Analytics'>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><img class="alignright size-full wp-image-894 borde" style="margin: 20px;" title="API de bibliotecas AJAx de Google" src="http://www.nosolocodigo.com/wp-content/uploads/2009/08/ajaxlibs.png" alt="API de bibliotecas AJAx de Google" width="203" height="148" /></p>
<p>El <strong><a href="http://code.google.com/intl/es-ES/apis/ajaxlibs/">API de bibliotecas AJAX de Google</a></strong> es una red de distribución de contenidos (<strong>CDN</strong>) creada por Google, que ofrece un servicio para que los desarrolladores web puedan cargar los frameworks Javascript más populares desde ella, evitando así la necesidad de alojar los ficheros Javascript en el servidor de la aplicación.</p>
<p>Últimamente he hecho bastante uso de este CDN de Google, por lo que me he decidido a escribir este post donde expongo las <strong>ventajas que he encontrado de usar este servicio de Google </strong>y también las posibles desventajas.</p>
<h2>Ventajas</h2>
<ul>
<li><strong>Velocidad de transmisión</strong>. Google tiene montada una infraestructura descomunal y seguramente tenga mayor velocidad de transmisión en sus conexiones que tu servidor.</li>
<li><strong>Latencia</strong>. Google aloja las librerías en varios servidores distribuidos por todo el mundo, por lo tanto, cada usuario descargará la librería desde el sitio más cercano posible, disminuyendo así la latencia introducida por los routers en cada salto. Tu seguramente solo tengas un servidor, por lo tanto si un usuario de Argentina quiere bajarse el fichero desde España, la latencia aumentará.</li>
<li><strong>Paralelismo</strong>. Al alojarse el fichero en otro dominio, el navegador web puede descargarlo paralelamente junto con los ficheros de tu aplicación (hojas de estilo etc..). Normalmente los navegadores tienen un número máximo de descargas paralelas para un mismo dominio, y una vez llegado al tope hay que esperar. Este hecho ralentiza la descarga de la página. Usando el CDN de Google, se evita aumentar la cola de descargas para el dominio de tu aplicación.</li>
<li><strong>Caché</strong>. Este CDN es usado por muchas aplicaciones online, por tanto es muy probable que un usuario que llegué a tu sitio web ya tenga el framework Javascript alojado en la caché si previamente a usado otra aplicación que implemente el API de bibliotecas AJAX de Google. De esta forma la velocidad se incrementa drásticamente por que ni siquiera hay necesidad de bajarse el fichero.</li>
<li><strong>Comodidad.</strong> Aunque parezca una tontería, a mi me resulta mucho más cómodo añadir una línea de código y disponer del framework en cuestión, que tener que bajarmelo del sitio oficial, moverlo al directorio de scripts (o subirlo al servidor por FTP) y referenciarlo. (Soy un poco vago, lo sé)</li>
</ul>
<h2>Desventajas</h2>
<ul>
<li><strong><a href="http://www.anieto2k.com/2009/05/14/google-cae-y-caemos-todos/">Google también es humano</a></strong> (¿Es esto es una desventaja?)</li>
<li>¿Alguna más?</li>
</ul>
<p>Para implementarlo se pueden usar<strong> dos métodos</strong>:</p>
<ol>
<li> Cargar el framework Javascript <strong>usando el método load del API</strong> de bibliotecas AJAX</li>
<li>Cargar el framework <strong>directamente desde la URL</strong> proporcionada por Google</li>
</ol>
<h2>Cargar el framework usando el API de bibliotecas AJAX</h2>
<p>Este método es más potente por que permite cargar el framework en el momento necesario, ya que es posible que no siempre sea necesario cargar todo un framework Javascript al inicio de la página. Su ventaja principal es que se puede <strong>cargar el framework programáticamente</strong>.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://www.google.com/jsapi&quot;&gt;&lt;/script&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
 <span style="color: #006600; font-style: italic;">/*
Se puede especificar solamente la rama, por ejemplo:
  google.load(&quot;jquery&quot;, &quot;1.3&quot;);
cargaría la última versión de la rama 1.3, es decir, la 1.3.2
y 
   google.load(&quot;jquery&quot;, &quot;1&quot;);
cargaría la última versión de la rama 1, es decir la 1.3.2
&nbsp;
*/</span>
  google.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;jquery&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;1.3.2&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  google.<span style="color: #660066;">setOnLoadCallback</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
       <span style="color: #006600; font-style: italic;">// Utilizar este método en lugar del metodo ready del framework</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<h2>Cargar el framework desde la URL de Google</h2>
<p>Este método es más sencillo, aunque menos potente. De esta forma se<strong> carga siempre el framework al inicio</strong>.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&quot;&gt;&lt;/script&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
  $<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #006600; font-style: italic;">// Utilizar el método ready del framework cargado</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Si se va a hacer uso obligatorio del framework en cuestión, yo utilizaría el segundo método, ya que evita descargarse el fichero<em> &#8220;jsapi&#8221;</em> y quita complejidad.</p>
<h2>Conclusión</h2>
<p>El API de bibliotecas AJAX de Google es otro gran servicio ofrecido por Google, que permite cargar Frameworks de Javascript de una manera más <strong>rápida, cómoda y eficiente</strong>. Las <strong>ventajas </strong>superan con creces las desventajas (si es que las tiene), por lo tanto, <strong>recomiendo totalmente su uso</strong>, tanto en desarrollo como en producción.</p>
<h2>Enlaces relevantes</h2>
<ul>
<li> <a href="http://www.anieto2k.com/2008/05/27/google-ajax-libraries-api-ajax-sobre-la-arquitectura-google/">Post de Anieto2k</a> muy bien explicado</li>
<li> <a href="http://code.google.com/intl/es/apis/ajaxlibs/documentation/">Documentación oficial</a></li>
<li> <a href="http://code.google.com/intl/es-ES/apis/ajax/documentation/">Documentación oficial para cargar las APIs de Google</a></li>
</ul>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google&amp;title=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google&amp;notes=%20El%20API%20de%20bibliotecas%20AJAX%20de%20Google%20es%20una%20red%20de%20distribuci%C3%B3n%20de%20contenidos%20%28CDN%29%20creada%20por%20Google%2C%20que%20ofrece%20un%20servicio%20para%20que%20los%20desarrolladores%20web%20puedan%20cargar%20los%20frameworks%20Javascript%20m%C3%A1s%20populares%20desde%20ella%2C%20evitando%20as%C3%AD%20la%20neces" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google&amp;t=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google&amp;title=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google&amp;annotation=%20El%20API%20de%20bibliotecas%20AJAX%20de%20Google%20es%20una%20red%20de%20distribuci%C3%B3n%20de%20contenidos%20%28CDN%29%20creada%20por%20Google%2C%20que%20ofrece%20un%20servicio%20para%20que%20los%20desarrolladores%20web%20puedan%20cargar%20los%20frameworks%20Javascript%20m%C3%A1s%20populares%20desde%20ella%2C%20evitando%20as%C3%AD%20la%20neces" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=Como%20cargar%20tu%20framework%20Javascript%20m%C3%A1s%20r%C3%A1pido%20usando%20el%20CDN%20de%20Google+http%3A%2F%2Fwww.nosolocodigo.com%2Fcomo-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds' rel='bookmark' title='Permanent Link: Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds'>Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds</a></li>
<li><a href='http://www.nosolocodigo.com/controla-las-imagenes-rotas-con-jquery-y-google-analytics' rel='bookmark' title='Permanent Link: Controla las imágenes rotas de tu web con jQuery y Google Analytics'>Controla las imágenes rotas de tu web con jQuery y Google Analytics</a></li>
<li><a href='http://www.nosolocodigo.com/como-llevar-las-estadisticas-de-los-comentarios-de-tu-blog-con-google-analytics' rel='bookmark' title='Permanent Link: Como llevar las estadísticas de los comentarios de tu blog con Google Analytics'>Como llevar las estadísticas de los comentarios de tu blog con Google Analytics</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/como-cargar-tu-framework-javascript-mas-rapido-usando-el-cdn-de-google/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Nueva API de Google: Google Contacts API</title>
		<link>http://www.nosolocodigo.com/nueva-api-de-google-google-contacts-api</link>
		<comments>http://www.nosolocodigo.com/nueva-api-de-google-google-contacts-api#comments</comments>
		<pubDate>Thu, 13 Mar 2008 10:14:58 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[APIs]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[contacts]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://www.nosolocodigo.com/nueva-api-de-google-google-contacts-api</guid>
		<description><![CDATA[Google ha sacado su nueva API para administrar contactos, con esta Api se posibilita a los programadores acceder a la lista de contactos de Google, que es compartida entre Gmail, Google Calendar y Google Reader entre otras… Si te apetece trastear con ella, échale un ojo a la guía para desarrolladores y a la referencia [...]


Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/tutorial-para-desarrollar-componente-con-el-api-de-joomla-1-6-y-google-maps' rel='bookmark' title='Permanent Link: Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps'>Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps</a></li>
<li><a href='http://www.nosolocodigo.com/google-publica-google-ajax-translation-api' rel='bookmark' title='Permanent Link: Google publica Google AJAX Translation API'>Google publica Google AJAX Translation API</a></li>
<li><a href='http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds' rel='bookmark' title='Permanent Link: Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds'>Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api&amp;source=nosolocodigo&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><b>Google</b> ha sacado su nueva <a href="http://code.google.com/apis/contacts/">API para administrar contactos</a>, con esta Api se posibilita a los programadores <b>acceder a la lista de contactos de Google</b>, que es compartida entre Gmail, Google Calendar  y Google  Reader entre otras…</p>
<p>Si te apetece trastear con ella, échale un  ojo a la<a href="http://code.google.com/apis/contacts/developers_guide_protocol.html"> guía para desarrolladores </a> y a la <a href="http://code.google.com/apis/contacts/reference.html">referencia</a></p>
<p>En el <a href="http://google.dirson.com/">blog de Dirson</a> ya han hecho un <a href="http://www.google.com/url?sa=D&#038;q=http://google.dirson.com/lab/googlecontacts/readcontacts.php">primer ejemplo usando el API</a>.</p>
<p>Otra nueva API interesante que nos ofrece Google y que habrá que aprender&#8230;</p>



Compartir:


	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api&amp;title=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API&amp;notes=Google%20ha%20sacado%20su%20nueva%20API%20para%20administrar%20contactos%2C%20con%20esta%20Api%20se%20posibilita%20a%20los%20programadores%20acceder%20a%20la%20lista%20de%20contactos%20de%20Google%2C%20que%20es%20compartida%20entre%20Gmail%2C%20Google%20Calendar%20%20y%20Google%20%20Reader%20entre%20otras%E2%80%A6%0D%0ASi%20te%20apetece%20trastea" title="del.icio.us"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://barrapunto.com/submit.pl?subj=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API&amp;story=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="BarraPunto"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/barrapunto.png" title="BarraPunto" alt="BarraPunto" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bitacoras.com/anotaciones/http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="Bitacoras.com"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/bitacoras.png" title="Bitacoras.com" alt="Bitacoras.com" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api&amp;t=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API" title="Facebook"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api&amp;title=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API&amp;annotation=Google%20ha%20sacado%20su%20nueva%20API%20para%20administrar%20contactos%2C%20con%20esta%20Api%20se%20posibilita%20a%20los%20programadores%20acceder%20a%20la%20lista%20de%20contactos%20de%20Google%2C%20que%20es%20compartida%20entre%20Gmail%2C%20Google%20Calendar%20%20y%20Google%20%20Reader%20entre%20otras%E2%80%A6%0D%0ASi%20te%20apetece%20trastea" title="Google Bookmarks"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://meneame.net/submit.php?url=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="Meneame"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/meneame.png" title="Meneame" alt="Meneame" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.netvibes.com/share?title=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API&amp;url=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="Netvibes"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="Technorati"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.friendfeed.com/share?title=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API&amp;link=http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="FriendFeed"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/friendfeed.png" title="FriendFeed" alt="FriendFeed" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API%20-%20http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="Twitter"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://hellotxt.com/?status=Nueva%20API%20de%20Google%3A%20Google%20Contacts%20API+http%3A%2F%2Fwww.nosolocodigo.com%2Fnueva-api-de-google-google-contacts-api" title="HelloTxt"><img src="http://www.nosolocodigo.com/wp-content/plugins/sociable/images/hellotxt.png" title="HelloTxt" alt="HelloTxt" class="sociable-hovers" /></a>


<br/><br/>

<p>Artículos relacionados:<ol><li><a href='http://www.nosolocodigo.com/tutorial-para-desarrollar-componente-con-el-api-de-joomla-1-6-y-google-maps' rel='bookmark' title='Permanent Link: Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps'>Tutorial para desarrollar componente con el API de Joomla 1.6 y Google Maps</a></li>
<li><a href='http://www.nosolocodigo.com/google-publica-google-ajax-translation-api' rel='bookmark' title='Permanent Link: Google publica Google AJAX Translation API'>Google publica Google AJAX Translation API</a></li>
<li><a href='http://www.nosolocodigo.com/como-crear-un-widget-de-twitter-con-javascript-y-el-api-ajax-de-google-para-feeds' rel='bookmark' title='Permanent Link: Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds'>Como crear un widget de Twitter con Javascript  y el API AJAX de Google para feeds</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.nosolocodigo.com/nueva-api-de-google-google-contacts-api/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 2.578 seconds -->
