泰德谈到短码不起作用

时间:2012-10-10 作者:flero

我正在尝试使用以下短代码嵌入Ted talk视频:

[ted id=myid]
但它不起作用。它显示文本而不是视频。我需要检查任何配置才能使其正常工作吗?

2 个回复
最合适的回答,由SO网友:EAMann 整理而成

不幸的是,这将是你的一个问题。

这个[ted] 短代码特定于WordPress。com-不是您自己从WordPress安装软件的自托管网站。组织。

唯一嵌入WordPress的。默认情况下,org的软件支持为listed in the Codex:

YouTube(只有公共视频和播放列表-“未列出”和“私人”视频不会嵌入)Vimeo。电视

  • Flickr(视频和图像)
  • Viddler
  • HuluQik修订版3ScribdPhotobucketPolldadyWordPress。tv(目前仅限于VideoPress类型的视频)SmugMug(WordPress 3.0+)FunnyOrDie。com(WordPress 3.0+)推特(WordPress 3.4+)有一个插件可用于嵌入Ted对话。TEDTalks Embedder. 但它只列出了通过WP 3.2.1的兼容性,因此它可能无法与当前版本兼容(可能,但我不能保证)。

    如果你不想使用插件,这里有一个替代方案。将以下内容添加到主题functions.php 文件:

    // 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\' );
    
    现在,您可以通过两种方式嵌入TEDTalks:

    通过使用[ted id=981] 就像他们在WordPress上做的那样。通过将TEDTalk的url单独放在帖子中的一行(即。http://www.ted.com/talks/ze_frank_s_web_playroom.html)享受吧!

    SO网友:Ben Miller - Remember Monica

    这个Jetpack plugin 将允许您使用[ted] WordPress自托管网站上的快捷代码。

    结束