public function delete_alt_plugins_dirs($alt_heap = "")
{
$orig_plugins_dir = WP_PLUGIN_DIR;
$alt_dirs_to_delete = self::get_alt_plugins_dirs($alt_heap);
foreach ($alt_dirs_to_delete as $alt_plugins_dir) {
// panic and exit early if directories are the same
if ($orig_plugins_dir == $alt_plugins_dir) {
return false;
}
// recursively delete the alt plugins dir
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($alt_plugins_dir), RecursiveIteratorIterator::CHILD_FIRST);
foreach ($iterator as $node) {
if (in_array($node->getBasename(), array('.', '..'))) {
continue;
} elseif ($node->isFile() || $node->isLink()) {
unlink($node->getPathname());
} else {
rmdir($node->getPathname());
}
}
rmdir($alt_plugins_dir);
}
return true;
}