函数文档

get_plugin_updates()

💡 云策文档标注

概述

get_plugin_updates() 函数用于检索有可用更新的插件列表。它通过比较当前插件数据和更新信息,返回一个包含更新插件的数组对象。

关键要点

  • 函数返回一个对象数组,每个对象代表一个有更新的插件,包含插件数据和更新信息。
  • 内部使用 get_plugins() 获取所有插件,get_site_transient('update_plugins') 获取更新数据。
  • 通过遍历插件文件,检查是否在更新响应中,来构建更新插件列表。

代码示例

function get_plugin_updates() {
    $all_plugins     = get_plugins();
    $upgrade_plugins = array();
    $current         = get_site_transient( 'update_plugins' );

    foreach ( (array) $all_plugins as $plugin_file => $plugin_data ) {
        if ( isset( $current->response[ $plugin_file ] ) ) {
            $upgrade_plugins[ $plugin_file ]         = (object) $plugin_data;
            $upgrade_plugins[ $plugin_file ]->update = $current->response[ $plugin_file ];
        }
    }

    return $upgrade_plugins;
}

注意事项

  • 此函数自 WordPress 2.9.0 版本引入。
  • 常用于调试、站点健康检查或更新管理功能中。

📄 原文内容

Retrieves plugins with updates available.

Return

object[]

Source

function get_plugin_updates() {
	$all_plugins     = get_plugins();
	$upgrade_plugins = array();
	$current         = get_site_transient( 'update_plugins' );

	foreach ( (array) $all_plugins as $plugin_file => $plugin_data ) {
		if ( isset( $current->response[ $plugin_file ] ) ) {
			$upgrade_plugins[ $plugin_file ]         = (object) $plugin_data;
			$upgrade_plugins[ $plugin_file ]->update = $current->response[ $plugin_file ];
		}
	}

	return $upgrade_plugins;
}

Changelog

Version Description
2.9.0 Introduced.