从WordPress 2.9开始,WordPress加入Embeds嵌入功能,方便直接嵌入第三方网站的视频、图片和动画等外链资源。但oEmbed(auto-embeds)嵌入功能在国内几乎没有支持,而且开启oEmbed后,无论是否使用嵌入,oEmbed都会自动给每次“嵌入”操作在注册表中生成空值的”_oembed_xxxxxxx”。
WordPress 3.5 禁止oembed功能
WordPress 3.5后台设置取消了“Auto-embeds”选项。
在functions.php中加入:
remove_filter( ‘the_content’, array( $GLOBALS[‘wp_embed’], ‘autoembed’ ), 8 );
如果是早期主题,还需要加入<?php ?>。
WordPress 3.5 之前版本禁止oembed功能
如《WordPress奇怪的oEmbed嵌入功能》所说:
在WordPress后台设置的“Media”媒体选项中不勾选“Auto-embeds”。
WordPress只禁止某一网站的oembed功能
对于支持oembed的网站,如果需要禁止oembed功能,WordPress官方给出了说明:
http://codex.wordpress.org/Function_Reference/wp_oembed_remove_provider
使用代码:
<?php wp_oembed_remove_provider( $format ) ?>
“$format”的具体网址可以在wp-includes/class-oembed.php查询。