OwlCyberSecurity - MANAGER
Edit File: class-amp-wordpress-tv-embed-handler.php
<?php /** * Class AMP_WordPress_TV_Embed_Handler * * @package AMP * @since 1.4 */ /** * Class AMP_WordPress_TV_Embed_Handler * * @since 1.4 * @internal */ class AMP_WordPress_TV_Embed_Handler extends AMP_Base_Embed_Handler { /** * The URL pattern to determine if an embed URL is for this type, copied from WP_oEmbed. * * @see https://github.com/WordPress/wordpress-develop/blob/e13480/src/wp-includes/class-wp-oembed.php#L64 */ const URL_PATTERN = '#https?://wordpress\.tv/.*#i'; /** * Register embed. */ public function register_embed() { add_filter( 'embed_oembed_html', [ $this, 'filter_oembed_html' ], 10, 2 ); } /** * Unregister embed. */ public function unregister_embed() { remove_filter( 'embed_oembed_html', [ $this, 'filter_oembed_html' ], 10 ); } /** * Filters the oembed HTML to make it valid AMP. * * @param mixed $cache The cached rendered markup. * @param string $url The embed URL. * @return string The filtered embed markup. */ public function filter_oembed_html( $cache, $url ) { if ( ! preg_match( self::URL_PATTERN, $url ) ) { return $cache; } $modified_block_content = preg_replace( '#<script(?:\s.*?)?>.*?</script>#s', '', $cache ); return null !== $modified_block_content ? $modified_block_content : $cache; } }