sanitize_trackback_urls

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

WordPress Version: 6.1

/**
 * Sanitizes space or carriage return separated URLs that are used to send trackbacks.
 *
 * @since 3.4.0
 *
 * @param string $to_ping Space or carriage return separated URLs
 * @return string URLs starting with the http or https protocol, separated by a carriage return.
 */
function sanitize_trackback_urls($to_ping)
{
    $urls_to_ping = preg_split('/[\r\n\t ]/', trim($to_ping), -1, PREG_SPLIT_NO_EMPTY);
    foreach ($urls_to_ping as $k => $url) {
        if (!preg_match('#^https?://.#i', $url)) {
            unset($urls_to_ping[$k]);
        }
    }
    $urls_to_ping = array_map('sanitize_url', $urls_to_ping);
    $urls_to_ping = implode("\n", $urls_to_ping);
    /**
     * Filters a list of trackback URLs following sanitization.
     *
     * The string returned here consists of a space or carriage return-delimited list
     * of trackback URLs.
     *
     * @since 3.4.0
     *
     * @param string $urls_to_ping Sanitized space or carriage return separated URLs.
     * @param string $to_ping      Space or carriage return separated URLs before sanitization.
     */
    return apply_filters('sanitize_trackback_urls', $urls_to_ping, $to_ping);
}

WordPress Version: 4.6

/**
 * Sanitize space or carriage return separated URLs that are used to send trackbacks.
 *
 * @since 3.4.0
 *
 * @param string $to_ping Space or carriage return separated URLs
 * @return string URLs starting with the http or https protocol, separated by a carriage return.
 */
function sanitize_trackback_urls($to_ping)
{
    $urls_to_ping = preg_split('/[\r\n\t ]/', trim($to_ping), -1, PREG_SPLIT_NO_EMPTY);
    foreach ($urls_to_ping as $k => $url) {
        if (!preg_match('#^https?://.#i', $url)) {
            unset($urls_to_ping[$k]);
        }
    }
    $urls_to_ping = array_map('esc_url_raw', $urls_to_ping);
    $urls_to_ping = implode("\n", $urls_to_ping);
    /**
     * Filters a list of trackback URLs following sanitization.
     *
     * The string returned here consists of a space or carriage return-delimited list
     * of trackback URLs.
     *
     * @since 3.4.0
     *
     * @param string $urls_to_ping Sanitized space or carriage return separated URLs.
     * @param string $to_ping      Space or carriage return separated URLs before sanitization.
     */
    return apply_filters('sanitize_trackback_urls', $urls_to_ping, $to_ping);
}

WordPress Version: 3.8

/**
 * Sanitize space or carriage return separated URLs that are used to send trackbacks.
 *
 * @since 3.4.0
 *
 * @param string $to_ping Space or carriage return separated URLs
 * @return string URLs starting with the http or https protocol, separated by a carriage return.
 */
function sanitize_trackback_urls($to_ping)
{
    $urls_to_ping = preg_split('/[\r\n\t ]/', trim($to_ping), -1, PREG_SPLIT_NO_EMPTY);
    foreach ($urls_to_ping as $k => $url) {
        if (!preg_match('#^https?://.#i', $url)) {
            unset($urls_to_ping[$k]);
        }
    }
    $urls_to_ping = array_map('esc_url_raw', $urls_to_ping);
    $urls_to_ping = implode("\n", $urls_to_ping);
    /**
     * Filter a list of trackback URLs following sanitization.
     *
     * The string returned here consists of a space or carriage return-delimited list
     * of trackback URLs.
     *
     * @since 3.4.0
     *
     * @param string $urls_to_ping Sanitized space or carriage return separated URLs.
     * @param string $to_ping      Space or carriage return separated URLs before sanitization.
     */
    return apply_filters('sanitize_trackback_urls', $urls_to_ping, $to_ping);
}

WordPress Version: 3.7

/**
 * Sanitize space or carriage return separated URLs that are used to send trackbacks.
 *
 * @since 3.4.0
 *
 * @param string $to_ping Space or carriage return separated URLs
 * @return string URLs starting with the http or https protocol, separated by a carriage return.
 */
function sanitize_trackback_urls($to_ping)
{
    $urls_to_ping = preg_split('/[\r\n\t ]/', trim($to_ping), -1, PREG_SPLIT_NO_EMPTY);
    foreach ($urls_to_ping as $k => $url) {
        if (!preg_match('#^https?://.#i', $url)) {
            unset($urls_to_ping[$k]);
        }
    }
    $urls_to_ping = array_map('esc_url_raw', $urls_to_ping);
    $urls_to_ping = implode("\n", $urls_to_ping);
    return apply_filters('sanitize_trackback_urls', $urls_to_ping, $to_ping);
}