Deaktivieren Sie das automatische oEmbed einer Youtube-URL innerhalb des Inhalts

Ich betreibe eine kleine Website basierend auf wp mit benutzergeneriertem Inhalt. Nutzer reichen oft Youtube-Links ein. Und dann wandelt WordPress diese Links automatisch in Videos um, was in unserem Fall unerwünscht ist . Ich muss dieses automatische Verhalten überschreiben, damit die übermittelten Youtube-Links in plain text urls ?

Ich fand heraus, dass ich den oembed-Provider selbst mit etwas wie wp_oembed_remove_provider('http://www.youtube.com/oembed') entfernen konnte , aber ich bin ratlos, wie ich das in meinem Fall verwende, wo $content die Zeichenkette ist enthält die URL sowie den eingereichten Post-Inhalt? Die Codex-Seite sagt nicht viel darüber aus. Könnte mir jemand ein Beispiel geben, wie das gemacht werden kann?

Mit anderen Worten, ich brauche den oEmbed, um irgendeinen youtube Link / s im Inhalt zu überspringen. Bitte lassen Sie mich auch wissen, ob es eine bessere / effizientere Lösung gibt.

Solutions Collecting From Web of "Deaktivieren Sie das automatische oEmbed einer Youtube-URL innerhalb des Inhalts"

deaktiviere das oembed wie unten in functions.php:

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

Vielen Dank!

Die angenommene Antwort hat in meinem Fall nicht funktioniert. URLs wurden im Post-Editor immer noch in Embeds konvertiert.

Wenn ich auf die Quelle von wp-includes / class-wp-embed.php schaue, wo dieses Zeug behandelt wird, habe ich festgestellt, dass hier noch ein paar andere Dinge im Spiel sind:

 // 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' ) ); 

Was das Problem für mich behebt, war, diese in meinen Theme-Dateien wie folgt zu deaktivieren:

 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' ] );