Отключить автоматический oEmbed URL-адреса youtube в содержимом

Я запускаю небольшой сайт на основе wp с созданным пользователем контентом. Пользователи часто предоставляют ссылки на youtube. И затем wordpress автоматически преобразует эти ссылки в видео, которое нежелательно в нашем случае . Мне нужно переопределить это автоматическое поведение, чтобы представленные ссылки youtube остались в plain text urls ?

Я узнал, что я могу удалить сам oembed-провайдер с чем-то вроде wp_oembed_remove_provider('http://www.youtube.com/oembed') но я не понимаю, как это использовать в моем случае, когда $content – это строка, которая содержит URL-адрес, а также отправленный контент? На странице Codex ничего не говорится об этом. Может ли кто-нибудь дать мне пример того, как это можно сделать.

Другими словами, мне нужно, чтобы oEmbed пропускал любые ссылки на youtube в контенте. Также, пожалуйста, дайте мне знать, если есть лучший / более эффективный способ решения этого.

Solutions Collecting From Web of "Отключить автоматический oEmbed URL-адреса youtube в содержимом"

отключите oembed, как показано ниже в functions.php:

 remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'autoembed' ), 8 ); 

Благодаря!

Принятый ответ не работал в моем случае. URL-адреса все еще были преобразованы в заставки в редакторе сообщений.

Посмотрев на источник wp-includes / class-wp-embed.php, где этот материал обрабатывается, я обнаружил, что здесь есть и другие вещи:

 // Hack to get the [embed] shortcode to run before wpautop() add_filter( 'the_content', array( $this, 'run_shortcode' ), 8 ); // Shortcode placeholder for strip_shortcodes() add_shortcode( 'embed', '__return_false' ); // Attempts to embed all URLs in a post add_filter( 'the_content', array( $this, 'autoembed' ), 8 ); // After a post is saved, cache oEmbed items via AJAX add_action( 'edit_form_advanced', array( $this, 'maybe_run_ajax_cache' ) ); 

Для меня проблема заключалась в том, чтобы отключить их в моих файлах тем:

 remove_shortcode( 'embed' ); remove_filter( 'the_content', [ $GLOBALS['wp_embed'], 'autoembed' ], 8 ); remove_filter( 'the_content', [ $GLOBALS['wp_embed'], 'run_shortcode' ], 8 ); remove_action( 'edit_form_advanced', [ $GLOBALS['wp_embed'], 'maybe_run_ajax_cache' ] );