I want to be able to upload files and either immediately or after upload assign multiple categories to them. I have 3 different kinds of PDF document: Treasurer report, minutes, and newsletter. What I want to be able to do is have a user assign a document type prior to the upload and have that type translate into multiple category assignments per document kind. Right now I have it set up so that if Media Library detects the upload, this code runs that assigns categories using a variable called doctype that is based on the form selection: add_action( "add_attachment", "execute_on_add_attachment_event" , 10, 1); function execute_on_add_attachment_event($attachment_id,$doctype){ switch ($doctype) { case'Minutes': $uploadCategory = array(946,974,933,923); break; case 'Treasurer Report': $uploadCategory = array(946,935); break; case 'Newsletter': $uploadCategory = array(946,975,922,937); break; default: $uploadCategory = array(974); break; } wp_set_object_terms( $attachment_id, $uploadCategory, 'category' ); } I have created a custom file upload form function that works (see below), it copies to the YYYY/MM folder in uploads, but Media Library doesn't seem to see it. Is there some way to make Wordpress Media Library aware of it? function myFileUploader() { if (isset($_POST['submit'])) { wp_upload_bits($_FILES['fileToUpload']['name'], null, file_get_contents($_FILES['fileToUpload']['tmp_name'])); } echo ' <form action="" method="post" enctype="multipart/form-data"> <input type="file" name="fileToUpload" id="fileToUpload"> <label for="doctype">Choose a document type:</label> <select id="doctype" name="doctype"> <option value="Newsletter">news</option> <option value="Minutes">mins</option> <option value="Treasurer Report">treas</option> </select> <input type="hidden" name="doctype" value="<?php echo '$doctype';?>"/> <input type="submit" value="Upload File" name="submit"> </form> '; } function myFileUploaderRenderer() { ob_start(); myFileUploader(); return ob_get_clean(); }