filter_default_option

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

WordPress Version: 6.2

/**
 * Filters the default value for the option.
 *
 * For settings which register a default setting in `register_setting()`, this
 * function is added as a filter to `default_option_{$option}`.
 *
 * @since 4.7.0
 *
 * @param mixed  $default_value  Existing default value to return.
 * @param string $option         Option name.
 * @param bool   $passed_default Was `get_option()` passed a default value?
 * @return mixed Filtered default value.
 */
function filter_default_option($default_value, $option, $passed_default)
{
    if ($passed_default) {
        return $default_value;
    }
    $registered = get_registered_settings();
    if (empty($registered[$option])) {
        return $default_value;
    }
    return $registered[$option]['default'];
}

WordPress Version: 5.5

/**
 * Filters the default value for the option.
 *
 * For settings which register a default setting in `register_setting()`, this
 * function is added as a filter to `default_option_{$option}`.
 *
 * @since 4.7.0
 *
 * @param mixed  $default        Existing default value to return.
 * @param string $option         Option name.
 * @param bool   $passed_default Was `get_option()` passed a default value?
 * @return mixed Filtered default value.
 */
function filter_default_option($default, $option, $passed_default)
{
    if ($passed_default) {
        return $default;
    }
    $registered = get_registered_settings();
    if (empty($registered[$option])) {
        return $default;
    }
    return $registered[$option]['default'];
}

WordPress Version: 5.4

/**
 * Filters the default value for the option.
 *
 * For settings which register a default setting in `register_setting()`, this
 * function is added as a filter to `default_option_{$option}`.
 *
 * @since 4.7.0
 *
 * @param mixed $default Existing default value to return.
 * @param string $option Option name.
 * @param bool $passed_default Was `get_option()` passed a default value?
 * @return mixed Filtered default value.
 */
function filter_default_option($default, $option, $passed_default)
{
    if ($passed_default) {
        return $default;
    }
    $registered = get_registered_settings();
    if (empty($registered[$option])) {
        return $default;
    }
    return $registered[$option]['default'];
}

WordPress Version: 4.7

/**
 * Filter the default value for the option.
 *
 * For settings which register a default setting in `register_setting()`, this
 * function is added as a filter to `default_option_{$option}`.
 *
 * @since 4.7.0
 *
 * @param mixed $default Existing default value to return.
 * @param string $option Option name.
 * @param bool $passed_default Was `get_option()` passed a default value?
 * @return mixed Filtered default value.
 */
function filter_default_option($default, $option, $passed_default)
{
    if ($passed_default) {
        return $default;
    }
    $registered = get_registered_settings();
    if (empty($registered[$option])) {
        return $default;
    }
    return $registered[$option]['default'];
}