【问题标题】:Restoring navigation menu in civicrm在 civicrm 中恢复导航菜单
【发布时间】:2014-03-26 06:40:42
【问题描述】:

我是 Drupal 和 Civicrm 的新手。我使用的 CMS 是 Drupal。我在 civicrm 导航菜单中删除了一些菜单项。 我想恢复 civicrm 中的原始导航菜单。有一个选项,如管理->自定义数据和屏幕->导航菜单->添加菜单项。但这里的问题是新项目被添加为某个链接的子项。我想恢复所有导航菜单在安装后的样子。

【问题讨论】:

    标签: drupal-7 civicrm


    【解决方案1】:

    CiviCRM 菜单项都在 CiviCRM 数据库的 civicrm_navigation 表中。您应该能够使用以下方法重新填充它们(我从未批发过,但原理是一样的)。在您的实际网站上进行更改之前,您当然应该在您的网站副本上尝试此操作。

    1. 备份您的数据库。你会做一些严肃的事情,可能需要回滚。

    2. 查找安装 CiviCRM 时使用的查询。您可以在从第 18847 行开始的 sites/all/modules/civicrm/sql/civicrm_data.mysql 中找到它们(您将看到“INSERT INTO civicrm_navigation”的第一行)。通过插入 civicrm_navigation 的最后一个查询复制接下来的 500 多行。在 4.4.4 中,应该是 INSERT INTO civicrm_navigation ( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) VALUES ( @domainID, 'civicrm/report/list&reset=1', 'All Reports', 'All Reports', 'access CiviReport', '', @reportlastID, '1', 1, 10 );

    3. 现在将其粘贴到文本编辑器中。您会注意到每一行都有“@domainID”。这些是指您安装的域。在大多数情况下,这将是“1”,但通过查看 civicrm_domain 并看到唯一的域是 ID 1 来确认。

    4. 执行查找和替换,将 @domainID 的所有实例替换为 1(或任何您的域 ID)。 (在此过程中,您还会看到设置和使用的其他值;这些值可确保嵌套有效。)

    5. 现在,清空 civicrm_navigation 表,然后在 MySQL 中运行查询。这应该可以正确地填充表格。

    6. 最后,您需要 CiviCRM 来重建菜单缓存。访问 http://yourdevsite.org/civicrm/menu/rebuild?reset=1 即可。

    7. 假设此操作正常,请在您的生产站点上重复步骤 1-6。

    【讨论】:

      【解决方案2】:

      CiviCRM 使用 Drupal CRM,因此您可能正在修改 Drupal 菜单项或特定菜单块的位置。

      将您的默认主题更改为 Garland 或 7 之类的内容进行测试

      ([sitename]/admin/appearance) 
      

      并更改导航(或其他)菜单块的区域

      ([sitename]/admin/structure/block)
      

      【讨论】:

      • no no...drupal 菜单项没有问题...我已删除 CiViCRM 导航菜单项...如联系人、会员、报告等
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-25
      • 2021-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-10
      • 2014-10-26
      相关资源
      最近更新 更多