Example #1
0
 /**
  * @param string $fileId id from $_FILES
  * @param bool $validateImage makes sure, it's an image
  * @return int attachment id of the uploaded item
  */
 public static function uploadAttachment($fileId, $validateImage)
 {
     if (!function_exists('wp_generate_attachment_metadata')) {
         require_once ABSPATH . 'wp-admin/includes/image.php';
         require_once ABSPATH . 'wp-admin/includes/file.php';
         require_once ABSPATH . 'wp-admin/includes/media.php';
     }
     // Check for images, if needed, and return 0 if no image
     if ($validateImage) {
         $file = $_FILES[$fileId];
         if (!File::isImage($file['name']) || !File::isImageMime($file['type'])) {
             return 0;
         }
     }
     // Run the update
     $result = media_handle_upload($fileId, 0);
     // Check for errors
     if ($result instanceof WP_Error) {
         return 0;
     }
     return intval($result);
 }