wp_kses_bad_protocol_once()
Sanitizes content from bad protocols and other characters.
This function searches for URL protocols at the beginning of the string, while handling whitespace and HTML entities.
No Hooks.
Return
String
. Sanitized content.
Usage
wp_kses_bad_protocol_once( $content, $allowed_protocols, $count );
- $content(string) (required)
- Content to check for bad protocols.
- $allowed_protocols(string[]) (required)
- Array of allowed URL protocols.
- $count(int)
- Depth of call recursion to this function.
Default: 1
Changelog
Since 1.0.0 | Introduced. |
wp_kses_bad_protocol_once() wp kses bad protocol once code WP 6.7.1
function wp_kses_bad_protocol_once( $content, $allowed_protocols, $count = 1 ) { $content = preg_replace( '/(�*58(?![;0-9])|�*3a(?![;a-f0-9]))/i', '$1;', $content ); $content2 = preg_split( '/:|�*58;|�*3a;|:/i', $content, 2 ); if ( isset( $content2[1] ) && ! preg_match( '%/\?%', $content2[0] ) ) { $content = trim( $content2[1] ); $protocol = wp_kses_bad_protocol_once2( $content2[0], $allowed_protocols ); if ( 'feed:' === $protocol ) { if ( $count > 2 ) { return ''; } $content = wp_kses_bad_protocol_once( $content, $allowed_protocols, ++$count ); if ( empty( $content ) ) { return $content; } } $content = $protocol . $content; } return $content; }