web-dev-qa-db-fra.com

TED parle shortcode ne fonctionne pas

J'essaie d'intégrer une vidéo de conversation Ted en utilisant le shortcode:

[ted id=myid]

Mais ça ne marche pas. Il montre le texte au lieu de la vidéo. Dois-je vérifier la configuration pour que cela fonctionne?

5
flero

Malheureusement, cela va être un problème pour vous.

Le shortcode [ted] est spécifique à WordPress.com et non à un site auto-hébergé sur lequel vous avez installé le logiciel vous-même à partir de WordPress.org.

Les seuls systèmes que le logiciel WordPress.org prend en charge par défaut sont listés dans le Codex :

  • YouTube (seules les vidéos publiques et les listes de lecture - les vidéos "non répertoriées" et "privées" ne seront pas intégrées)
  • Vimeo
  • DailyMotion
  • blip.tv
  • Flickr (vidéos et images)
  • Viddler
  • Hulu
  • Qik
  • Révision3
  • Scribd
  • Photobucket
  • PollDaddy
  • WordPress.tv (uniquement des vidéos de type VideoPress pour le moment)
  • SmugMug (WordPress 3.0+)
  • FunnyOrDie.com (WordPress 3.0+)
  • Twitter (WordPress 3.4+)

Il existe cependant un plugin pour intégrer les discussions de Ted. TEDTalks Embedder . Mais il ne mentionne que la compatibilité via WP 3.2.1, de sorte qu'il risque de ne pas fonctionner avec la version actuelle (cela peut arriver, mais je ne peux pas le garantir).


Alternative Intégrés

Voici une alternative si vous ne voulez pas utiliser de plugin. Ajoutez les éléments suivants au fichier functions.php de votre thème:

// Whitelist the TEDTalks oEmbed URL
wp_oembed_add_provider( 'http://www.ted.com/talks/*', 'http://www.ted.com/talks/oembed.json' );

function ted_shortcode( $atts ) {
    // We need to use the WP_Embed class instance
    global $wp_embed;

    // The "id" parameter is required
    if ( empty($atts['id']) )
        return '';

    // Construct the TEDTalk URL
    $url = 'http://www.ted.com/talks/view/lang/eng/id/' . $atts['id'];

    // Run the URL through the  handler.
    // This handler handles calling the oEmbed class
    // and more importantly will also do the caching!
    return $wp_embed->shortcode( $atts, $url );
}
add_shortcode( 'ted', 'ted_shortcode' );

Maintenant, vous pouvez intégrer TEDTalks de deux manières:

Prendre plaisir!

5
EAMann

Le plugin Jetpack vous permettra d’utiliser le shortcode [ted] sur votre site auto-hébergé WordPress.

0
Ben Miller