wp_check_jsonp_callback

The timeline below displays how wordpress function wp_check_jsonp_callback has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 5.5

/**
 * Checks that a JSONP callback is a valid JavaScript callback name.
 *
 * Only allows alphanumeric characters and the dot character in callback
 * function names. This helps to mitigate XSS attacks caused by directly
 * outputting user input.
 *
 * @since 4.6.0
 *
 * @param string $callback Supplied JSONP callback function name.
 * @return bool Whether the callback function name is valid.
 */
function wp_check_jsonp_callback($callback)
{
    if (!is_string($callback)) {
        return false;
    }
    preg_replace('/[^\w\.]/', '', $callback, -1, $illegal_char_count);
    return 0 === $illegal_char_count;
}

WordPress Version: 4.7

/**
 * Checks that a JSONP callback is a valid JavaScript callback.
 *
 * Only allows alphanumeric characters and the dot character in callback
 * function names. This helps to mitigate XSS attacks caused by directly
 * outputting user input.
 *
 * @since 4.6.0
 *
 * @param string $callback Supplied JSONP callback function.
 * @return bool True if valid callback, otherwise false.
 */
function wp_check_jsonp_callback($callback)
{
    if (!is_string($callback)) {
        return false;
    }
    preg_replace('/[^\w\.]/', '', $callback, -1, $illegal_char_count);
    return 0 === $illegal_char_count;
}

WordPress Version: 4.6

/**
 * Checks that a JSONP callback is a valid JavaScript callback.
 *
 * Only allows alphanumeric characters and the dot character in callback
 * function names. This helps to mitigate XSS attacks caused by directly
 * outputting user input.
 *
 * @since 4.6.0
 *
 * @param string $callback Supplied JSONP callback function.
 * @return bool True if valid callback, otherwise false.
 */
function wp_check_jsonp_callback($callback)
{
    if (!is_string($callback)) {
        return false;
    }
    $jsonp_callback = preg_replace('/[^\w\.]/', '', $callback, -1, $illegal_char_count);
    return 0 === $illegal_char_count;
}