Title: get_core_updates
Published: April 25, 2014
Last modified: February 24, 2026

---

# get_core_updates( array $options = array() ): array|false

## In this article

 * [Parameters](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#wp--skip-link--target)

Gets available core updates.

## 󠀁[Parameters](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#parameters)󠁿

 `$options`arrayoptional

Set $options[`'dismissed'`] to true to show dismissed upgrades too, set $options[`'
available'`] to false to skip not-dismissed updates.

Default:`array()`

## 󠀁[Return](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#return)󠁿

 array|false Array of the update objects on success, false on failure.

## 󠀁[Source](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#source)󠁿

    ```php
    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;
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-admin/includes/update.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-admin/includes/update.php#L39)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-admin/includes/update.php#L39-L82)

## 󠀁[Related](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#related)󠁿

| Uses | Description | 
| [get_site_transient()](https://developer.wordpress.org/reference/functions/get_site_transient/)`wp-includes/option.php` |

Retrieves the value of a site transient.

  | 
| [get_site_option()](https://developer.wordpress.org/reference/functions/get_site_option/)`wp-includes/option.php` |

Retrieve an option value for the current network based on name of option.

  |

| Used by | Description | 
| [WP_Debug_Data::get_wp_core()](https://developer.wordpress.org/reference/classes/wp_debug_data/get_wp_core/)`wp-admin/includes/class-wp-debug-data.php` |

Gets the WordPress core section of the debug data.

  | 
| [core_auto_updates_settings()](https://developer.wordpress.org/reference/functions/core_auto_updates_settings/)`wp-admin/update-core.php` |

Display WordPress auto-updates settings.

  | 
| [WP_Site_Health::get_test_wordpress_version()](https://developer.wordpress.org/reference/classes/wp_site_health/get_test_wordpress_version/)`wp-admin/includes/class-wp-site-health.php` |

Tests for WordPress version and outputs it.

  | 
| [get_preferred_from_update_core()](https://developer.wordpress.org/reference/functions/get_preferred_from_update_core/)`wp-admin/includes/update.php` |

Selects the first update version from the update_core option.

  | 
| [list_core_update()](https://developer.wordpress.org/reference/functions/list_core_update/)`wp-admin/update-core.php` |

Lists available core updates.

  | 
| [dismissed_updates()](https://developer.wordpress.org/reference/functions/dismissed_updates/)`wp-admin/update-core.php` |

Display dismissed updates.

  | 
| [core_upgrade_preamble()](https://developer.wordpress.org/reference/functions/core_upgrade_preamble/)`wp-admin/update-core.php` |

Display upgrade WordPress for downloading latest or upgrading automatically form.

  | 
| [list_plugin_updates()](https://developer.wordpress.org/reference/functions/list_plugin_updates/)`wp-admin/update-core.php` |

Display the upgrade plugins form.

  | 
| [wp_get_update_data()](https://developer.wordpress.org/reference/functions/wp_get_update_data/)`wp-includes/update.php` |

Collects counts and UI strings for available updates.

  |

[Show 4 more](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#)
[Show less](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#)

## 󠀁[Changelog](https://developer.wordpress.org/reference/functions/get_core_updates/?output_format=md#changelog)󠁿

| Version | Description | 
| [2.7.0](https://developer.wordpress.org/reference/since/2.7.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Ffunctions%2Fget_core_updates%2F)
before being able to contribute a note or feedback.