bp_media_add( array|string $args = '' )
Add an media item.
Description
Parameters
- $args
-
(Optional) An array of arguments.
- 'id'
(int|bool) Pass an media ID to update an existing item, or false to create a new item. Default: false. - 'blog_id'
(int|bool) ID of the blog Default: current blog id. - 'attchment_id'
(int|bool) ID of the attachment Default: false - 'user_id'
(int|bool) Optional. The ID of the user associated with the activity item. May be set to false or 0 if the item is not related to any user. Default: the ID of the currently logged-in user. - 'title'
(string) Optional. The title of the media item. - 'album_id'
(int) Optional. The ID of the associated album. - 'group_id'
(int) Optional. The ID of a associated group. - 'activity_id'
(int) Optional. The ID of a associated activity. - 'privacy'
(string) Optional. Privacy of the media Default: public - 'menu_order'
(int) Optional. Menu order the media Default: false - 'date_created'
(string) Optional. The GMT time, in Y-m-d h:i:s format, when the item was recorded. Defaults to the current time. - 'error_type'
(string) Optional. Error type. Either 'bool' or 'wp_error'. Default: 'bool'.
Default value: ''
- 'id'
Return
(WP_Error|bool|int) The ID of the media on success. False on error.
Source
File: bp-media/bp-media-functions.php
function bp_media_add( $args = '' ) { $r = bp_parse_args( $args, array( 'id' => false, // Pass an existing media ID to update an existing entry. 'blog_id' => get_current_blog_id(), // Blog ID 'attachment_id' => false, // attachment id. 'user_id' => bp_loggedin_user_id(), // user_id of the uploader. 'title' => '', // title of media being added. 'album_id' => false, // Optional: ID of the album. 'group_id' => false, // Optional: ID of the group. 'activity_id' => false, // The ID of activity. 'privacy' => 'public', // Optional: privacy of the media e.g. public. 'menu_order' => 0, // Optional: Menu order. 'date_created' => bp_core_current_time(), // The GMT time that this media was recorded 'error_type' => 'bool' ), 'media_add' ); // Setup media to be added. $media = new BP_Media( $r['id'] ); $media->blog_id = $r['blog_id']; $media->attachment_id = $r['attachment_id']; $media->user_id = (int) $r['user_id']; $media->title = $r['title']; $media->album_id = (int) $r['album_id']; $media->group_id = (int) $r['group_id']; $media->activity_id = (int) $r['activity_id']; $media->privacy = $r['privacy']; $media->menu_order = $r['menu_order']; $media->date_created = $r['date_created']; $media->error_type = $r['error_type']; // groups media always have privacy to `grouponly` if ( ! empty( $media->group_id ) ) { $media->privacy = 'grouponly'; } $save = $media->save(); if ( 'wp_error' === $r['error_type'] && is_wp_error( $save ) ) { return $save; } elseif ('bool' === $r['error_type'] && false === $save ) { return false; } /** * Fires at the end of the execution of adding a new media item, before returning the new media item ID. * * @since BuddyBoss 1.0.0 * * @param array $r Array of parsed arguments for the media item being added. */ do_action( 'bp_media_add', $r ); return $media->id; }
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.