I'm trying to limit the amount of files a user can upload through the wp gallery, and i've found the following filter from this link Limit image upload to one and disable audio, video and other document file types to upload

add_filter('wp_handle_upload_prefilter', 'yoursite_wp_handle_upload_prefilter');
function yoursite_wp_handle_upload_prefilter($file) {
  list($category,$type) = explode('/',$file['type']);
  if ('image'!=$category || !in_array($type,array('jpg','jpeg','gif','png'))) {
    $file['error'] = "Sorry, you can only upload a .GIF, a .JPG, or a .PNG image file.";
  } else if ($post_id = (isset($_REQUEST['post_id']) ? $_REQUEST['post_id'] : false)) {
    if (count(get_posts("post_type=attachment&post_parent={$post_id}"))>0)
      $file['error'] = "Sorry, you cannot upload more than one (1) image.";
  return $file;

However this filter works only on the current post, what i'm trying to achieve is to limit the upload only on that instance when the user opens the uploader, is it possible ? The reason for this is that i'm using the advancedcustomfields plugin to post from the frontend and with that code the uploader thinks the user is trying to upload on the same post/page which but he's not.

Thank you.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.