My use case is two totally different types of membership: full and academic. Each profile uses different custom fields. I want the right profile to be used on the Drupal user account page, according to which type of user it is, so I set both to be used on the account edit page. By default, both profiles are then shown on the user account page. I want a user who has full membership to be able to see/edit their full profile and not see/edit an academic profile - and vice versa.

Proposed solution:

  • Turn off Drupal permission for Profile editing and use ACLs.
  • Create two Access Control groups in CiviCRM : Member profile user, and Academic profile user
  • Create two ACL roles: Member profile user, and Academic profile user
  • Assign each role to its respective group
  • Give each role permission to edit its respective profile

This seems to work well, but is there a better way of doing this - and/or any unforeseen consequences to this method?

  • If that works then is seems a reasonable approach. A route i would probably have explored was a Webform assuming that you can a/ control who sees which webform and b/ set the webform to show on the page you require
    – petednz - fuzion
    May 4, 2020 at 20:08
  • Thank you @petednz-fuzion. My problem is that as a non-developer, CiviCRM Webform is quite daunting, especially in Drupal 8, and with almost no documentation I can find. I have tried it out, but quickly get stuck in configuring it. Am I missing any good documentation somewhere? May 6, 2020 at 8:46
  • yes it is a bit different to d7. might be easier if i offer a short tour - PM me - c/- fuzion.co.nz
    – petednz - fuzion
    May 6, 2020 at 19:36


Your Answer

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

Browse other questions tagged or ask your own question.