22

Our organization does not use households. As a training/usability issue for our volunteers, we would like to disable the concept entirely or at least hide them from view. There does not appear to be a mechanism to do so, however.

This feature has been requested for some time; there is a 2008 thread asking essentially the same question, but unfortunately it leads only to other dead-end threads. A feature request for the 3.0 branch was summarily closed for lack of activity.

If there remains no configuration mechanism to remove households, has anyone developed a comprehensive list of places where households are referenced? For instance, we can remove the navigation menu items from the UI, disable the reports, and use CSS to hide mentions on some forms. We would prefer, going this route, to override a template to remove the option, but we haven't been able to locate such a template or templates.

The same question, presumably, could be applied for anyone who does not use individuals or organizations as contact types.

3 Answers 3

33

Households can be disabled globally by disabling that contact type. This is not exposed to the UI but is still pretty easy to do:

  • From the api explorer (Support -> Developer -> Api Explorer) make the following selections: API Explorer Screenshot
  • With a direct sql query:

    UPDATE civicrm_contact_type SET is_active = 0 WHERE name = 'Household';

Note: there may be a few places left in the UI that are hard-coded with households still available, but the above will handle the vast majority.

Addendum: You may also want to disable the Household profile. This will remove the "New Household" links from contact autocomplete form elements. Run the following query to do that in MySQL:

update civicrm_uf_group set is_active = 0 where name = 'new_household';

(thanks to comment from @bgm).

8
  • 3
    This just blew my mind! Commented Mar 24, 2015 at 22:02
  • Does this also remove them from the interface completely? Commented Mar 30, 2015 at 13:56
  • 1
    You may also want to disable the Household profile. This will remove the "New Household" links from contact autocomplete form elements. update civicrm_uf_group set is_active = 0 where name = 'new_household';
    – bgm
    Commented Apr 30, 2018 at 18:38
  • 1
    Even after taking all the steps mentioned on this & other answers, households still pop up in a few places, e.g. dedupe rules, Export -> Merge Household Members into their Households, Mailing Labels -> Merge labels for contacts belonging to the same Household.
    – davejenx
    Commented Jan 15, 2019 at 16:37
  • 1
    @PaulWilliams it's still accurate!
    – Coleman
    Commented Jun 26 at 17:59
12

To remove households from the interface completely:

  1. Delete any households that may have been created and any relationships involving households (shared addresses, Household members, etc).
  2. Update the civicrm_contact_type table in the CIVI database to set the active flag for 'Household' to 0 (as per Coleman's answer)
  3. Update the civicrm_relationship_type table to set the active flags to 0 for all relationship types that relate to households (e.g. "Head of Household for" and "Household Member of")
  4. Remove the "New Household" menu item from the CIVI > Contacts menu dropdown by going to Administer CiviCRM > Navigation Menu - (Open Contacts and right click on "New Household" and select delete.
  5. Check the changes made above are retained/reconfigured when you update CIVI
2
  • 1
    The SQL query for point 3 is "update civicrm_relationship_type set is_active=0 where contact_type_a='Household' OR contact_type_b='Household';" without the double quote (") marks.
    – Joe Murray
    Commented Aug 6, 2015 at 19:58
  • There are many other place where Household might have been configured like Profiles, Custom Groups, Memberships and other CiviCRM settings. Also deleting Household Contact type might have serious impact on upcoming upgrades so it will be safe to disable the Contact Type rather deleting it and its related data. Commented Dec 29, 2017 at 13:26
2

You can disable contact-types directly in the db or with the api, but a word of caution: I've seen older sites where people have messed with the basic contact types, and they've had real problems.

Based on other answers, this may be safer to do in current versions of CiviCRM, but I recommend thorough testing of any changes you make.

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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