使用wp_oembed_remove_provider()删除YouTube嵌入

时间:2014-11-04 19:53:16

标签: wordpress youtube

我正在尝试从我的一些WordPress输出中删除YouTube嵌入,因此它只显示链接。

我试过以下代码没有任何运气。

wp_oembed_remove_provider('#http://(www\.)?youtube\.com/watch.*#i'); 
wp_oembed_remove_provider('#https://(www\.)?youtube\.com/watch.*#i');   
wp_oembed_remove_provider('#http://youtu\.be/.*#i');    
wp_oembed_remove_provider('#https://youtu\.be/.*#i');

echo apply_filters("the_content", $result->text);

我做错了什么?我怎么做到这一点?

1 个答案:

答案 0 :(得分:0)

您有可能无法删除提供商。尝试连接到plugins_loadedinit

add_action( 'init', 'so26743803_wp_oembed_remove_provider' );
function so26743803_wp_oembed_remove_provider(){
    wp_oembed_remove_provider('#https://youtu\.be/.*#i');
    // etc.
}

修改(未经测试):使用oembed_providers过滤器取消设置提供商(请参阅this Q):

add_filter( 'oembed_providers', 'so26743803_oembed_providers' );
function so26743803_oembed_providers( $providers )
{
    unset( $providers['#http://youtu\.be/.*#i'] );
    // etc.

    return $providers;
}