SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 284 visiteurs en ce moment

Accueil > Rédaction > Documents pour rédaction > oEmbed > oEmbed

oEmbed

4 décembre 2013 – par b_b, Cerdic – 103 commentaires

30 votes

C’est quoi ce truc ?

oEmbed est un protocole ouvert qui permet d’insérer le contenu d’une page web dans une autre page. Le contenu inséré peut être de plusieurs types : photo, vidéo, URL ou extrait HTML.

L’échange d’information a lieu entre un site client et un site serveur. Par exemple, le site client peut afficher une représentation d’une page web telle qu’une image ou une vidéo. Le serveur doit disposer d’un service utilisant l’API oEmbed pour permettre aux clients de récupérer les informations de la représentation à afficher.

Comment ça marche ?

Du côté client, l’utilisation du plugin est simple. Par défaut le plugin transforme automatiquement :

  • les URL entre < et > n’importe où dans le texte : <http://www.flickr.com/photos/dan1977/5087662622/>
  • les URL toutes seules dans un paragraphe : deux retours à la ligne, URL, puis deux retours à la ligne.

Si le site vers lequel pointe l’URL implémente l’API oEmbed, celle-ci est complétée par un extrait du contenu fourni par le site. Par exemple, si on insère l’URL suivante dans le texte d’un article :

http://www.flickr.com/photos/dan1977/5087662622/

Celle-ci sera automatiquement remplacée par le contenu suivant :

Avec SPIP 3, le plugin insère aussi ces traitements dans le formulaire d’ajout de documents de SPIP (dans la partie documents distants). Il suffit d’ajouter un document distant dont l’URL est celle de la page où se trouve le contenu à récupérer. Voir la vidéo ci-dessous pour une petite démonstration.

http://spip.arscenic.tv/medias/r-d/plugins/multimedia/article/demo-du-plugin-oembed

Une fois le document ajouté, vous pouvez l’insérer dans le contenu de votre article comme n’importe quel document.

  • si le document est une image, vous pouvez l’insérer avec le raccourci <imgXX>
  • si le document est une vidéo, vous pouvez l’insérer avec le raccourci <embXX>

Et je peux faire ça avec n’importe quel site ?

Non, pour des raisons de sécurité le plugin utilise une liste blanche de sites autorisées. Par défaut, cette liste contient les sites suivants : youtube, blip.tv, vimeo, dailymotion, flickr, soundcloud, slideshare, yfrog, instagram, rdio, huffduffer, nfb, dotsub, clikthrough, kinomap, photobucket, smugmug, meetup, wordpress, blogs.cnn, techcrunch, my.opera, viddler et collegehumor (consulter la liste complète).

Pour ajouter un nouveau site serveur (ou provider) à la liste blanche il vous faudra deux informations :

  • scheme : schéma d’URL correspondant au site (vous pouvez utiliser * comme wildcard)
  • endpoint : URL à laquelle le service oEmbed du site est disponible

Par exemple, pour ajouter le site deviantART à la liste blanche il suffit d’ajouter un provider avec les paramètres suivants :

  • scheme : http://*.deviantart.com/art/*
  • endpoint : http://backend.deviantart.com/oembed

L’ajout peut se faire à l’aide du pipeline oembed_lister_providers ou en personnalisant le contenu de la variable globale $GLOBALS['oembed_providers'].

Par exemple, dans un plugin de préfixe monplugin en déclarant le pipeline suivant dans plugins/monplugin/monplugins_pipelines.php :

function monplugin_oembed_lister_providers($providers){

        $providers['http://*.deviantart.com/art/*'] = 'http://backend.deviantart.com/oembed';

        return $providers;
}

Ou sans utiliser de plugin, directement dans votre fichier config/mes_options.php :

$GLOBALS['oembed_providers'] = array(
        'http://*.deviantart.com/art/*' => 'http://backend.deviantart.com/oembed',
);

Voici une liste non exhaustive de providers supplémentaires au format JSON.

Traitements automatiques

