Following use-case:

  1. CiviCRM has many contacts, including contacts of individuals with the same primary email address (e.g. one corporate email, two individuals (contacts) working there) -> forget that there may be methods of better organizing this.
  2. Both contacts do not have a WP user account.
  3. CiviCRM WordPress Profile Sync is working
  4. One of the individuals registers with WP using THAT email
  5. Which contact does the new WP user get associated with?
  6. Testing it as best as I could the answer is: always with the lowest CiviCRM ID

I've tried to find if there's a reference to it in the plugin's PHP , or elsewhere.

Wondering if this is by default?



Given that WordPress treats email addresses as unique identifiers, this situation is necessarily going to be problematic. There are a number of ways that you can overcome the default matching (which is handled by CiviCRM's CRM_Core_BAO_UFMatch::synchronizeUFMatch() method), but the simplest is to manually alter the record in the ufMatch table such that it points to the Civi record that you want it to. You can alternatively create the WordPress users from their CiviCRM contact records by using the bulk update functionality provided when you enable CIVICRM_WP_PROFILE_SYNC_BULK in the plugin. Or perhaps you could decide not to "forget that there may be methods of better organizing this"...

  • Thanks! What I've been doing amounts to a (terrible) work-around - although it does work. The above problem arises because: Oct 18 '16 at 10:56
  • (continued) 1.) People become WP users via the WPUM plugin, 2.) that creates and syncs a contact via CiviCRM WordPress Profile Sync, 3.) these new contacts populate CiviCRM profiles that ultimately let them become members of an orgnization. 4.) Before they send off the registration form, they get the option to terminate - and by doing so delete there WP user account. 5.) No way to delete there CiviCRM contact... What I've done: creat CiviCRM groups to distinguish those completing registration vs. abort -> search for those (scheduled job) -> delete contacts found -> voila, no conflict. Oct 18 '16 at 11:04
  • If you've found a working solution, perhaps you could post it as an answer to your question? It will help others in the future! Oct 18 '16 at 13:33
  • Answer is in my comment ;) "What I've done: create CiviCRM groups [...]". Oct 23 '16 at 11:05
  • That's not what I meant - I meant click "Add Another Answer" below, add your answer there, then mark it as the solution to your original question. Oct 23 '16 at 18:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.