我正在开发一个wordpress插件,要求用户删除(或删除)目录或文件。
function filesystem_init($form_url, $method, $context, $fields = null) {
global $wp_filesystem;
/* get credentials */
if (false === ($creds = request_filesystem_credentials($form_url, $method, false, $context, $fields))) {
return false;
}
if (!WP_Filesystem($creds)) {
/* incorrect connection data - ask for credentials again, now with error message */
request_filesystem_credentials($form_url, $method, true, $context);
return false;
}
return true; //successfully initiated
}
WP_PLUGIN_DIR.'/myp/mfold/selectedfolder/index.php';
function RemoveData($form_url){
global $wp_filesystem;
check_admin_referer('ToRemoveData');
$ToRemove = $_POST['dirToGo'];
$form_fields = array('dirToGo');
$method = '';
$targetFolder= WP_PLUGIN_DIR . '/myp/mfold/'.$ToRemove; //target folder
$form_url = wp_nonce_url($form_url, 'ToRemoveData'); //page field with nonce value
if(!filesystem_init($form_url, $method, $targetFolder, $form_fields))
return false;
if($wp_filesystem->is_dir($targetFolder))
{
$wp_filesystem->rmdir($targetFolder);
//WP_Filesystem_Base::delete($targetFolder);
return " Successful !";
}
else
{
return new WP_Error('writing_error', 'Cannot Remove');
}//return error object
}//close function
此功能返回成功,但文件夹或目录未删除。
任何想法的人都谢谢
答案 0 :(得分:0)
$wp_filesystem->delete($target_folder, true);
使用此代码删除目录。