在 Wor dPress 2.9 中新增的 Easy Embeds 的功能,它能让你通过直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到 WordPress 博客上,并且会根据博客的布局调整视频的大小。
但是 WordPress 默认不支持国内的土豆这个视频分享网站,我根据 WordPress 的 Embeds 接口制作了下面的插件,让你的 WordPress 博客通过一行链接就能发布土豆的视频,而无需去查找土豆的复杂而麻烦的 flash 嵌入代码。
function wp_embed_handler_tudou( $matches, $attr, $url, $rawattr ) { // If the user supplied a fixed width AND height, use it if ( !empty($rawattr['width']) && !empty($rawattr['height']) ) { $width = (int) $rawattr['width']; $height = (int) $rawattr['height']; } else { list( $width, $height ) = wp_expand_dimensions( 420, 363, $attr['width'], $attr['height'] ); } return apply_filters( 'embed_tudou', '<object width="' . esc_attr($width) . '" height="' . esc_attr($height) . '"><param name="movie" value="http://www.tudou.com/v/' . esc_attr($matches[1]) . '"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><param name="wmode" value="opaque"></param><embed src="http://www.tudou.com/v/' . esc_attr($matches[1]) . '" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="opaque" width="' . esc_attr($width) . '" height="' . esc_attr($height) . '"></embed></object>', $matches, $attr, $url, $rawattr ); } wp_embed_register_handler( 'tudou', '#http://www.tudou.com/programs/view/(.*?)/#i', 'wp_embed_handler_tudou' );
把上面这段代码放到当前主题的 functions.php 文件中,或者添加一个插件头,上传到插件目录下,激活即可。
安装好之后,你只需要把土豆视频的链接直接贴入到 WordPress 日志内容中即可显示视频,假设其中 XXXXXXX 是视频的 ID,那么插入方法是:
http://www.tudou.com/programs/view/XXXXXXX/
或者
[ embed]http://www.tudou.com/programs/view/XXXXXXX/[/embed]


感谢分享
支持 反对
Youku 可以直接嵌入吗?WP支持youku吗?
支持 反对
http://fairyfish.net/2010/04/12/wordpress-embed-youku/
支持 反对
Hi Dennis, 借题问个问题啊:我放大了字体,也放大了搜索框,但是无论我怎么搞搜索框内的字体不居中,无论我怎么调字体大小搜索框高度,老是顶着搜索框上沿,和下沿有一定的距离……自己‘研究’了几天,谷啊百啊自己不行,能否教我一下啊?万分感谢!
支持 反对
顺便说下google chrome下可以,ie 和 firefox 不行~chrome好像很多情况下自己可以调~刚才太急拼错了,Denis而不是Dennis,不好意思啊!
支持 反对
hoho搞定了搞定了,不好意思啊,把我这些留言都删了吧,对不起对不起啊。。。。
支持1 反对
我仿造你这个把自动嵌入虾米播放器的代码写出来了,不知道denis是打算把这几段代码整合成插件吗? PS. 你推特帐号被封了?
支持 反对1
你自己发布就好了!
支持 反对
你好,能把虾米的代码放出来吗?最好和土豆的一起整合成插件,谢谢了!
支持 反对
这个……要在水煮鱼同意的情况下才可以……毕竟大部分代码是他写的
支持 反对
没事,发布吧!我是很开放的!
支持 反对
插件下载地址 http://oron.com/36wj6gne2k6z/wp-easy-embeds-for-chinese.php.tar.gz.html 目前支持优酷,土豆,虾米,虾米网址插入格式为 http://www.xiami.com/song/XXXXXXX 另外需要注意一下土豆网的插入格式……
支持 反对
不错,顶!
支持 反对
嗯试用了一下,很好用!
不过我想问下,这个能不能再升级下,让它支持土豆的豆列
支持 反对
豆列是一排视频,没法弄得啊!
支持 反对
发现上回说错了,应该是豆单不是豆列。豆单的分享代码中是 http://www.tudou.com/l/XXXXXX ,和 http://www.tudou.com/v/XXXXXX 差不多吧?
支持 反对
看起来差不多,应该可以试一下,如果好了再发上来
支持 反对
看了一下,用Denis这个代码应该不行了,豆单的网址不好获取……
支持 反对
您好。最近在找xiami的这个embed功能。模仿着youku的做了一个,但是却不行。。想下载您提供的这个文件,但是现实已经过期。。可否再提供一下呀?谢谢~
支持 反对
哦。我自己试出来了,把(.*?)改成(.*)就出来了。。不知道这些字符的含义,瞎猫碰死耗子,竟然让我撞出来了。
支持 反对
厉害!
支持 反对
开启插件后,与 FEED 输出冲突。
XML解析错误:xml处理指令不在实体的开始部分
位置:http://localhost/?feed=rss
行:2,列:1:
支持 反对
解决了,是 feicun 提供的插件编码方式有问题。
导致页面多出来一行空格
支持 反对
恩。 水煮鱼,我使用上面的代码也做了同样类似的插件,原因就是原来提供的插件没有的下载了,现在放在我的网站上共享。请求下你的同意啊
支持 反对
请随意!
支持 反对
哈,不错~
支持 反对