get_core_updates

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

WordPress Version: 5.4

/**
 * Gets available core updates.
 *
 * @since 2.7.0
 *
 * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
 *                       set $options['available'] to false to skip not-dismissed updates.
 * @return array|false Array of the update objects on success, false on failure.
 */
function get_core_updates($options = array())
{
    $options = array_merge(array('available' => true, 'dismissed' => false), $options);
    $dismissed = get_site_option('dismissed_update_core');
    if (!is_array($dismissed)) {
        $dismissed = array();
    }
    $from_api = get_site_transient('update_core');
    if (!isset($from_api->updates) || !is_array($from_api->updates)) {
        return false;
    }
    $updates = $from_api->updates;
    $result = array();
    foreach ($updates as $update) {
        if ('autoupdate' === $update->response) {
            continue;
        }
        if (array_key_exists($update->current . '|' . $update->locale, $dismissed)) {
            if ($options['dismissed']) {
                $update->dismissed = true;
                $result[] = $update;
            }
        } else if ($options['available']) {
            $update->dismissed = false;
            $result[] = $update;
        }
    }
    return $result;
}

WordPress Version: 5.1

/**
 * Get available core updates.
 *
 * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
 *                       set $options['available'] to false to skip not-dismissed updates.
 * @return array|false Array of the update objects on success, false on failure.
 */
function get_core_updates($options = array())
{
    $options = array_merge(array('available' => true, 'dismissed' => false), $options);
    $dismissed = get_site_option('dismissed_update_core');
    if (!is_array($dismissed)) {
        $dismissed = array();
    }
    $from_api = get_site_transient('update_core');
    if (!isset($from_api->updates) || !is_array($from_api->updates)) {
        return false;
    }
    $updates = $from_api->updates;
    $result = array();
    foreach ($updates as $update) {
        if ($update->response == 'autoupdate') {
            continue;
        }
        if (array_key_exists($update->current . '|' . $update->locale, $dismissed)) {
            if ($options['dismissed']) {
                $update->dismissed = true;
                $result[] = $update;
            }
        } else if ($options['available']) {
            $update->dismissed = false;
            $result[] = $update;
        }
    }
    return $result;
}

WordPress Version: 4.3

/**
 * Get available core updates.
 *
 * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
 * 	                     set $options['available'] to false to skip not-dismissed updates.
 * @return array|false Array of the update objects on success, false on failure.
 */
function get_core_updates($options = array())
{
    $options = array_merge(array('available' => true, 'dismissed' => false), $options);
    $dismissed = get_site_option('dismissed_update_core');
    if (!is_array($dismissed)) {
        $dismissed = array();
    }
    $from_api = get_site_transient('update_core');
    if (!isset($from_api->updates) || !is_array($from_api->updates)) {
        return false;
    }
    $updates = $from_api->updates;
    $result = array();
    foreach ($updates as $update) {
        if ($update->response == 'autoupdate') {
            continue;
        }
        if (array_key_exists($update->current . '|' . $update->locale, $dismissed)) {
            if ($options['dismissed']) {
                $update->dismissed = true;
                $result[] = $update;
            }
        } else if ($options['available']) {
            $update->dismissed = false;
            $result[] = $update;
        }
    }
    return $result;
}

WordPress Version: 3.9

/**
 * Get available core updates.
 *
 * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
 * 	set $options['available'] to false to skip not-dismissed updates.
 * @return bool|array Array of the update objects on success, false on failure.
 */
function get_core_updates($options = array())
{
    $options = array_merge(array('available' => true, 'dismissed' => false), $options);
    $dismissed = get_site_option('dismissed_update_core');
    if (!is_array($dismissed)) {
        $dismissed = array();
    }
    $from_api = get_site_transient('update_core');
    if (!isset($from_api->updates) || !is_array($from_api->updates)) {
        return false;
    }
    $updates = $from_api->updates;
    $result = array();
    foreach ($updates as $update) {
        if ($update->response == 'autoupdate') {
            continue;
        }
        if (array_key_exists($update->current . '|' . $update->locale, $dismissed)) {
            if ($options['dismissed']) {
                $update->dismissed = true;
                $result[] = $update;
            }
        } else if ($options['available']) {
            $update->dismissed = false;
            $result[] = $update;
        }
    }
    return $result;
}

WordPress Version: 3.7

/**
 * Get available core updates
 *
 * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
 * 	set $options['available'] to false to skip not-dismissed updates.
 * @return array Array of the update objects
 */
function get_core_updates($options = array())
{
    $options = array_merge(array('available' => true, 'dismissed' => false), $options);
    $dismissed = get_site_option('dismissed_update_core');
    if (!is_array($dismissed)) {
        $dismissed = array();
    }
    $from_api = get_site_transient('update_core');
    if (!isset($from_api->updates) || !is_array($from_api->updates)) {
        return false;
    }
    $updates = $from_api->updates;
    $result = array();
    foreach ($updates as $update) {
        if ($update->response == 'autoupdate') {
            continue;
        }
        if (array_key_exists($update->current . '|' . $update->locale, $dismissed)) {
            if ($options['dismissed']) {
                $update->dismissed = true;
                $result[] = $update;
            }
        } else if ($options['available']) {
            $update->dismissed = false;
            $result[] = $update;
        }
    }
    return $result;
}