wordpress - 使用 wp_oembed_remove_provider() 删除 YouTube 嵌入

标签 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);

我究竟做错了什么?我如何正确地做到这一点?

最佳答案

您可能处于删除提供程序为时已晚的地步。尝试连接到 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;
}

关于wordpress - 使用 wp_oembed_remove_provider() 删除 YouTube 嵌入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26743803/

相关文章:

javascript - 自动从 Woocommerce 谢谢重定向到传递变量的外部链接

jquery - 在 .class 中包装 Wordpress 文本内容

php - 将视频上传到 YouTube 作为不公开

jquery - CSS 隐藏 Youtube 视频在 IE 中不起作用

php - 这个样式表是从哪里加载的?

php - WP insert post PHP 函数和自定义字段

php - (Wordpress) 不规则的 3-4-3-4 帖子结构

jquery - 如何使用jQuery在YouTube URL中的YouTube ID后分隔多余的文本?

javascript - 动态地将嵌入的 YouTube 视频添加到页面

Java - YouTube API - 视频上的 setPublishAt 导致 "400 Bad Request - invalidVideoMetadata"