WordPress Version: 5.4
/**
* Cleans up Genericons example files.
*
* @since 4.2.2
*
* @global array $wp_theme_directories
* @global WP_Filesystem_Base $wp_filesystem
*/
function _upgrade_422_remove_genericons()
{
global $wp_theme_directories, $wp_filesystem;
// A list of the affected files using the filesystem absolute paths.
$affected_files = array();
// Themes.
foreach ($wp_theme_directories as $directory) {
$affected_theme_files = _upgrade_422_find_genericons_files_in_folder($directory);
$affected_files = array_merge($affected_files, $affected_theme_files);
}
// Plugins.
$affected_plugin_files = _upgrade_422_find_genericons_files_in_folder(WP_PLUGIN_DIR);
$affected_files = array_merge($affected_files, $affected_plugin_files);
foreach ($affected_files as $file) {
$gen_dir = $wp_filesystem->find_folder(trailingslashit(dirname($file)));
if (empty($gen_dir)) {
continue;
}
// The path when the file is accessed via WP_Filesystem may differ in the case of FTP.
$remote_file = $gen_dir . basename($file);
if (!$wp_filesystem->exists($remote_file)) {
continue;
}
if (!$wp_filesystem->delete($remote_file, false, 'f')) {
$wp_filesystem->put_contents($remote_file, '');
}
}
}