WP_Embed::autoembed
Passes any unlinked URLs that are on their own line to WP_Embed::shortcode() for potential embedding.
Method of the class: WP_Embed{}
No Hooks.
Returns
String. Potentially modified $content.
Usage
global $wp_embed; $wp_embed->autoembed( $content );
- $content(string) (required)
- The content to be searched.
Notes
WP_Embed::autoembed() WP Embed::autoembed code WP 7.0
public function autoembed( $content ) {
// Replace line breaks from all HTML elements with placeholders.
$content = wp_replace_in_html_tags( $content, array( "\n" => '<!-- wp-line-break -->' ) );
if ( preg_match( '#(^|\s|>)https?://#i', $content ) ) {
// Find URLs on their own line.
$content = preg_replace_callback( '|^(\s*)(https?://[^\s<>"]+)(\s*)$|im', array( $this, 'autoembed_callback' ), $content );
// Find URLs in their own paragraph.
$content = preg_replace_callback( '|(<p(?: [^>]*)?>\s*)(https?://[^\s<>"]+)(\s*<\/p>)|i', array( $this, 'autoembed_callback' ), $content );
}
// Put the line breaks back.
return str_replace( '<!-- wp-line-break -->', "\n", $content );
}