OEmed、缩略图和WordPress

时间:2011-06-08 作者:FLX

Wordpress有wp_oembed_get, 用于获取富媒体内容embed.ly. 我以前使用过oEmbed api调用,例如this. 正如您所看到的,它提供了thumbnail\\u url,我喜欢使用它来代替嵌入视频。我怎样才能用wordpress做到这一点?

谢谢

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

使用oembed\\u dataparse过滤器修改任何给定oembed调用产生的HTML输出。

示例:

add_filter(\'oembed_dataparse\',\'test\',10,3);

function test($return, $data, $url) {
    if ($data->provider_name == \'YouTube\') {
        return "<img src=\'{$data->thumbnail_url}\'>";
    }
    else return $return;
}
然后在帖子中写下:

[embed]http://www.youtube.com/watch?v=oHg5SJYRHA0[/embed]
将为您提供Rick Astley的照片,而不是他的flash视频。:)

编辑:注意WordPress缓存oEmbed会导致Posteta。因此,在编写代码之后,您必须去更新一篇文章,让它知道如何重新获取嵌入的数据,并使这样的代码生效。如果你想做测试之类的。

结束

相关推荐

Displaying oEmbed errors?

有时,通过oEmbed嵌入项目是不可能的,例如,当YouTube视频已禁用嵌入时。The oEmbed service will return a 401 Unauthorized, 并且不会转换代码。有没有办法通知用户这一点?当前的工作流是非直观的(至少对我来说),我更喜欢在WordPress页面上,或者更好的是,在编辑器中显示一条消息,说明对象无法嵌入。