Conclusions
At this point anyone who wants to approach this task needs to resolve the issues brought up previously on page 4 regarding the level of desired synchronization. In addition, there needs to be a map developed between the profile data elements in WP and the profile data elements in BP defining where the synchronization occurs at a detail level? These can both become somewhat nasty tasks.
Another alternative is to ignore the WP profile as much as possible and make maximal use of the BP facilities for profile management. Any desired elements that are part of a WP profile can be re-created and maintained as BP elements. Synchronization is not an issue if no one ever looks at or uses the WP profile. (The critical elements that exist in the shared users table will be maintained by BP as a natural course of work.) Not ideal, but it wouldn’t be the first time someone hid unused old code in a dark closet that was never visited.
The ideal approach from my perspective would be for the lead developer teams of WordPress and BuddyPress to agree to merge the core profile functionality of both systems into a single set of shared tables and functions. Normalization of data and function is usually the best approach for usability and maintainability.
For anyone interested in performing synchronization of the two existing systems there are more tools that can be brought to bear in solving the problem. The action hooks now employed by the BP xprofile functions shown above are not the only hooks available for use. I would highly recommend a full review of the action hooks and filters in the WP Codex, and the BuddyPress Codex Action Reference for the Extended Profiles feature. In some cases, rather than creating and maintaining duplicate data, you might use these hooks to display or use data from one side of the system for a function or screen on the other side. Eliminating the data redundancy and the maintenance problem might be a better move than trying to manage synchronization later.
Pingback: Drupal-WordPress Evaluation, Part 1 | Building Architected Futures™
Pingback: BuddyPress – Your Own Social Network
Still none the wiser… this is a real pain! Has anyone any more info to share?
Thanks for the comment. I’m not sure how much is being done on this. I’d suggest tracking through the BP ticket system, including the ticket I identified on the last page of this article.
Sorry, I realise my comment sounded very negative, especially in light of the fact that your article is the best explanation by far so far. I am wiser, thanks to you, but I suppose frustrated that these (basic) things ‘get in the way’ of setting up a working system. As a fan of BuddyPress who has spent many, many hours putting sites together and convincing users they will have a great system working for little outlay, I keep tripping up over ‘simple’ things like this. Can’t help feeling BuddyPress will be steamrollered by something else within a short while and that will be that. But I digress.
Hello,
Just come across this and looking at doing the same for a site I’m working on, wondering if this ever got resolved? Thanks
Hi Andy.
I haven’t really followed what’s happening on this for a while now. What I do know is that I am still getting a steady trickle of interest, people reviewing this issue, on an ongoing basis. So my impression would be that the general issue remains.
For myself, the issue came up as a function of trying to decide whether or not to use WP or Drupal as the basis for another site I was building. The handling of users and permissions was a factor that caused me to go with Drupal. I use WP for this blog, but this site doesn’t have the multi-party profile management issues so it’s not a problem here.
If you do find a solution, or create one, feel free to provide a link and reference it here as a further comment. As people continue to search through here to investigate the topic I would be pleased to point them through to a more updated discussion and resolution.
For the latest on this, please see https://buddypress.trac.wordpress.org/ticket/3335#comment:8.