<?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>Howtoweb.it &#187; youtube</title>
	<atom:link href="http://www.howtoweb.it/tag/youtube/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.howtoweb.it</link>
	<description>Tutorial e risorse per chi lavora sul web</description>
	<lastBuildDate>Fri, 25 Jun 2010 09:04:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Integrare le API di Youtube con PrettyPhoto</title>
		<link>http://www.howtoweb.it/tutorial/integrare-api-di-youtube-prettyphoto/</link>
		<comments>http://www.howtoweb.it/tutorial/integrare-api-di-youtube-prettyphoto/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 05:00:34 +0000</pubDate>
		<dc:creator>Mauro Accornero</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://www.howtoweb.it/?p=510</guid>
		<description><![CDATA[
L&#8217;integrazione del video nei siti web è ormai diventata una pratica comune, l&#8217;inserimento in una pagina web è molto semplice soprattutto se supportato da un servizio che ospita e gestisce i contenuti video come Youtube.
Nell&#8217;articolo di oggi mostrerò una semplice integrazione tra le Youtube API e il plugin per JQuery Prettyphoto per ottenere una galleria [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-515" title="esempio_youtube_api" src="http://www.howtoweb.it/wp-content/uploads/2009/08/esempio_youtube_api.jpg" alt="esempio_youtube_api" width="580" height="250" /></p>
<p>L&#8217;integrazione del video nei siti web è ormai diventata una pratica comune, l&#8217;inserimento in una pagina web è molto semplice soprattutto se supportato da un servizio che ospita e gestisce i contenuti video come Youtube.</p>
<p>Nell&#8217;articolo di oggi mostrerò una semplice integrazione tra le Youtube API e il plugin per JQuery Prettyphoto per ottenere una galleria di video in stile Youtube da inserire nella pagina del proprio sito.</p>
<p>Le Youtube API non sono altro che librerie messe a disposizione degli sviluppatori per gestire con semplicità i contenuti di Youtube su un sito esterno. E&#8217; possibile integrarle con diversi linguaggi e tecnologie, nell&#8217;esempio di oggi vedremo com&#8217;è possibile utilizzarle con javascript. Per ulteriori informazioni è possibile consultare la relativa <a title="Youtupe API" href="http://code.google.com/apis/youtube/getting_started.html" target="_blank">documentazione</a>.</p>
<p>PrettyPhoto è un plugin per jquery simile in tutto e per tutto a Lightbox (per prototype e scriptaculus) ulteriori informazioni sono disponibili sul sito ufficiale di <a title="PrettyPhoto" href="http://www.no-margin-for-errors.com/projects/prettyPhoto-jquery-lightbox-clone/" target="_blank">PrettyPhoto.</a></p>
<p><span id="more-510"></span></p>
<p>Per questa soluzione sono partito dall&#8217;<a title="Youtube API Example" href="http://gdata.ops.demo.googlepages.com/yt_json_codelab.html#attractive" target="_blank">esempio fornito da Youtube</a> nella rispettiva documentazione. Lo script proposto carica dal canale desiderato le thumbnails dei video e il rispettivo titolo, caricando inoltre il player che esegue il filmato sul quale viene cliccato.</p>
<p>Nel nostro caso desidero mantenere le thumbnails e i titoli ma preferisco evitare che il player occupi spazio nella pagina, modificherò quindi lo script per permettere l&#8217;apertura del video in un div grazie al plugin PrettyPhoto.</p>
<p>Per iniziare creiamo la nostra pagina html, avendo l&#8217;accortezza di lasciare un div con id nel quale verranno caricate le thumbnails dei video.</p>
<h3>Caricare i dati da Youtube</h3>
<p>Ora possiamo iniziare a creare il javascript che richiamerà i dati necessari da Youtube.</p>
<p>Per prima cosa inseriamo un link alle api di youtube, dove specificheremo che cosa selezionare (nel nostra caso andremo a prelevare tutti i video del canale di GoogleDevelopers).</p>
<pre>&lt;script type="text/javascript"
src="http://gdata.youtube.com/feeds/users/GoogleDevelopers/uploads?alt=json-in-script&amp;callback=getVideos"&gt;
&lt;/script&gt;</pre>
<p>Questo link ci permette di selezionare tutti i feed di un determinato utente (GoogleDevelopers) esenguendo una funzione javascript di callback (getVideos).</p>
<p>Andiamo quindi a definire la nostra funzione nella pagina.</p>
<pre>&lt;script type="text/javascript"&gt;
function getVideos(data) {

}
&lt;/script&gt;</pre>
<p>All&#8217;interno di questa funzione filtreremo i dati e li utilizzeremo per ottenere l&#8217;output desiderato.</p>
<p>Per prima cosa definiamo un array per i dati ottenuti</p>
<pre>var feed = data.feed;
var entries = feed.entry || [];</pre>
<p>Ora possiamo estrarre i dati utilizzando un ciclo for</p>
<pre>for (var i = 0; i &lt; entries.length; i++) {
}</pre>
<p>All&#8217;interno del quale ricaviamo i dati che ci servono</p>
<pre>var entry = entries[i];
var title = entry.title.$t.substr(0, 35);
var thumbnailUrl = entries[i].media$group.media$thumbnail[0].url;
var videoUrl = entries[i].media$group.media$player[0].url;</pre>
<p>Per gestire in maniera corretta l&#8217;output salviamo i dati relativi ai feed all&#8217;interno delle rispettive vairabili, in seguito raggruppiamo i dati con il codice html necessario all&#8217;impaginazione.</p>
<pre>html.push('&lt;div class="singleVideo"&gt;&lt;a rel="prettyPhoto[flash]" href="',videoUrl,'" title="',title,'"&gt;',
'&lt;img src="', thumbnailUrl, '"/&gt;','&lt;/a&gt;',
'&lt;a rel="prettyPhoto[flash]" href="',videoUrl,'" title="',title,'"&gt;&lt;span&gt;',title,'...&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;');</pre>
<p>Il risultato per ogni output del ciclo nell&#8217;html  sarà:</p>
<pre>&lt;div class="singleVideo"&gt;
&lt;a rel="prettyPhoto[flash]" href="[URLVIDEO]" title="[TITOLO VIDEO]"&gt;
&lt;img src="[THUMBNAILVIDEO]"/&gt;
&lt;/a&gt;
&lt;a rel="prettyPhoto[flash]" href="[URLVIDEO]" title="[TITOLO VIDEO]"&gt;
&lt;span&gt;[TITOLO VIDEO]...&lt;/span&gt;&lt;/a&gt;
&lt;/div&gt;</pre>
<p>L&#8217;ultima riga stamperà il risultato nell&#8217;elemento con l&#8217;id specificato</p>
<pre>document.getElementById('videoContainer').innerHTML = html.join('');</pre>
<h3>Aggiungiamo PrettyPhoto</h3>
<p>Avendo già inserito gli attributi <em>rel </em>per i link non resta che aggiungere Jquery e il plugin PrettyPhoto nella pagina</p>
<pre>&lt;script type="text/javascript" src="javascript/jquery.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="javascript/prettyPhoto.js"&gt;&lt;/script&gt;</pre>
<p>ed inserire le opzioni per il desiderato funzionamento di PrettyPhoto</p>
<pre>$(function() {
$("a[rel^='prettyPhoto']").prettyPhoto({
animationSpeed: 'normal',
padding: 40,
opacity: 0.35,
showTitle: true,
allowresize: true,
counter_separator_label: ' di ',
theme: 'light_square',
callback: function(){}
});
});</pre>
<p>Il risultato è visibile in questa <a title="Esempio di integrazione di API di Youtube con PrettyPhoto" href="http://www.howtoweb.it/wp-content/uploads/esempio_youtube/esempio_youtube.html" target="_self">demo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.howtoweb.it/tutorial/integrare-api-di-youtube-prettyphoto/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
