bp_activity_find_mentions( string $content )
Find mentioned users from activity content
Description
Parameters
- $content
-
(Required) The content of the activity, usually found in $activity->content.
Return
(array|bool) Associative array with user ID as key and username as value. Boolean false if no mentions found.
Source
File: bp-activity/bp-activity-functions.php
function bp_activity_find_mentions( $content ) { $pattern = '/[@]+([A-Za-z0-9-_\.@]+)\b/'; preg_match_all( $pattern, $content, $usernames ); // Make sure there's only one instance of each username. $usernames = array_unique( $usernames[1] ); // Bail if no usernames. if ( empty( $usernames ) ) { return false; } $mentioned_users = array(); // We've found some mentions! Check to see if users exist. foreach( (array) array_values( $usernames ) as $username ) { $user_id = bp_activity_get_userid_from_mentionname( $username ); // The user ID exists, so let's add it to our array. if ( ! empty( $user_id ) ) { $mentioned_users[ $user_id ] = $username; } } if ( empty( $mentioned_users ) ) { return false; } /** * Filters the mentioned users. * * @since BuddyPress 2.5.0 * * @param array $mentioned_users Associative array with user IDs as keys and usernames as values. */ return apply_filters( 'bp_activity_mentioned_users', $mentioned_users ); }
Changelog
Version | Description |
---|---|
BuddyPress 1.5.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.