groups_notification_group_updated( int $group_id, BP_Groups_Group|null $old_group = null )
Notify all group members when a group is updated.
Description
Parameters
- $group_id
-
(Required) ID of the group.
- $old_group
-
(Optional) Group before new details were saved.
Default value: null
Source
File: bp-groups/bp-groups-notifications.php
function groups_notification_group_updated( $group_id = 0, $old_group = null ) { $group = groups_get_group( $group_id ); if ( $old_group instanceof BP_Groups_Group ) { $changed = array(); if ( $group->name !== $old_group->name ) { $changed[] = sprintf( __( '* Name changed from "%s" to "%s".', 'buddyboss' ), esc_html( $old_group->name ), esc_html( $group->name ) ); } if ( $group->description !== $old_group->description ) { $changed[] = sprintf( __( '* Description changed from "%s" to "%s".', 'buddyboss' ), esc_html( $old_group->description ), esc_html( $group->description ) ); } if ( $group->slug !== $old_group->slug ) { $changed[] = sprintf( __( '* Permalink changed from "%s" to "%s".', 'buddyboss' ), esc_url( bp_get_group_permalink( $old_group ) ), esc_url( bp_get_group_permalink( $group ) ) ); } } /** * Filters the bullet points listing updated items in the email notification after a group is updated. * * @since BuddyPress 2.2.0 * * @param array $changed Array of bullet points. */ $changed = apply_filters( 'groups_notification_group_update_updated_items', $changed ); $changed_text = ''; if ( ! empty( $changed ) ) { $changed_text = implode( "\n", $changed ); } $user_ids = BP_Groups_Member::get_group_member_ids( $group->id ); foreach ( (array) $user_ids as $user_id ) { // Continue if member opted out of receiving this email. if ( 'no' === bp_get_user_meta( $user_id, 'notification_groups_group_updated', true ) ) { continue; } $unsubscribe_args = array( 'user_id' => $user_id, 'notification_type' => 'groups-details-updated', ); $args = array( 'tokens' => array( 'changed_text' => $changed_text, 'group' => $group, 'group.id' => $group_id, 'group.url' => esc_url( bp_get_group_permalink( $group ) ), 'group.name' => $group->name, 'unsubscribe' => esc_url( bp_email_get_unsubscribe_link( $unsubscribe_args ) ), ), ); bp_send_email( 'groups-details-updated', (int) $user_id, $args ); } /** * Fires after the notification is sent that a group has been updated. * * See https://buddypress.trac.wordpress.org/ticket/3644 for blank message parameter. * * @since BuddyPress 1.5.0 * @since BuddyPress 2.5.0 $subject has been unset and is deprecated. * * @param array $user_ids Array of user IDs to notify about the update. * @param string $subject Deprecated in 2.5; now an empty string. * @param string $value Empty string preventing PHP error. * @param int $group_id ID of the group that was updated. */ do_action( 'bp_groups_sent_updated_email', $user_ids, '', '', $group_id ); }
Changelog
Version | Description |
---|---|
BuddyPress 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.