I want to disable the CiviCRM breadcrumbs inside the program code for security reasons.

I tried modifying sites/all/modules/civicrm/CRM/Core/DAO/Menu.php by adding $skipBreadcrumb['type'] = TRUE; in the public static function &fields() function (where $skipBreadcrumb is set).

I also tried commenting out the public function addBreadCrumb() and its call in public function preProcess() inside the sites/all/modules/civicrm/CRM/Report/Form.php. I know the path sounds incorrect for what I want to do, but it was the only search result for 'breadcrumb' in a function that I could find.

Can anyone give me a hint?

Edit: Probably it was exaggerated to talk of security reasons here. It is more about not making any pages visible as default that users don't need, that is, keeping the (visible) system slim.

  • 1
    What are the security reasons for disabling breadcrumbs? If there is a strong case then maybe this should be an option in core or extension.
    – Aidan
    Oct 7 '20 at 12:06
  • The idea is that users should not be able to access the CiviCRM dashboard (not via breadcrumbs nor any other way). (It has not been my own idea though).
    – emma
    Oct 7 '20 at 14:34
  • Ok, have you worked out what permissions and ACL's you need so that users can only access what you want? Menus are updated based on access but I'm not sure about breadcrumbs. In other words, if the permissions are correct you may not need to do anything special about breadcrumbs.
    – Aidan
    Oct 7 '20 at 15:14
  • Yes, we have a rights management system, but the CiviCRM dashboard could only be made inaccessible to standard users via a Rule. We don't want to use a Rule because it is called on every page call and makes the system slower.
    – emma
    Oct 8 '20 at 12:12

Did you tried using Disable breadcrum drupal module?

  • 1
    Yes, this seems to be installed. All Breadcrumbs are disabled in Drupal menue > Design > Disable breadcrumbs. But it only deactivates the Drupal breadcrumbs, not the ones from CiviCRM.
    – emma
    Oct 7 '20 at 11:27

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.