La page de configuration vous permet aussi de paramétrer les automatismes du plugin :

  • largeur/hauteur par défaut des blocs d’embed
  • activer/désactiver la transformation automatique des URLs dans le texte : cela concerne les URLs toutes seules dans un paragraphes, car les URLs entre < et > seront toujours converties ;
  • activer/désactiver la détection automatique des providers sans tenir compte de la liste blanche (attention aux failles XSS).

Fonctions de post-traitement

Il est possible de déclarer des fonctions de post-traitement qui agiront sur les données renvoyées par le site source (ou provider). Le nommage de ces fonctions suit la convention suivante oembed_posttraite_{$provider_name}_$type[_dist] afin de permettre de déclarer un post-traitement en fonction de la source de données.

Par exemple, le plugin fournit une fonction de post-traitement pour soundcloud :

function oembed_input_posttraite_soundcloud_rich_dist($data){

        $data['media'] = 'sound';
        $data['html'] = preg_replace(",width=['\"][0-9]+['\"],i",'width="100%"',$data['html']);

        if (!isset($data['thumbnail_url'])){
                $data['thumbnail_url'] = find_in_path("oembed/input/vignettes/soundcloud.png");
        }

        return $data;
}

Cette fonction définit que le contenu renvoyé est du son, puis elle modifie la largeur du lecteur audio, et pour finir elle définit une vignette par défaut si celle-ci n’est pas présente.

Voir la source sur la zone.

Côté serveur

Le plugin ajoute des liens de déclaration oEmbed dans l’entête des pages du site. Ces liens permettent aux autres sites de découvrir que votre site est « compatible » oEmbed et qu’il peut donc être utilisé en tant que fournisseur de contenu (ou provider).

Les paramètres à fournir pour permettre à un autre site d’ajouter le votre à sa liste blanche de providers sont les suivants :

Pour que l’adresse du service fonctionne il faut avoir activé le fichier .htaccess fourni par défaut dans SPIP.

Le contenu renvoyé lors d’une requête oembed est généré par les squelettes situés dans le répertoire plugins/oembed/oembed/output/modeles. Ces squelettes sont personnalisables, vous pouvez y insérer des boucles et balises afin de renvoyer le code d’embed d’un document audio/vidéo, une image tirée du portfolio d’un article, etc.

Par exemple, pour une requête depuis l’URL http://contrib.spip.net/GIS-4 le contenu renvoyé est le suivant :

{
   "version": "1.0",
   "type": "rich",
   "provider_name": "SPIP-Contrib",
   "provider_url": "http://contrib.spip.net",
   "title": "GIS 4",
   "author_name": "b_b",
   "width": "480",
   "height": "295",
   "url": "http://contrib.spip.net/GIS-4",
   "html": "<h4 class='title'><a href='http://contrib.spip.net/GIS-4'>GIS 4</a></h4><blockquote class='spip'>\n<p>Présentation et nouveautés <br class='autobr' />\nLa version 4 de GIS abandonne la libraire Mapstraction au profit de Leaflet. Cette librairie permet de s’affranchir des librairies propriétaires tout en gardant les mêmes fonctionnalités, elle propose même de nouvelles fonctions.<br class='autobr' />\nCette nouvelle version de GIS permet d’utiliser différents fonds de carte sans avoir à charger des scripts externes, seuls les scripts locaux de Leaflet et des plugins nécessaires sont chargés dans vos pages. À ce jour, le plugin propose plus de&amp;amp;amp;amp;nbsp;(...)</p>\n</blockquote>\n"
}

Voir le code en ligne.

Et voici ce que donne l’affichage depuis le site SPIP client :

Voir en ligne : http://plugins.spip.net/oembed

