[buddypress-trac] [BuddyPress Trac] #5481: Buddypress should set user meta for single sites in bp_core_signup_user

buddypress-trac noreply at wordpress.org
Fri Mar 28 00:54:22 UTC 2014


#5481: Buddypress should set user meta for single sites in bp_core_signup_user
--------------------------+--------------------
 Reporter:  StijnDeWitt   |       Owner:
     Type:  defect (bug)  |      Status:  new
 Priority:  normal        |   Milestone:  2.0
Component:  Core          |     Version:  1.9.2
 Severity:  minor         |  Resolution:
 Keywords:                |
--------------------------+--------------------
Changes (by boonebgorges):

 * milestone:  Awaiting Review => 2.0


Comment:

 Hi StijnDeWitt - Thanks for the report and the thorough background
 research.

 > I consider the fact that BuddyPress attaches the meta for WPMU sites but
 not for single sites as a bug. Sorry if I'm wrong about that.

 You are wrong :) In non-MS, we create a user (with user_status = 2)
 immediately at registration time (ie, pre-activation), because non-MS WP
 does not have the concept of a "signup". Because we have a real user at
 that time, we are able to add the necessary xprofile data right there in
 bp_core_signup_user(). On Multisite, the WP user is only created at
 activation, so we do the same thing with xprofile data only at activation:
 https://buddypress.trac.wordpress.org/browser/branches/1.9/bp-members/bp-
 members-functions.php#L1341. So, we really do use the $usermeta in more or
 less the same way on MS vs non-MS - just at different times in the
 process.

 A big fat caveat to the above explanation: this is all changed for BP 2.0.
 In the future, even non-MS sites will use wp_signups. So it'll be much
 more consistent and transparent for intrepid explorers like you :) See
 #4651.

 So anyway, back to your issue.

 >  If it would add the user meta that remains after updating the user's
 xprofile, before calling the action hook, I could just pass on the user's
 account type in the $usermeta argument to bp_core_signup_user and then in
 my bp_core_signup_send_activation_key hook check this meta

 This is a clever idea, but I think it needs some more research before we
 implement anything like it. It's possible that people are putting any
 manner of weird payload into this usermeta (via plugins, etc), so we
 shouldn't be assuming it's safe or wise to insert into wp_usermeta.

 > Alternatively, you could pass on the $usermeta parameter to the
 bp_core_signup_send_activation_key directly when calling apply_filters.

 Yes. I'm surprised we don't do this already. I'm going to make this fix
 right away. Please let me know if it's enough for your purposes.

--
Ticket URL: <https://buddypress.trac.wordpress.org/ticket/5481#comment:1>
BuddyPress Trac <http://buddypress.org/>
BuddyPress Trac


More information about the buddypress-trac mailing list