WordPress如何禁用自动嵌入功能?关闭oEmbed方法

  • A+

WordPress 3.5版本以上,将从UI中删除一些选项:

  • 其中一个选项是Embeds设置

autoembed_urls,开关复选框,继续,并且始终假定oEmbed已打开。为oEmbed打开/关闭UI的唯一原因是,如果很容易意外嵌入项目。但它并没有解析帖子中的每个链接,只是解析自己的链接或[嵌入]代码中的链接。

这是在WordPress 3.4中的oEmbed设置界面 ▼

WordPress如何禁用自动嵌入功能?关闭oEmbed方法

  • WordPress 3.5版本以上,就没有可见的设置,让你禁用自动嵌入功能。

WordPress就是WordPress,如果它没有,可以用另一种方法来禁用它。

嵌入是由WP_Embed类处理:

  • 该类的构造函数注册了一些操作和过滤器,还有一个过滤器the_content
add_filter( 'the_content', array( $this, 'autoembed' ), 8 );

关闭oEmbed功能

现在我们只需要再次删除特定的过滤器 ▼

  • 由于我们不能$thisremove_filter调用中使用,我们需要使用$wp_embed包含对象引用的全局变量。

在 WordPress主题的 functions.php 文件里,添加以下代码 ▼

//禁用WordPress的自动嵌入> = v3.5 
remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'autoembed' ), 8 );

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: