Opened 19 months ago
Last modified 18 months ago
#19160 closed defect (bug)
is_user_member_of_blog() gives unexpected results on single site — at Version 1
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | 3.3 |
| Component: | Users | Version: | 3.1 |
| Severity: | normal | Keywords: | has-patch |
| Cc: |
Description (last modified by duck_)
On single site with a logged in user:
var_dump( is_user_member_of_blog() ); // bool(false)
This is because when passed an empty $blog_id the function uses $wpdb->blogid as the current blog which is 0 in single site, but the blog ID set by get_blogs_of_user() is get_current_blog_id().
Two possible solutions:
- Use get_current_blog_id()
Return result of is_user_logged_in() if ! is_multisite()Only works for the current user
Attached patch for 1.
is_blog_user() was included for single site in 3.1, see [15671], and didn't work as expected then either. It also caused a PHP notice as well as returning false.
Also see #16702, especially comment 21. Noticed whilst writing patches for #19122.
Change History (2)
Note: See
TracTickets for help on using
tickets.

Scratch out 2. as I wasn't thinking about passing a $user_id.