百度 | 神马 | 搜狗 | 技术文档 | 学习资料分享 - 记录帝国CMS及运维技术的点点滴滴
你的位置:首页 > 实用IT技术 » 正文

【Wordpress相关】使用 WordPress 的 Easy Embeds 功能

发布时间:2020-09-17

作品分类:Wordpress相关  网站  支持  功能  功能  WordPress  Easy  Embeds

使用 WordPress 的 Easy Embeds 功能,

WordPress 的 Easy Embeds 功能

有没有想过,只需要在日志中输入一个视频网站或者图片分享的 URL,这个 URL 里面含有的视频或者图片就自动显示出来?这样是不是很 Cool,这个就是 WordPress 的 Easy Embeds 的功能,让你直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到博客上,并且会根据博客的布局调整视频的大小。

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>

比如,在日志中直接输入这个 instagram 地址:

http://instagram.com/p/TSZleFg3A3/

WordPress 就会自动把这个 URL 转化成 instagram 该页的照片和链接:

这个就是 WordPress 2.9 引入的 Easy Embeds 功能,需要将 WordPress 的 “Auto-embeds” 的功能打开:
启用 WordPress 2.9 的 Easy Embeds 功能
到了 WordPress 3.5 版本之后,WordPress 就默认支持这个功能了,没有了上面的选项。

另外还可以使用 这个 shortcode 来显示图片,使用 shortcode 就不再需要把链接放到独立的一行了。</p>
<p>http://instagram.com/p/TSZleFg3A3/

oEmbed

这个 Easy Embeds 功能主要是由 oEmbed 驱动的,oEmbed 是一种站点 A (比如你的博客)向站点 B (比如 YouTube)去请求嵌入内容(比如视频)的 HTML 代码的协议。

oEmbed 设计出来是为了嵌入媒体网站的内容的时候避免复制和粘贴 HTML 代码,它支持视频,图片,文本等等更多。

oEmbed Discovery

什么是 oEmbed discovery?媒体服务提供商在 head 添加一部分代码告诉程序他们的 oEmbed provider 在哪里,这样就可以自动添加嵌入的内容而无需事先处理。

现在 WordPress Easy Embeds 支持的网站

并不是所有的网站都支持的,现在 WordPress 支持以下网站:

  • (both videos and images)
  • (WordPress 3.0+)
  • (WordPress 3.5+)
  • (WordPress 3.5+)
  • (WordPress 3.5+)
  • (WordPress 3.0+)
  • (WordPress 3.4+)
  • (note older versions of WP have issues with https embeds, just remove the s from the https to fix)
  • (only public videos and playlists – “unlisted” and “private” videos will not embed)
  • (only -type videos for the time being)

所以这些网站的视频和图片,你只需贴入 URL,WordPress 就会帮你自动转换成可以查看的图片或者视频。

WordPress 默认是关闭直接嵌入支持 oEmbed discovery 网站的内容,这样做也是为了防止一些网站可能存在恶意代码的风险,但是如果你能保证你引用网站,那么你可以通过以下代码开启 WordPress 的 oEmbed discovery,这样只要贴入支持 oEmbed Discvery 网站的 URL 就会自动嵌入内容。

add_filter( 'embed_oembed_discover', '__return_true' );

如何支持更多的网站

添加支持 oEmbed 协议的网站

只需要去调用 wp_oembed_add_provider() 函数就可以了,格式如下:


wp_oembed_add_provider( 'http://site.com/watchvideo/*', 'http://site.com/oembedprovider' );

添加不支持 oEmbed 协议的网站

添加不支持 oEmbed 协议的网站可能就比较麻烦点,需要使用 wp_embed_register_handler() 函数去注册一个 callback 函数去产生 HTML。

目前我已经实现了优酷和土豆:


本站推荐使用的主机:,国外主机建议使用

Top