Я пытаюсь использовать wp_handle_upload в вызове ajax. Эта функция работает как часть POST с обновлением страницы. Сейчас я пытаюсь вызвать это с помощью действия Ajax, связанного с Dropzone. Кажется, что все работает нормально, кроме этой функции, которая должна сохранять файл.

При вызове этой функции с $ fileAdd = Fyxt_Gm_Tools_Public :: fyxt_add_image ($ file, ‘char’) я получаю ошибку. $ File выводится в виде массива, поэтому, похоже, я передаю правильную информацию:

file: {name: ["bbc-hd-test-card.png"], type: ["image/png"], tmp_name: ["C:xampptmpphp6A9E.tmp"],…} error: [0] name: ["bbc-hd-test-card.png"] size: [944938] tmp_name: ["C:xampptmpphp6A9E.tmp"] type: ["image/png"] 

Я получаю эту ошибку:

 fileAdd: {error: [0]} error: [0] 0: 0 

Вот функция.

 function fyxt_add_image( $file, $type ){ //adds prefilter to add to name of file add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' ); function custom_upload_filter( $file ){ $file['name'] = 'fyxt-rpg-' . $file['name']; return $file; } //handles the upload function if ( ! function_exists( 'wp_handle_upload' ) ) { require_once( ABSPATH . 'wp-admin/includes/file.php' ); } $upload_overrides = array( 'test_form' ={amp}gt; false ); switch ($type) { case 'item': $folder = 'item'; break; case 'char': $folder = 'char'; break; case 'npc': $folder = 'mons'; break; case 'art': $folder = 'arti'; break; case 'comm': $folder = 'comm'; break; } $yy = date('y'); $dir = $folder.'/'.$yy; $movefile = wp_handle_upload( $file, $upload_overrides, $dir ); return $movefile; } 

Любые идеи, почему это возвращается с ошибкой, когда вызывается действием AJAX, но когда эта же функция вызывается в POST на другой странице, она работает просто отлично. Так странно. Спасибо за помощь!