Dernière modification de cette page le 10 décembre 2015

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 20 novembre à 15:53, par Yohooo En réponse à : oEmbed

    Hello,

    Lorsque je copie un modele oembed dans mon répertoire squelette pour le modifier, je rencontre une erreur m’indiquant que le filtre Filtre oembed_recuperer_data est non défini.

    Quelqu’un pourrai m’indiquer pourquoi celui-ci ne marche pas dans ces circonstances ?

    ( pour info, je désire simplement supprimer le titre et le descriptif sous les vidéos et ajouter uniquement le titre au dessus des vidéos ).

    Répondre à ce message

  • Le 22 janvier 2014 à 08:57, par erational En réponse à : oEmbed

    une petite astuce pour utiliser oEmbed dans vos squelettes.
    Par exemple vous avez un champs url_video qui stocke l’URL des vidéos.

    Pour rendre la vidéo, depuis une page, on pourra alors utiliser le modèle fourni par le plugin

    1. #MODELE{oembed,url=#URL_VIDEO}
    • Le 26 mai 2014 à 21:12, par Julien En réponse à : oEmbed

      Bonjour,

      Dans la table spip_documents, il existe, après installation du plugin, le champs « oembed » avec l’url du media en question. Y’a t’-il pas un moyen d’appeler ce champs déjà existant ex : #BALISE_OEMBED au lieu de devoir en créer un nouveau champs avec l’exemple de Ertaional ci-dessus ?

      Merci.

    • Le 27 mai 2014 à 10:37, par Julien En réponse à : oEmbed

      Heu j’ai rien dit :-)

      La balise #OEMBED est parfaitement fonctionnel de base avec :

      #MODELE{oembed,url=#OEMBED}

    • Le 5 novembre 2014 à 19:26, par DD En réponse à : oEmbed

      Bonjour,

      J’ai pas tout compris...
      Comment insérer automatiquement sur une page article les vidéos ajoutées comme document en incrustation ?

      Actuellement mes vidéos s’affichent en liste comme les autres documents avec une vignette mais le lien envoie vers IMG/distant/html/xpy0mq_l-iledffe.html

      Si j’ajoute la balise #MODELEoembed,url=#URL_VIDEO ou #MODELEoembed,url=#OEMBED

      cela n’affiche rien.

      L’insertion manuelle avec <emb.. fonctionne mais c’est laborieux.

      Merci !
      dd

    • Le 23 janvier 2015 à 16:39, par Karen En réponse à : oEmbed

      Bonjour,

      Super plugin pour gérer la vidéo. J’aimerais aussi beaucoup pouvoir l’appeler où je veux dans le squelette, et pas forcément contraint dans l’article avec le raccourci ’emb’, malheureusement je ne comprends pas la démarche non plus.
      Comme DD, j’ai tenté l’incrustation des 2 balises

      1. #MODELE{oembed,url=#URL_VIDEO}

      et

      1. #MODELE{oembed,url=#OEMBED}

      Il n’y a pourtant pas a recréer le modèle en surcouche ? Ni à l’intégrer spécialement dans une boucle ?

      Je suppose que ce n’est qu’un morceau de la démarche, et mes connaissances en SPIP sont trop limitées, j’ai cherché un moment, et là je patauge :-(
      Une âme généreuse pour expliquer aux novices comme nous ?

      Bien cordialement,
      Karen

    • Le 31 janvier 2015 à 18:28, par Karen En réponse à : oEmbed

      Bonsoir,

      Pas une bonne âme pour expliquer comment appeler les vidéos d’un article directement par le squelette ?
      J’ai beau chercher depuis un bon moment, je ne trouve pas comment faire, et aucune page qui en parle, à par ici… Please, help !

      Merci d’avance
      Karen

    • Le 1er février 2015 à 11:25, par Cerdic En réponse à : oEmbed

      Le code
      #MODELE{oembed,url=#OEMBED}
      doit etre dans une boucle document, il sert à insérer le document oembed qui est déjà en base de données.

      Sinon tu peux aussi l’utiliser avec une URL en dur du genre :
      #MODELE{oembed,url=http://youtube.com/....}

    • Le 2 février 2015 à 16:43, par Karen En réponse à : oEmbed

      1000 mercis Cerdic, c’est génial quand ça fonctionne !
      C’est tout bête pour un spipien éclairé, ça l’était moins pour moi… Encore un souci cependant :
      Je n’arrive pas à faire fonctionner le critère doublons pour éviter d’appeler les vidéos déjà intégrées dans l’article.
      Voici ma boucle dans article.html :

      1. <BOUCLE_doc(DOCUMENTS){id_article}{mode=document}{doublons}>
      2. [(#MODELE{oembed,url=#OEMBED,doublons})]
      3. </BOUCLE_doc>

      Télécharger

      Et j’ai ajouté doublons sur cette boucle de inclure/documents.html

      1. <BOUCLE_afficher_document(DOCUMENTS) {id_document}{id_article} {mode=document}
      2. {extension IN png,jpg,gif}{doublons}>
      3. [(#MODELE{emb,lien=#URL_DOCUMENT}|image_reduire{500,*})]
      4. </BOUCLE_afficher_document>

      Télécharger

      Je ne comprends pas pourquoi ça ne fonctionne pas…

    • Le 2 février 2015 à 16:58, par Karen En réponse à : oEmbed

      Oups ! Mauvais copier-coller, dans la boucle d’article, c’est plutôt ça :

      1. <BOUCLE_doc(DOCUMENTS){id_article}{mode=document}{doublons}>
      2. [(#MODELE{oembed,url=#OEMBED})]
      3. </BOUCLE_doc>

      Télécharger

      J’avais fait une autre tentative sur la deuxième ligne, au cas où, mais sans meilleur résultat !

    • Le 11 février 2015 à 22:18, par DD En réponse à : oEmbed

      Bonsoir,

      Sur ma page article pour que les paginations des différents types de documents (vidéos, images, documents,) ne s’emmêlent pas les crayons j’utilise {media!=video} ou  {media=video} dans mes différentes boucles.
      (cela empêche aussi les vidéos d’apparaître 2 fois)

      dd

    • Le 23 février 2015 à 16:03, par Karen En réponse à : oEmbed

      Merci pour cette réponse DD, je réagis après coup, après 2 semaines à l’étranger…
      Bref ! Ce n’est pas tout à fait ce qui m’intéresse, je crois. Ce que je cherche à faire c’est comme avec la Mediabox : si une image est déjà intégrée dans le corps de l’article, via un raccourci type

      1. <imgxx|left>

      , elle n’apparaît pas dans le portfolio, et c’est géré automatiquement.

      En résumé, comment exclure de la boucle qui liste les toutes les vidéos attachées à l’article, en oembed, celles qui sont déjà appelées sous la forme

      1. <embxx|center>

      dans le texte de l’article ?

      Le critère doublons ne fonctionne pas, en tout pas pas tel que j’ai tenté de l’utiliser :-(
      Karen

      Karen

    • Le 24 février 2015 à 18:56, par Karen En réponse à : oEmbed

      Ouf, j’ai fini par trouver, enfin !
      Je me réponds à moi-même pour ceux que ça intéresse : j’y suis parvenue en ajoutant le critère vu=non, ce qui donne, pour ma boucle dans article.html :

      1. <BOUCLE_doc(DOCUMENTS){id_article}{mode=document}{doublons}{vu=non}>
      2. [(#MODELE{oembed,url=#OEMBED})]
      3. </BOUCLE_doc>

      Télécharger

      Voir à ce sujet : http://www.spip.net/fr_article4273.html
      Merci à Cédric et à DD qui m’ont aidée à avancer :-)

    • Le 22 mai 2015 à 11:47, par kent1 En réponse à : oEmbed

      Encore plus simple :

      1. [(#URL_VIDEO|oembed)]

      dans le squelette

      Ou

      1. [(#VAL{url_de_la_page}|oembed)]
    • Le 4 août à 17:25, par DavidM En réponse à : oEmbed

      J’ai tenté d’appliquer ce fil dans un modèle videos-du-site.html , pour afficher dans un article les vidéos (dans un lecteur) du site chargées par oEmbed. (spip 3.1, oEmbed Version 1.6.5)
      Dans mon article, j’ai appelé mon modèle videos-du-site.html avec : <videos-du-site1>
      Mais je n’arrive pas à afficher les vidéos (elles s’affichent pourtant ailleurs),
      Seule la balise #EMBED_DOCUMENT affiche quelque chose, les docs images du site

      La balise [(#URL_VIDEO|oembed)] affiche spip.php ?video1, spip.php ?video2, etc.

      J’ai par ailleurs une erreur indiquée :
      Aucun squelette modeles/ n’est disponible... plugins-dist/medias/modeles/emb.html / ligne 2

      Je ne comprends pas et ne sais trop que faire....
      Merci pour tout conseil utile.

      Pour info, j’avais aussi installé le plugin Vidéos, que j’ai supprimé car oEmbed intègre plus de types de docs distants. Peut-être ça aurait pu perturber le fonctionnement de oEmbed ?

      Voici mon code :

      <B_documents_videos>
      #ANCRE_PAGINATION
              <BOUCLE_documents_videos(DOCUMENTS) {tout}{mode=document}{!par date}{doublons}{vu=non}{pagination 5}>
             
      [(#MODELE{oembed,url=#URL_VIDEO})]
      --------1--
      [(#MODELE{oembed,url=#OEMBED})]
      ---------2--
      [(#URL_VIDEO|oembed)]
      --------3-
      #EMBED_DOCUMENT
               --------4-
              </BOUCLE_documents_videos></B_documents_videos>
    • Le 12 août à 00:15, par DavidM En réponse à : oEmbed

      Résolu : en me repenchant sur mon code modèles, j’ai vu qu’il ne convenait pas.
      Ce modèle étant placé dans un article (donc dans une boucle article), il ne listait que les docs vidéo de l’article en question..., j’ai donc modifié le code, et ça marche :

      <BOUCLE_tous-articles(ARTICLES){tout}{!par date}>

      <B_documents_videos>
         <h3 class="spip"><multi>[fr]Galerie des vidéos[en]Videos galery</multi></h3>
         
            #ANCRE_PAGINATION
              <BOUCLE_documents_videos(DOCUMENTS){tout}{mode=document}{media=video}{!par date}{doublons}{pagination 5}>
             
      [(#MODELE{oembed,url=#OEMBED})]

              </BOUCLE_documents_videos>

       <div style="clear: both;"></div>
       [<div class="barre-pagination pagination">(#PAGINATION{prive}) &nbsp;|  #GRAND_TOTAL <:ima_au_total:></div>]
      </B_documents_videos>
      </BOUCLE_tous-articles>

      désolé pour le « bruit »

    Répondre à ce message

  • Le 18 juillet à 16:34, par jeanmarie En réponse à : oEmbed

    Salut,

    il y a une petite pétouille avec ZDist V1.7.29. Bon, je sais, ZDist n’est plus maintenu, mais je pose ça là hein, si ça peut servir à d’autres...

    Donc, dans ZDist V1, les doc centrés ont un

    1. display:table;

    (en plus d’un display block !), cf L40 /zpip_v1_99/spip_style.css, ce qui a pour effet d’afficher le player généré en petit sans tenir compte de la taille définie par la config.

    Il suffit de donc surcharger avec

    1. .spip_documents_center.oembed {display:block;}

    pour que ça fonctionne...

    Voilà,

    jean marie

    Répondre à ce message

  • Le 19 avril à 14:20, par ydikoi En réponse à : oEmbed

    Il semblerait qu’Instagram ait changé son api, la détection de l’URL de la photo ne se fait pas chez moi ?

    Répondre à ce message

  • Le 13 avril à 01:10, par DD En réponse à : oEmbed

    Bonjour ;

    En faisant une vérification des liens sur plusieurs sites (SPIP 3.1) je vois qu’il y a beaucoup de liens sous la forme http://www.site.fr/oembed.api/?format=json&url=http%3A%2F%2Fwww.site.fr%2F-rubrique- qui sont listés en erreur 404.

    En regardant dans le code source de la page rubrique (qui ne contient aucune vidéo) je vois :
    <meta name="theme-color" content="#252424" /><link rel="alternate" type="application/json+oembed" href="http://www.site.fr/oembed.api/?format=json&amp;url=http%3A%2F%2Fwww.site.fr%2F-Decouvrir-" />

    Est-ce que c’est du à ce plugin ?
    Merci

    dd

    Répondre à ce message

  • Le 15 mars à 15:35, par Karen En réponse à : oEmbed

    Bonjour,

    J’utilise cet excellent plug-in depuis quelques temps déjà sur quelques sites. Passée à SPIP 3.1 tout récemment, j’ai donc voulu y intégrer la dernière version de Oembed, et je me suis heurtée à un problème, sur les pages publiques uniquement, le bouton play ne fonctionne pas et j’ai ce message par dessus la vidéo :

    onclick=« if (jQuery(this).is(’.oe-play-button’))jQuery(this).removeClass(’oe-play-button’).addClass(’loading’).html(decodeURIComponent(’%3Ciframe%20width%3D%22500%22%20height%3D%22281%22%20src%3D%22https%3A%2F%2Fwww.youtube.com%2Fembed%2Fw5UwkdH2dPU%3Ffeature%3Doembed%26autoplay%3D1%22%20frameborder%3D%220%22%20allowfullscreen%3E%3C%2Fiframe%3E’)) ; »
    >

    Je précise que ça fonctionne en partie privée… Et que j’ai désactivé tous les autres plugins pour éliminer les pistes. Enfin, ne sachant plus quoi tester, j’ai mis une ancienne version de Oembed, version 1.2.3, et là tout fonctionne parfaitement.

    Je me pose donc la question : y a-t-il un bug sur cette version, une incompatibilité avec spip 3.1 ? Suis-je la seule à avoir ce problème ?

    D’avance merci pour vos réponses,
    Karen

    • Le 16 mars à 15:43, par Karen En réponse à : oEmbed

      Bonjour,

      Je me réponds à moi-même et je n’avais pas assez bien cherché, ça venait de mon squelette, un filtre |propre qui traînait sur mon appel #TEXTE, là où je croyais avoir tout remis à zéro… Ô fatigue ennemie !

      Tout fonctionne parfaitement, et je trouve toujours ce plugin absolument génial ! Merci encore à ses créateurs :-)

      Bonne journée

    Répondre à ce message

  • Le 2 mars à 12:19, par jeanmarie En réponse à : oEmbed

    Hello !

    lorsque j’insère l’url d’une vidéo dans un article, j’ai ce message d’erreur si je recalcule la page (var_mode=recalcul) :
    Warning : curl_setopt() [function.curl-setopt] : Invalid curl configuration option in /*CHEMIN_DEPUIS_RACINE*/plugins/oembed/inc/oembed_recuperer_url.php on line 38

    Par contre, l’erreur n’apparait pas en l’affichage « normal » ni en ?var_mode=calcul

    La page en question : http://www.lesreportagesdufourneau.com/Cie-G-BISTAKI-Cooperatzia-le-chemin.html

    Pour info : SPIP 3.0.21 / oEmbed 1.6.0 / PHP 5.2.17 (l’hébergement ne date pas d’hier !)

    Merci,

    jean marie

    • Le 2 mars à 12:29, par b_b En réponse à : oEmbed

      Arf, cela doit venir de ta version de curl, à ce que je lis l’option CURLOPT_IPRESOLVE n’est dispo qu’à partir de curl 7.10.8 cf http://php.net/manual/en/function.curl-setopt.php (en même temps ce n’est pas ne bonne idée d’afficher les warnings sur un site en prod :p)

    • Le 2 mars à 13:52, par jeanmarie En réponse à : oEmbed

      Bien vu... j’ai libcurl/7.21.0 dons mon php info...
      Bon, je vire le plugin et je verrai ça le jour où je monterai la version de php :)

      Merci pour le retour...

    • Le 2 mars à 14:39, par b_b En réponse à : oEmbed

      And support for this constant is only available for PHP>=5.3

      Du coup, un test sur la version de PHP avant d’utiliser cette fonction pourrait fixer le bug.

      Dans ton cas, tu peux garder le plugin, et ne pas afficher les warnings, non ?

    • Le 2 mars à 15:02, par jeanmarie En réponse à : oEmbed

      Sur un hébergement mutu on peut masquer les erreurs ?

    • Le 2 mars à 15:12, par b_b En réponse à : oEmbed

      La version 1.6.2 devrait corriger le bug :

      http://zone.spip.org/trac/spip-zone/changeset/95697
      http://zone.spip.org/trac/spip-zone/changeset/95704

      Pour masquer les warnings sur un mutu, oui je pense que ça doit être possible...

    Répondre à ce message

  • Le 9 janvier 2015 à 15:59, par casp En réponse à : oEmbed

    Savez vous si il est possible de lancer automatiquement la lecture d’une vidéo inétgrer via oembed ?
    Merci.

    • Le 16 février à 10:45, par peetdu En réponse à : oEmbed

      Bonjour,

      ce plugin est LA solution que je cherchais :)

      Toutefois l’inconvénient discuté ici http://comments.gmane.org/gmane.comp.web.spip.zone/37496, rend son emploi difficile à expliquer aux 110 utilisateurs/rédacteurs de l’association pour laquelle je travaille.

      Il y a t-il moyen de ’corriger’ ça ? Pleaaaase :)

    Répondre à ce message

  • Le 14 décembre 2015 à 15:11, par ManuC En réponse à : oEmbed

    Bonjour,

    En cas d’utilisation de youtube et d’un proxy, le plugin ne fonctionne plus car il ne prend pas les paramètres proxy de SPIP.

    Cela se corrige facilement en ajoutant ces lignes dans le fichier inc/oembed_recuperer_url.php

    1. $http_proxy = isset($GLOBALS['meta']["http_proxy"]) ? $GLOBALS['meta']["http_proxy"] : null;
    2. $http_noproxy = isset($GLOBALS['meta']["http_noproxy"]) ? $GLOBALS['meta']["http_proxy"] : null;
    3. curl_setopt($c, CURLOPT_PROXY, $http_proxy);
    4. curl_setopt($c, CURLOPT_NOPROXY, $http_noproxy);

    Télécharger

    juste avant la ligne « // the real trick for Youtube : »

    Répondre à ce message

  • Le 1er décembre 2015 à 15:53, par jave En réponse à : oEmbed

    bonjour,

    super plugin, vraiment, mais je galère pour un utilisateur qui me demande de ne pas afficher les propositions de vidéos à la fin, exactement comme quand on mets &rel=0 dans le code embed proposé par youtube. j’ai essayé de faire suivre l’url de youtube de &rel=0 mais ça ne fonctionne pas.
    en regardant le code, pour ce que j’y comprends, il semble que le cas de &rel=0 soit pris en compte, mais apparemment ça ne passe pas.

    le fichier en question est « posttraite_youtube.php ». voici un extrait du code (ligne 17 à 20)

    // On regarde si l’attribut rel est placé dans l’URL
    // pour éviter l’affichage des vidéo liées à la fin de la vidéo
    if (strpos($url_orig,« &rel=0 ») OR strpos($url_orig, «  ?rel=0 »))
    $data[’html’] = str_replace(’feature=oembed’, ’feature=oembed&rel=0’, $data[’html’]) ;

    comme c’était un échec, j’ai essayé de placer un css dans le head.

    .ytp-endscreen-content
    display:none ;

    mais comme youtube charge son propre css dans son petit iframe, ma définition de la class est ignorée... en plus ce n’est pas très propre comme méthode, n’est-ce pas ?

    j’aimerais donc, dans la mesure du possible, que :
    -  il tienne compte de &rel=0
    -  que je puisse éventuellement forcer ça de telle sorte que l’admin ne soit pas obligé d’ajouter &rel=0 à la main à la fin de chaque url. il colle l’url et à la fin de sa vidéo, pas de propositions d’autres vidéos.

    quelqu’un pour m’aider ?

    d’avance merci à toutes et tous.

    • Le 2 décembre 2015 à 12:27, par b_b En réponse à : oEmbed

      Salut, la version 1.5.2 devrait corriger ce problème et rétablir la prise en compte du rel=0 dans les url youtube, cf :

      http://zone.spip.org/trac/spip-zone/changeset/93342

      Si tu veux le forcer de manière globale, tu peux surcharger la fonction oembed_input_posttraite_youtube_video() pour y appliquer le rel=0 tout le temps.

      ++

    • Le 2 décembre 2015 à 14:58, par jave En réponse à : oEmbed

      extra !
      un super grand merci.
      je vais essayer de surcharger le code pour forcer le rel=0... je tiens au courant.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

Ça spipe par là