bp_media_upload_handler( string $file_id = 'file' )
Media upload handler
Description
Parameters
- $file_id
-
(Optional)
Default value: 'file'
Return
(array|int|null|WP_Error|WP_Post)
Source
File: bp-media/bp-media-functions.php
function bp_media_upload_handler( $file_id = 'file' ) { /** * Include required files */ 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' ); } if ( ! function_exists( 'media_handle_upload' ) ) { require_once( ABSPATH . 'wp-admin/includes/admin.php' ); } add_image_size( 'bp-media-thumbnail', 400, 400 ); add_image_size( 'bp-activity-media-thumbnail', 700, 700, true ); add_filter( 'upload_mimes', 'bp_media_allowed_mimes', 9, 1 ); $aid = media_handle_upload( $file_id, 0, array(), array( 'test_form' => false, 'upload_error_strings' => array( false, __( 'The uploaded file exceeds ', 'buddyboss' ) . bp_media_file_upload_max_size( true ), __( 'The uploaded file exceeds ', 'buddyboss' ) . bp_media_file_upload_max_size( true ), __( 'The uploaded file was only partially uploaded.', 'buddyboss' ), __( 'No file was uploaded.', 'buddyboss' ), '', __( 'Missing a temporary folder.', 'buddyboss' ), __( 'Failed to write file to disk.', 'buddyboss' ), __( 'File upload stopped by extension.', 'buddyboss' ) ) ) ); remove_image_size( 'bp-media-thumbnail' ); remove_image_size( 'bp-activity-media-thumbnail' ); // if has wp error then throw it. if ( is_wp_error( $aid ) ) { return $aid; } $attachment = get_post( $aid ); if ( ! empty( $attachment ) ) { update_post_meta( $attachment->ID, 'bp_media_upload', true ); update_post_meta( $attachment->ID, 'bp_media_saved', '0' ); return $attachment; } return new WP_Error( 'error_uploading', __( 'Error while uploading media.', 'buddyboss' ), array( 'status' => 500 ) ); }
Changelog
Version | Description |
---|---|
BuddyBoss 1.0.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.