* * @package automattic/jetpack */ if ( defined( 'IS_WPCOM' ) && IS_WPCOM ) { add_action( 'init', 'jetpack_descript_enable_embeds' ); } else { jetpack_descript_enable_embeds(); } /** * Register descript as oembed provider. Add filter to reverse iframes to shortcode. Register [descript] shortcode. * * @since 10.4 */ function jetpack_descript_enable_embeds() { // Support their oEmbed Endpoint. wp_oembed_add_provider( '#https?://share.descript.com/(?:view|embed)/\w+#i', 'https://api.descript.com/v2/oembed', true ); // Allow script to be filtered to short code (so direct copy+paste can be done). add_filter( 'pre_kses', 'jetpack_shortcodereverse_descript' ); // Actually display the descript Embed. add_shortcode( 'descript', 'jetpack_descript_shortcode' ); } /** * Compose shortcode based on Descript iframes. * * @since 10.4 * * @param string $content Post content. * * @return mixed */ function jetpack_shortcodereverse_descript( $content ) { if ( ! is_string( $content ) || false === stripos( $content, 'share.descript.com' ) ) { return $content; } $regexp = '/