You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Drupal 7管理菜单栏异常显示多余项及内容类型名称问题求助

解决Drupal 7管理菜单重复项与内容类型名称异常显示问题

我碰到过好几次Drupal 7管理菜单出现这类异常的情况,结合你的描述(跨浏览器、无报错日志),大概率是菜单注册冲突、缓存异常或者主题/模块的自定义代码导致的,给你几个逐步排查的方案:

1. 排查模块冲突或重复注册

  • 先检查是否有重复启用的模块,尤其是和文件导入、内容显示相关的模块(比如Feeds、File Entity,或者你自己开发的自定义模块)。有些模块会重复注册相同路径的菜单项,导致菜单显示重复。你可以这样操作:
    • 进入模块管理页面(路径:/admin/modules),先临时禁用所有非核心模块,然后刷新管理菜单看看问题是否消失。如果消失了,再逐个重新启用模块,每次启用后检查菜单,找到触发问题的那个模块。
  • 如果你有自定义模块,打开模块的.module文件,搜索hook_menu()函数,确认里面有没有重复定义「import files」或「manage display」的菜单项——比如两个模块都注册了admin/content/file/import路径,就会导致重复显示。

2. 清理缓存并重建菜单路由

Drupal的菜单缓存偶尔会抽风,即使没有报错也可能导致菜单显示混乱:

  • 进入性能设置页面(路径:/admin/config/development/performance),点击「清空所有缓存」,然后刷新页面看看菜单是否恢复正常。
  • 如果清空缓存没用,要是你装了Drush,直接在终端执行drush menu-rebuild重建菜单路由;没装Drush的话,可以在自定义模块里临时加一行menu_rebuild()代码,执行一次后删掉就行。

3. 检查主题的菜单预处理代码

有些主题会通过hook_menu_link_alter()或者hook_preprocess_menu()来修改菜单显示,可能不小心导致菜单项重复或者把内容类型名称错误加到菜单前端:

  • 打开当前主题的template.php文件,搜索有没有修改菜单的预处理函数,看看是不是有代码在遍历菜单时重复添加了条目,或者错误地把内容类型名称插在了菜单最前面。
  • 临时切换到核心主题(比如Bartik),如果问题消失了,那肯定是当前主题的代码有问题,针对性排查就行。

4. 检查内容类型的菜单配置

新建内容类型后名称出现在菜单前端,大概率是内容类型的菜单配置出了问题:

  • 进入该内容类型的编辑页面(路径:/admin/structure/types/manage/[你的内容类型机器名]),找到「菜单设置」部分,看看是不是误把内容类型名称设成了顶级菜单项,或者有没有模块自动给内容类型添加了菜单条目。
  • 也可以检查下是否有类似Menu Item Extras这类模块,在内容类型创建时自动注册了顶级菜单,导致名称出现在管理菜单前端。

5. 排查数据库菜单表的异常条目

如果前面的方法都没用,那可能是数据库里的菜单表(menu_links、menu_router)出现了重复条目:

  • 用phpMyAdmin或者数据库客户端打开menu_links表,搜索link_title为「import files」或「manage display」的条目,看看是不是有相同路径或者重复的mlid条目。如果有,备份数据库后手动删除重复的条目,然后重建菜单缓存。

内容的提问来源于stack exchange,提问作者Alex Creamer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:32:26