Installed Components do NOT show on backend menu

Need help with the Administration of your Joomla! 2.5 site? This is the spot for you.

Moderator: General Support Moderators

Forum rules
Forum Rules
Absolute Beginner's Guide to Joomla! <-- please read before posting, this means YOU.
Forum Post Assistant - If you are serious about wanting help, you will use this tool to help you post.
Locked
jeffhoneyager
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 106
Joined: Fri Dec 16, 2005 12:16 am
Location: Michigan
Contact:

Installed Components do NOT show on backend menu

Post by jeffhoneyager » Sat Jul 06, 2013 1:37 pm

Database Version: 5.1.70-cll
Database Collation: utf8_general_ci
PHP Version: 5.3.21
Web Server: Apache/2.2.23
Joomla! Version: Joomla! 2.5.11

After installing a component it can be accessed via an url. For example, these work fine:

Code: Select all

http://hostx.smiggi.com/~camelsfo/administrator/index.php?option=com_virtuemart
or
http://hostx.smiggi.com/~camelsfo/administrator/index.php?option=com_akeeba
It can be seen from Extensions >> Extension Manager >> Manage (Components)

But it does NOT show up on the Components dropdown menu.

What should I look for ?

Thank you.

somerneumann
Joomla! Apprentice
Joomla! Apprentice
Posts: 10
Joined: Sun Jul 07, 2013 6:26 am
Contact:

Re: Installed Components do NOT show on backend menu

Post by somerneumann » Sun Jul 07, 2013 6:49 pm

any caching installed? i think i remember i had the same problem some time ago and then somehow the backend was cached.

jeffhoneyager
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 106
Joined: Fri Dec 16, 2005 12:16 am
Location: Michigan
Contact:

Re: Installed Components do NOT show on backend menu

Post by jeffhoneyager » Mon Jul 08, 2013 11:44 am

Cleared the cache,
Waited a couple of days,
Tried another browser...

No joy.

Any ideas?

Thank you.

User avatar
rcarey
Joomla! Explorer
Joomla! Explorer
Posts: 471
Joined: Sat Apr 25, 2009 9:20 pm
Location: Minnesota (USA)
Contact:

Re: Installed Components do NOT show on backend menu

Post by rcarey » Mon Jul 08, 2013 1:30 pm

I suspect one of two possible causess:

[a] If the user does not have ACL rights to access the component in the backend, then that component will not be shown.

The component might not have an entry in the #__menus table. This table lists the dropdown items and their subitems as they are to appear. They are to be added to the #__menus table upon installation through the component's xml file (the part that lists <menu> </menu>), and it is possible that a component is not to be included or that the developer forgot this part or formatted it wrong.

I have added or changed these #__menu entries by editing the database, but to do so correctly is a bit more tricky than just adding a record. If you feel you need to add a component's record to this db table, you certainly ought to study the records of other components before you try adding what you want. Another option is to edit the xml file so that it includes what you want, update your installation zip file with this updated version, then try to re-install. You'd have to study how other components configure their xml file to insert their links into the component's dropdown.

And, if it is the component's installation file that caused your problem, you ought to point this out to the component's developer and ask for a fix.
Randy Carey -- as of 2023 I'm mostly retired in web development, but still engaged with a few Joomla projects through
Careytech Studios http://careytech.com custom development for tailored or value-added web solutions

jeffhoneyager
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 106
Joined: Fri Dec 16, 2005 12:16 am
Location: Michigan
Contact:

Re: Installed Components do NOT show on backend menu

Post by jeffhoneyager » Mon Jul 08, 2013 2:54 pm

Thank you for all the tips/clues.

Unfortunately the DB entries in #_menu look good. I compared the entries that do display with the ones that do NOT display and they look very similar. There are a total of 4 components that do not show up. I have installed these many other times without issue - so I'm guessing it is not the install xml file.

I am logged in as Super Admin. and assume I have access rights (tried another S.A. login as well).

I can access the components with /index.php?option=com_{componentname} and the admin side of the extension seems fine.

Total loss = me

Very odd. Any other ideas?

Thanks again.
Peace & Joy, Jeff Honeyager
http://ExpertWebProfessionals.com
http://Jeff.honeyager.com
"Test Everything, Hold On To The Good."

User avatar
rcarey
Joomla! Explorer
Joomla! Explorer
Posts: 471
Joined: Sat Apr 25, 2009 9:20 pm
Location: Minnesota (USA)
Contact:

Re: Installed Components do NOT show on backend menu

Post by rcarey » Mon Jul 08, 2013 3:44 pm

Those two areas are the main things to check.

The code for selecting entries from #__menu requires that the item has a value of '1' for its field client_id and that the extension has a setting of '1' for the field enabled in the table #__extensions. And, of course, that the user is authorized for the action "core.manage" for this extension. If all these are true, the admin's menu module should be showing them. (Of course, it is possible to override the admin's mod_menu to suppress additional components - but I doubt that is the case here).

If everything still looks good, then I would start inspecting the code as it runs (the code that builds the menu) to see what's going on. For instance, are these records being pulled in from the database in the file /administrator/modules/mod_menu/helper.php (function getComponents). If it is not, then the problem is in the data within the database. If that function is getting the extension, then the problem exists downstream from there, and I'd keep checking until I found where the component listing is dropped. ... That is what I'd do. Easy for me to say, as I work with code, but I know that not everyone can do this.
Randy Carey -- as of 2023 I'm mostly retired in web development, but still engaged with a few Joomla projects through
Careytech Studios http://careytech.com custom development for tailored or value-added web solutions

User avatar
rcarey
Joomla! Explorer
Joomla! Explorer
Posts: 471
Joined: Sat Apr 25, 2009 9:20 pm
Location: Minnesota (USA)
Contact:

Re: Installed Components do NOT show on backend menu

Post by rcarey » Mon Jul 08, 2013 5:57 pm

All by coincidence, I just ran into the same symptoms on a 2.5 installation where I am developing a component. I investigated and found that in #__menu my component and its submenus each had '0' entered in the field component_id. I reset the value in that field for each of my component's items to the id of the component (one can find that id within the table #__extensions). That change was all I needed to get the component to show in the dropdown.

I investigated to discover the cause. I do not know if my experience relates to yours, but I can share what I discovered...

The problem emerged after I used Akeeba to re-install a base installation of 2.5. This wipes the database and rewrites files, but it does not delete directories and files that already existed from the previous installation but are not found within the backup. So when Akeeba finished, even though the database did not have a record of the component that I had installed since the backup file was made, that component's directories remained in the Joomla installation (left over from the previous installation). I suspect that when I did install the component, the installation process saw the component already in the file structure and assumed this extension installation as an upgrade - having no need to set the component_id in the table #__menu. As a result, the menu items were added to the database, but the association of these menu items to a component was left at '0' and not set to the extension's id.

To test my theory, I repeated the installation, but this time after the Akeeba backup, I removed the component's directories and its language files. Then I installed the component, and this time the component appeared in the menu.

The lessons here: [1] Refreshing a site with Akeeba does not remove files that had been added since the backup was made. [2] When a component is newly installed into a site that already has a directory structure for this component, the entries for this component in the table #__menu will not be associated with the newly installed extension. If this problem emerges, manually change the component_id for the affected rows in #__menu.
Randy Carey -- as of 2023 I'm mostly retired in web development, but still engaged with a few Joomla projects through
Careytech Studios http://careytech.com custom development for tailored or value-added web solutions

jeffhoneyager
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 106
Joined: Fri Dec 16, 2005 12:16 am
Location: Michigan
Contact:

Re: Installed Components do NOT show on backend menu

Post by jeffhoneyager » Mon Jul 08, 2013 8:25 pm

That was it!

