Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save nextab/ecbff9e2d611028cc2c3fc05b8976f8e to your computer and use it in GitHub Desktop.

Select an option

Save nextab/ecbff9e2d611028cc2c3fc05b8976f8e to your computer and use it in GitHub Desktop.
Dieser Filter verbietet es Nicht-Admins Bilder, die größer als 1 MB sind, hochzuladen. Zudem werden alle von Nicht-Admins hochgeladenen Bilder (die nicht größer als 1 MB sind) mit der user-ID des jeweiligen Users im Dateinamen versehen.
#region Upload Filter
function edg_upload_filters_max_image_file_size( $file ) {
// File Size Limit in KB (1024 => 1 MB)
$file_size_limit = 1024;
$current_size = $file['size'];
$current_size = $current_size / 1024;
$is_image = (strpos( $file['type'], 'image' ) !== false) ? true : false;
if ( ! current_user_can( 'manage_options' ) && $is_image ) {
if ( $current_size > $file_size_limit ) {
$file['error'] = 'Bilder dürfen max. ' . $file_size_limit / 1024 . ' MB groß sein.';
} else {
$file['name'] = 'user-' . get_current_user_id() . '-' . $file['name'];
}
}
return $file;
}
add_filter ( 'wp_handle_upload_prefilter', 'edg_upload_filters_max_image_file_size' );
#endregion Upload Filter
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment