明明安装了某个 Joomla 组件(不是模块,也不是插件,就是组件),但是在网站后台的“组件”菜单里面却看不到它!你是否也遇到过这种问题?今天来说说如何解决“Joomla 组件安装完毕在后台不显示菜单”的问题。

 

Joomla! 后台的组件菜单

一般来说,除非特别的组件(很少见),绝大多数 Joomla 组件在安装之后,都会自动在网站后台的“组件”菜单上生成一个新的菜单项目。用户点击此条目就能进入该组件的后台管理界面。

如上图所示,即使一个刚刚完整核心安装、尚未添加任何第三方扩展的全新 Joomla 网站,后台的“组件”菜单上已经有了若干核心自带的组件对应的菜单项目。

问题

假设你现在安装某个新组件(例如名叫 com_newapp),安装过程中没有报错,安装结束甚至都显示了“组件安装成功”这样的通知消息,但是你却在后台的“组件”菜单上找不到这个新增加的组件。虽然这种问题不太常见,但一旦发生,会让用户很困惑。开启 debug,也看不到任何出错提示。这个问题从哪里下手来解决呢?

首先来确认一下组件工作正常:直接通过手工输入网址方式来访问组件。例如在地址栏输入:

http://你的域名.com/administrator/index.php?option=com_newapp

这个网站应该可以顺利打开,你看到了该组件的后台管理界面。这就证明组件安装没有问题,也能正常工作。只是缺了一个菜单项目。

通过 phpMyAdmin 查看网站数据库。找到 #_menu 这个数据表,此表储存网站上全部的菜单数据(包括后台菜单和前台菜单)。搜索 com_newapp 这个组件名称,应该能找到它。说明实际上在安装该组件过程中,系统已经生成了一个新的菜单项目,但由于某种原因,导致这个菜单项目未能显示出来。

解决办法

产生这个问题的根本原因是:组件安装过程中,生成菜单项目时,该条记录在数据表里面有一个字段“component_id”,这个 ID 数字不正确,导致最后菜单项目无法显示。

Joomla #_menu 数据表里面的 component_id 字段
Joomla #_menu 数据表里面的 component_id 字段

正确的 component_id 在哪里呢?

正确的组件 ID 在扩展管理里面。请从网站后台进入“扩展 -> 管理”,将扩展类型筛选框选择为“组件”,就会列出站内所有的组件。找到未显示后台菜单的这个组件,在列表最后一列,就是 组件 ID 数字。

Joomla 扩展管理里面的组件 ID 数字
Joomla 扩展管理里面的组件 ID 数字

用这个正确的组件 ID 数字,替换 #_menu 数据表里面那个错误的 component_id 数字,然后保存数据表修改结果。现在刷新你的网站后台,应该能看到原来缺失的组件后台菜单显示出来了。

  1. 评论 (1)

  2. Add Yours

评论 (1)

这里还没有人发表评论
  1. hn1255

原来是这样解决的,感谢大大的分享。也欢迎各位大大来我的网站电脑知识留言!

  附件
您无权查看附件
 

免费下载最新Joomla!核心中文版

扫描此二维码,立即开始下载 Joomla 3 核心中文版

付费下载汉化版扩展

付费后即可下载独家海量

Joomla! CMS 扩展汉化版

了解付费会员制度

点击这里给我发消息

了解 joomlagate.com 网站的付费会员制度