Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gianghl1983/d47b6915222e74246be193d63e30935f to your computer and use it in GitHub Desktop.
Save gianghl1983/d47b6915222e74246be193d63e30935f to your computer and use it in GitHub Desktop.
Change the upload directory of Advanced Custom Fields file upload field.
<?php
// ACF upload prefilter
function gist_acf_upload_dir_prefilter($errors, $file, $field) {
// Only allow editors and admins, change capability as you see fit
if( !current_user_can('edit_pages') ) {
$errors[] = 'Only Editors and Administrators may upload attachments';
}
// This filter changes directory just for item being uploaded
add_filter('upload_dir', 'gist_acf_upload_dir');
}
// ACF hook, set to field key of your file upload field
add_filter('acf/upload_prefilter/key=field_580ac5acd5616', 'gist_acf_upload_dir_prefilter');
// Custom upload directory
function gist_acf_upload_dir($param) {
// Set to whatever directory you want the ACF file field to upload to
$custom_dir = '/uploads/custom_dir';
$param['path'] = WP_CONTENT_DIR . $custom_dir;
$param['url'] = WP_CONTENT_URL . $custom_dir;
return $param;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment