public static function getWordPressInfo()
{
$info = [];
$info['wp-version'] = get_bloginfo('version');
$info['siteurl'] = get_site_url();
$info['home'] = get_home_url();
if (!function_exists('get_plugins')) {
require_once ABSPATH . 'wp-admin/includes/plugin.php';
}
$installedPlugins = get_plugins();
array_walk($installedPlugins, function (&$pluginInfo, $pluginFile) {
// only keep certain keys - disregard fields like description etc.
$keysToKeep = ['Name', 'PluginURI', 'Version', 'Author', 'AuthorURI'];
$pluginInfo = array_intersect_key($pluginInfo, array_flip($keysToKeep));
// add info whether the plugin is active or not
$pluginInfo['__IsActive'] = is_plugin_active($pluginFile);
});
$info['installed-plugins'] = $installedPlugins;
$info['installed-themes'] = array_keys(wp_get_themes());
$info['active-plugins'] = get_option('active_plugins');
$info['active-theme'] = self::getActiveThemeInfo();
return $info;
}