<form method="post" action="" enctype="multipart/form-data"> <p> <input type="file" name="myfile" id="myfile" /> </p> <p><input type="submit" value="Uploaden" id="submit" name="submit" class="submit" /></p> </form>
// https://cube3x.com/upload-files-to-wordpress-media-library-using-php/ if(@$_FILES['myfile']['size']){ if ( ! function_exists( 'wp_handle_upload' ) ) require_once( ABSPATH . 'wp-admin/includes/file.php' ); if ( ! function_exists( 'wp_generate_attachment_metadata' ) ) require_once( ABSPATH . 'wp-admin/includes/image.php' ); $uploadedfile = $_FILES['myfile']; if($uploadedfile){ $upload_overrides = array( 'test_form' => false ); $movefile = wp_handle_upload( $uploadedfile, $upload_overrides ); if ( $movefile ) { $post = array( 'post_title' => time(), 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'card' ); $upload_post_id = wp_insert_post($post); do_action('wp_insert_post', 'wp_insert_post'); $wp_filetype = $movefile['type']; $filename = $movefile['file']; $wp_upload_dir = wp_upload_dir(); $attachment = array( 'guid' => $wp_upload_dir['url'] . '/' . basename( $filename ), 'post_mime_type' => $wp_filetype, 'post_title' => preg_replace('/\.[^.]+$/', '', basename($filename)), 'post_content' => '', 'post_status' => 'inherit' ); $attach_id = wp_insert_attachment( $attachment, $filename, $upload_post_id); $attach_data = wp_generate_attachment_metadata($attach_id, $filename); //dump($attach_data); die; wp_update_attachment_metadata($attach_id, $attach_data); set_post_thumbnail( $upload_post_id, $attach_id); if($attach_id) header("Location: ".get_permalink(PAGE_ID_EXAMPLE)); } } }