The site was a restoration from an Akeeba back up and the component_id (in #_menu) was set to 0 (zero). I looked up the extension_id (in #_extensions) and updated the #_menu entry with the correct id and...

Pooof! Joy!

The component showed on the Component drop down.

Thank you for your persistence.

Now, is that a problem with Akeeba?
Peace & Joy, Jeff Honeyager
http://ExpertWebProfessionals.com
http://Jeff.honeyager.com
"Test Everything, Hold On To The Good."

User avatar
rcarey
Joomla! Explorer
Joomla! Explorer
Posts: 471
Joined: Sat Apr 25, 2009 9:20 pm
Location: Minnesota (USA)
Contact:

Re: Installed Components do NOT show on backend menu

Post by rcarey » Mon Jul 08, 2013 8:52 pm

It was very coincidental that I stumbled upon the same type of problem within an hour of replying to you...

I thought about that (is it a problem with Akeeba, or with the installation code?). It depends on your perspective of "wrong" code versus behaving as coded. Should Akeeba wipe out all the unused directories, files, and database tables? should there be an option to do this? Or should we as installers realize we need to do this? My guess is that Nicholas of Akeeba made a conscious decision not to remove everything when one re-installs a backup.

Then perhaps the installation process needs a few lines of code that will do a better job at knowing when the menu item is new and needs this field supplied.
Randy Carey -- as of 2023 I'm mostly retired in web development, but still engaged with a few Joomla projects through
Careytech Studios http://careytech.com custom development for tailored or value-added web solutions

User avatar
RustyJoomla
Joomla! Explorer
Joomla! Explorer
Posts: 409
Joined: Wed Aug 01, 2007 12:08 am
Location: UK
Contact:

Re: Installed Components do NOT show on backend menu

Post by RustyJoomla » Wed Aug 07, 2013 10:05 am

@rcarey thanks very much for your solution, worked perfectly!
Follow me on Twitter - http://twitter.com/RustyJoomla
Company Joomla Website - https://storm.agency

User avatar
sunshine1688
Joomla! Apprentice
Joomla! Apprentice
Posts: 23
Joined: Mon Jun 27, 2011 1:59 pm
Location: Thailand
Contact:

Re: Installed Components do NOT show on backend menu

Post by sunshine1688 » Mon Jan 20, 2014 9:48 am

Thanks for all ur advices, I installed K2 but backend menu missing, now the problem fixed perfectly

sean_regehr
Joomla! Apprentice
Joomla! Apprentice
Posts: 9
Joined: Fri Oct 11, 2013 10:40 pm

Re: Installed Components do NOT show on backend menu

Post by sean_regehr » Thu Mar 13, 2014 5:13 pm

Thanks for posting this article and solution. It was very helpful for understanding which tables I needed to check the entries for. Much appreciated.

User avatar
coalaweb
Joomla! Apprentice
Joomla! Apprentice
Posts: 41
Joined: Wed Jun 30, 2010 6:42 pm
Location: New York
Contact:

Re: Installed Components do NOT show on backend menu

Post by coalaweb » Tue Jul 21, 2015 4:15 pm

Thanks for the great info, I was looking in the #__menu table filtered by menutype = menu and I was bit stumped then I saw a 0 ;)

Thanks again,

Steve

sillitoe
Joomla! Intern
Joomla! Intern
Posts: 51
Joined: Sun Feb 01, 2009 12:13 pm
Location: Luxembourg
Contact:

Re: Installed Components do NOT show on backend menu

Post by sillitoe » Tue Dec 13, 2016 9:46 am

Thank you for all of the help here. I just experienced a similar problem, but it turned out that the menutype field in the #_menu table for title "com_contact" path "Contacts/Contacts" was set to "topmenu" instead of "menu". I have no idea how this came about, but once I had changed menutype to "menu", the Components->Contacts submenus reappeared.

Sorry, I spoke too soon. It disappeared again. There must be another issue.

sillitoe
Joomla! Intern
Joomla! Intern
Posts: 51
Joined: Sun Feb 01, 2009 12:13 pm
Location: Luxembourg
Contact:

Re: Installed Components do NOT show on backend menu

Post by sillitoe » Tue Dec 13, 2016 6:48 pm

It turns out that the "parent_id"'s for the submenu entries were incorrect. For example, for Components->Contacts, the two submenu items had parent_id's of 7, whereas the id of the top level com_contact entry was 107. I changed the parent_id's of the submenu items to 107 and the Components->Contacts->Categories menu appeared, however the Components->Contacts->Contacts submenu does not show. For all the other missing submenus, this fix worked.

However, I do not know why the id had become 107 rather than 7, as there are no entries with id's of 7, 8 or 9.I can only assume that this happened during an upgrade through to Joomla 3.

At this point, I do not know why the Components->Contacts->Contacts submenu does not show. However, the values of lft and rgt look a bit strange. If anyone has any suggestions, I would appreciate it.

wannie-1985
Joomla! Fledgling
Joomla! Fledgling
Posts: 4
Joined: Fri May 05, 2017 3:22 am

Re: Installed Components do NOT show on backend menu

Post by wannie-1985 » Tue Jun 06, 2017 7:20 am

Hi, im here also facing with this situation. If using URL link its work great but under the Component panel the components still not showed up. Examples: Banner, Contact, Messaging and etc.
Help me, what to do. :eek:
Thanks :laugh:

sozzled
I've been banned!
Posts: 13639
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia

Re: Installed Components do NOT show on backend menu

Post by sozzled » Tue Jun 06, 2017 7:29 am

I'm not sure if this will help people who are still using J! 2.5 but there is a technique that may be useful for J! 3.x: see viewtopic.php?f=708&t=950841&p=3476224#p3476194 and use the same principle to locate the Banner, Contact and other components that are missing their corresponding menu items.

wannie-1985
Joomla! Fledgling
Joomla! Fledgling
Posts: 4
Joined: Fri May 05, 2017 3:22 am

Re: Installed Components do NOT show on backend menu

Post by wannie-1985 » Wed Jun 07, 2017 12:38 am

Hi Sozzled thank so much coz gave the URL link. Even the redirect solution its not okay. I found another solution below. I'd change the menutype from menu to main, coz in Joomla 3.6.0 menutypes is main. After upgrade to 3.7.2 our menutypes is change to menu.

Here is the link: here the URL viewtopic.php?f=708&t=950841&p=3476224#p3478044.

Hope this will help to settle this issues.

Thanks :D
You do not have the required permissions to view the files attached to this post.


Locked

Return to “Administration Joomla! 2.5”