wordpress收费下载资源主题
wordpress付费下载资源插件

WordPress函数wp_kses_bad_protocol_once详细用法教程解析

函数wp_kses_bad_protocol_once用于过滤掉非法的URL协议。下面是详细的用法教程解析:

1. 函数定义:

wp_kses_bad_protocol_once( $string, $allowed_protocols );

- $string:需要过滤的字符串。
- $allowed_protocols:允许的URL协议,以数组形式传入。

2. 函数功能:该函数在字符串中过滤掉非法的URL协议,并返回过滤后的字符串。

3. 函数实现:

function wp_kses_bad_protocol_once($string, $allowed_protocols) {
$string = wp_kses_no_null($string);
$string = wp_kses_normalize_entities($string);
$string = wp_kses_hook($string, 'wp_kses_bad_protocol');
return wp_kses_bad_protocol_once2($string, $allowed_protocols);
}

- 首先,通过函数wp_kses_no_null()过滤掉空字符。
- 然后,通过函数wp_kses_normalize_entities()对实体进行归一化处理。
- 接着,通过函数wp_kses_hook()对字符串进行过滤。该函数会触发过滤器wp_kses_bad_protocol,允许开发者自定义过滤规则。
- 最后,调用函数wp_kses_bad_protocol_once2()进行协议过滤。

4. 函数wp_kses_bad_protocol_once2的实现:

function wp_kses_bad_protocol_once2($string, $allowed_protocols) {
if (strpos($string, ':') === false )
return $string;

$string = wp_kses_decode_entities($string);
$string = preg_replace('|s+|', ' ', $string);
$string = wp_kses_split($string, ':', 'wp_kses_bad_protocol_once4');

$good_protocol_url = wp_kses_bad_protocol_once3( $string, $allowed_protocols );

if ( '' != $good_protocol_url ) {
return $good_protocol_url;
} else {
return '';
}
}

- 首先,通过函数wp_kses_decode_entities()对实体进行解码。
- 然后,通过正则表达式替换多个连续的空白字符为一个空格。
- 接着,调用函数wp_kses_split()将字符串按冒号进行分割,并将分割结果作为回调函数wp_kses_bad_protocol_once4的参数进行处理。
- 最后,调用函数wp_kses_bad_protocol_once3()进行协议过滤,并返回过滤后的结果。

综上,函数wp_kses_bad_protocol_once的作用是过滤掉字符串中的非法URL协议,可以根据传入的允许协议数组进行过滤规则的设定。

0 个评论

定制开发
本站承接WordPress等系统建站仿站、二次开发、主题插件定制等开发服务
在线咨询
  • 请先加Q,临时会话收不到
    QQ:1-247-246-247

  • QQ一群:104228692(满)
  • QQ二群:64786792
在线咨询
本站承接WordPress建站仿站、二次开发、主题插件定制等PHP开发服务!

了解详情