Playlist youtube automatique basée sur PHP et XSLT

Playlist youtube automatique basée sur PHP et XSLT - Script gratuit

J'ai eu dernièrement à développer un module de playlist vidéo automatisé basé sur youtube. Voici une variante de cette playlist youtube automatique basée sur PHP / XSLT / Javascript et Gdata. Je me suis amusé à mettre un peu de responsive design, de l'URL Rewriting et une pagination. Edit : Script Obsolète Nouvelle version : Youtube Playlist PHP

Pour cet exemple, la playlist est alimenté par une recheche via GDATA qui renvoie dans notre cas un flux XML.
Vous devrez à ce titre vous munir d'une clé développeur pour accéder à l'API (http://code.google.com/apis/youtube/dashboard/).

Php servira à instancier la requête et à envoyer les paramêtres à la feuille XSL qui produira une sortie HTML.

Pour la mise en forme de la galerie XSLT se charge du gros oeuvre, puis un peu de CSS et du JS avec les librairies jquery elastislide.js et Jquery easing.1.3.js

Les players Youtube sont gérés via SWFObject et un peu de JS. 

Pour finir j'ai rajouter une pagination qui permet de parcourir par blocs les vidéos disponibles. tous les paramêtres sont dans L'url.

Voir la démo : Playlist vidéo de Sting

Version "URL Rewriting" : Playlist vidéo de The Police

Voir le code

Télécharger ce script gratuit (ZIP) : Obsolette voir ici la nouvelle version de playlist youtube V3

Elle est pas Mimi cette galerie vidéo youtube sur smartphone ?Pour installer ce script, décompressez l'archive ZIP puis envoyer le tout dans un dossier sur votre serveur. Modifiez le fichier .htaccess pour l'url-rewriting. 

Si vous ne souhaitez pas utiliser l'url rewiting il faudra décommenter une partie du code (ligne 100) XSLT et commenter la navigation/pagination active  (ligne 105) .

Pour utiliser ce script c'est très simple, dans la démo 01 voici l'url  : http://www.xtendo.fr/gratuit/youtube-playlist/playlist-video-search.php?s=sting&sind=1&max=20

- Le premier paramètre "s" est le ou les mots clés, remplacez Sting par "stevie+wonder", validez et "Super...stition !".
- Le second paramètre "sind" est le numéro de la première vidéo affichée, remplacez le par 5, desormais la playliste commence à la cinquième vidéo.
- Le troisième paramètre "max" est le nombre maxi de vidéos affichées par page, remplacez 20 par 5, désormais vous n'avez plus que 5 vidéos par pages.

Vous pouvez modifier ces fichiers comme vous le souhaitez, sachez qu'il est possible d'afficher une chaine youtube plutôt qu'une recherche par mots clés. 

"Bon playlistage"

Johan Puisais


Pour continuer votre lecture sur la thématique Scripts gratuits

Partager l'article sur :

Lien permanent :

Tags : Scripts gratuits, Développement, Outils et services web,

Commenter et noter cet article

Les commentaires pour cet article

- Poitiers France
Note pour l'article : 4 sur 5

Réponse à : Carl cdossert. Merci et bonjour. ce problème vient visiblement de restrictions de la part de Google. je m'y suis penché déjà sans succés, désolé.

Ecrit le : 06/08/2013 à 14h18


-
Note pour l'article : 5 sur 5

Bonjour, Tout d'abord, merci pour le partage ! Je trouve votre code très intéressant. Cependant je remarque un petit problème et je ne sais pas comment le corriger : Au chargement de la page, quand on clic sur FULL SCREEN, pour vois la video en plein écran, ca fonctionne, MAIS après avoir cliquer sur une vignette pour voir une autre video : le Full Screen n'est plus accessible !

Ecrit le : 25/05/2013 à 09h47


- Poitiers France
Note pour l'article : 5 sur 5

Bonjour Marek, je n'ai pas testé le parsing xslt de ce script avec asp.net et ne sais ce qui coince dans ton cas. Peut-être les passage de paramètres à la feuille xslt... Merci pour tes compliments :-)

Ecrit le : 18/07/2012 à 14h42


-
Note pour l'article : 5 sur 5

Excellent script, merci !!! J'ai essayé de l’implémenter dans C# avec asp.net, que je genere ma page, j'ai bien tous le contenu dans le , malheureusement, le body est vide. je ne sais pas lequel de ces boucles dans xsl est vide. tu as une idée?

Ecrit le : 17/07/2012 à 13h25


- Poitiers France
Note pour l'article : 5 sur 5

Oui Xavier, regarde ton mail, quelques pistes, npus allons bien trouver ce petit Pb. ;-) Bien à toi Johan

Ecrit le : 22/05/2012 à 16h13


- IDF France
Note pour l'article : 5 sur 5

Bonjour, Merci pour le partage de ce code qui me semble vraiment bien :) J'ai essayé de suivre à la lettre votre recommandation mais j'ai un message d'erreur... :s J'ai fais la modification pour envoyer vers ma chaine youtube... J'ai l'impression que cela viens de ma clef non? j'ai noté la suite de caractere qui m'ai donné par google... :s Merci d'avance pour votre aide... http://bia.teambattlefield.fr/modules/chaine_youtube/playlist-video-search.php

Ecrit le : 22/05/2012 à 12h42


- Poitiers
Note pour l'article : 5 sur 5

Bonjour Pierre-François, merci pour vos compliments :-) Voici la partie de code à modifier dans le fichier playlist-video-search.php : $xmlDoc->load("https://gdata.youtube.com/feeds/api/users/" . $username . "/uploads" . "?start-index=" . $startindex . "&max-results=" . $maxresults . "&key=Votre clé API ici"); à la place de : $xmlDoc->load("http://gdata.youtube.com/feeds/videos?format=5&vq=" . $searchterm . "&start-index=" . $startindex . "&max-results=" . $maxresults . "&key=Votre clé dévéloppeur GDATA"); Je serais heureux de voir votre adaptation du script, bon développement :-)

Ecrit le : 03/03/2012 à 16h18


-
Note pour l'article : 5 sur 5

Superbe script!!! De belle qualité. Pourriez vous expliquer comment intégrer une chaine plutot qu'une liste aléatoire? Ce script m'intéresse fortement!! Merci beaucoup

Ecrit le : 02/03/2012 à 23h54


-
Note pour l'article : 5 sur 5

Bonjour Nicolas, Voici la partie de code à modifier dans le fichier php :
$xmlDoc->load("https://gdata.youtube.com/feeds/api/users/" . $username . "/uploads" . "?start-index=" . $startindex . "&max-results=" . $maxresults . "&key=Votre clé API ici");

Ecrit le : 09/02/2012 à 13h07


-
Note pour l'article : 5 sur 5

Bonjour, Petite question, comment insérer notre chaine Youtube plutôt qu'une recherche par mot clef ?

Ecrit le : 08/02/2012 à 10h15