WordPress Version: 6.3
/**
* Recursively find Genericons example files in a given folder.
*
* @ignore
* @since 4.2.2
*
* @param string $directory Directory path. Expects trailingslashed.
* @return array
*/
function _upgrade_422_find_genericons_files_in_folder($directory)
{
$directory = trailingslashit($directory);
$files = array();
if (file_exists("{$directory}example.html") && false !== strpos(file_get_contents("{$directory}example.html"), '<title>Genericons</title>')) {
$files[] = "{$directory}example.html";
}
$dirs = glob($directory . '*', GLOB_ONLYDIR);
$dirs = array_filter($dirs, static function ($dir) {
/*
* Skip any node_modules directories.
*
* Note: str_contains() is not used here, as this file is included
* when updating from older WordPress versions, in which case
* the polyfills from wp-includes/compat.php may not be available.
*/
return false === strpos($dir, 'node_modules');
});
if ($dirs) {
foreach ($dirs as $dir) {
$files = array_merge($files, _upgrade_422_find_genericons_files_in_folder($dir));
}
}
return $files;
}