General plugins (Local): Custom Navigation

Maintained by Picture of Carlos Escobedo Carlos Escobedo
This plugin allow add new menu items at the end of Navigation Menu in order to customize your options menu even Boost Menu Navigation.
408 sites
33 fans

With this plugin you can add new items to the Navigation Menu.
You just have to use the same syntax that is used for the navigation bar on theme general settings.

Now, you can add master nodes in Boost Menu Navigation.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5


Picture of Carlos Escobedo
Carlos Escobedo (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Carlos Escobedo
    Wed, Apr 6, 2016, 4:37 PM
    Thanks a lot Ken for yours comments. It's a pleasure help you.
  • Picture of Brandon Jimenez
    Fri, Jun 10, 2016, 4:13 AM
    Hi Carlos, I'm having a "redirect loop" on the Notifications area of my Moodle site (2.9.6+) after installing your plug.
    When i access either
    goes to the aforementioned " redirected you too many times."

    The plug, however, is working. and my site other than that it is too.

  • Picture of Andreas Giesen
    Tue, Nov 22, 2016, 1:33 AM
    Ken St. John wrote "Now I don't have to have menu items that I don't want or need presented to my users. I can now have complete control over what shows and doesn't."

    I don't get how to do that, how to remove items from the nav. All I can do is add new items at the end which is great already, but "complete control" would be even greater! smile
  • Picture of Georg Wiesinger
    Tue, Nov 14, 2017, 6:09 AM

    I'm having problems to get language codes up and running, e.g. using following menu items:


    The English menu item unfortunately never shows up. Am I missing something?

    Moodle 3.4, clean install for testing purposes

    Kind regards,
  • Picture of Carlos Escobedo
    Tue, Nov 14, 2017, 7:53 AM
    Hi George,

    First of all, this item '-' (minus sign) means second tree level. You have to write like this (is the same like custom menu items in Moodle):

    Kontakt||Kontakt alt attribute example|de
    Contact||Contact alt attribute example|en

    Also, you needs add a alt attribute text like the example . You can see the right syntax in
    This is Moodle example:

    English only||English only item|en
    German only||Deutsch|de,de_du,de_kids

    I hope it works.

    Thanks and do not hesitate to contact with me.
  • Picture of Georg Wiesinger
    Wed, Nov 15, 2017, 3:40 PM
    Good morning Carlos,

    many thanks for your help! It works like a charm now! smile

    Kind regards,
  • Picture of Scott Li
    Sun, Dec 3, 2017, 12:11 PM
    Using moodle 3.4 and moove theme together, it doesn't work. Sub title doesn't show. By the way how to let the link redirect to a new browser window
  • Picture of Carlos Escobedo
    Mon, Dec 4, 2017, 5:35 AM
    Hi Scott,

    First of all, thanks for your comments.
    Secondly, this plugin uses the same Core API as Moodle in the custom menu items configuration in the theme settings (https://MOODLESITE/admin/settings.php?section=themesettings). For this reason, in the custom menu items, it should not work either. Is it true?

    Anyway, could you share with me your values in the custom navigation items (https://MOODLESITE/admin/settings.php?section=local_navigation)? I'd like to test the same scenario with moove theme and your items menu.

    Finally, you can use target atribute in the url like this:
    Moodle Homepage|" target="_blank

    Remember, this plugin uses the same functions as the Moodle Core in the custom menu items. You can see the right syntax in

    Thanks a lot and do not hesitate to contact with me.
  • Picture of William Kent
    Wed, Jul 25, 2018, 9:03 AM
    I installed by following your instructions, ie: unzip to /local/navigation/ but it does not appear in the list for all plugins or local plugins. I am running Moodle 3.5

    Does you plugin need updating or have I missed something?
  • Picture of Carlos Escobedo
    Wed, Jul 25, 2018, 3:58 PM
    Hi William,

    All the plugins need to be installed using the Moodle interface in http://YOURMOODLESITE/admin or with command line $php /MOODLEROOTINSTALLATIOM/admin/cli/upgrade.php.
    Usually, when you add a new plugin to your Moodle installation and when accessing it through the web browser, Moodle shows you that there is a new plugin to install.

    If everything it's ok, you should see the plugin in http://YOURMOODLESITE/admin/settings.php?section=local_navigation below Site administration/Appearance/Custom Navigation. Here is the menu of the plugin.
    Also, you can check the local plugins installed http://localhost/m/stable_35/admin/localplugins.php

    I hope to help you.

    Please do not hesitate to contact me if you have any further questions.


  • Picture of William Kent
    Thu, Jul 26, 2018, 6:00 AM
    As I said in my post, I followed your instructions and uploaded to /local/navigation/ but the plugin did not appear in the list of plugins and there was no invitation given to update the database.

    But after running /admin/settings.php?section=local_navigation I was invited to update the database so now it is installed, thanks.
  • Picture of Cam Howard
    Thu, Aug 9, 2018, 12:18 AM
    I'm having trouble getting Custom Navigation to work as expected in Moodle 3.5.1 with the Boost theme. There are two issues.

    One issue is that the custom navigation items are displaying indented under the "My courses" menu item in the nav drawer, so it looks like the new items are second level items under "My courses."

    I was expecting them to be added on the first level and visually aligned left with the Dashboard, Site home, and Calendar menu items as shown in the Moodle 3.2 screenshot on the plugin page.

    The second issue is that creating multi-level menus is not working. I thought it might be the way I was writing the syntax, so I tested using the example provided by the plugin in the "Custom Navigation items" field and it doesn't work.

    The short form of the example is:
    Moodle community
    -Moodle free support|
    -Moodle development|

    With this example, I expected to see a menu item named "Moodle community" which would expand to show "Moodle free support" and "Moodle development" when clicked on. What actually happens is an item named "Moodle community" is added under "My courses" and clicking on it has no effect.

    The only way I can get multiple menu items to display is to remove all the leading hyphens which then results in a (too long) list of new menu items indented under "My courses."

    I'm using the exact same syntax in both Appearance > Custom Navigation > Custom Navigation items and in Appearance > Theme settings > Custom menu items. The multi-level menu added in Theme settings is working and the multi-level menu added in Custom Navigation is not.

    Is there some change in Moodle 3.5.1 that is preventing this plugin from working as it did earlier? Is there a way to add a two-level menu to the nav drawer that is not indented under "My courses"?

  • Picture of Cam Howard
    Sat, Aug 11, 2018, 5:56 AM
    An update to one of my questions --

    It turns out the reason that menu items added to the Nav Drawer via this plugin look like they are indented under "My courses" is because they have no icon displaying to the left of the menu item text, so visually they look indented. Structurally, however, they are not. The text of new menu items is aligned with the text of the Dashboard, Site home, and Calendar menu items.

    So now the question becomes: How to add an icon when adding custom navigation items. The code seems to have a placeholder for an icon. The CSS is and displays nothing. It seems to be calling a non-existent icon from FontAwesome.

    Is there a way to change the icon or enable an icon to display for menu items added using the Custom Navigation plugin?

    The other issue I raised earlier about the two-level menus not working remains.

    Any advice or suggestions are appreciated.

  • Picture of Carlos Escobedo
    Tue, Aug 14, 2018, 1:47 PM
    Hi Cam Howard,

    thanks to a lot for your patience and for using this plugin.

    Regarding your first question, as you say the difference is found in the alignment of the icon. At the moment, there is no way to add an icon but it would be an improvement that I will try to add in the next version of the plugin.

    Regarding the multilevel, in the case of Boost can't be at the moment, only in the Navigation Block (right column). In the configuration of the plugin is briefly explained. I will try to explain it better in the next version. You can see that in the new screenshot that I've attached.

    However, in the right column, in the Navigation block, the Multilevel should work. In addition, the menu will always be displayed after the last parent node of the Navigation block.

    I have added two new screenshots about Moodle 3.5. How it should look in the Course view and how is the configuration screen of the Plugin with the alert messages where it is indicated that it should be displayed from the last navigation node and that only the first level is shown in Boost if you enable the option "Enabled Master nodes in Boost Navigation".

    To sum up, there are two limitations, one is in Boost Theme this plugin doesn't have multilevel and the second is in the Navigation Block the custom navigation is always at the end.

    Thank you very much for your comments and improvements that I will consider in future versions.

    If you still problems with this plugin, you can send me screenshots in order to my email see what it happens better.

  • Picture of Cam Howard
    Tue, Aug 14, 2018, 10:56 PM
    Hi Carlos,

    Thanks very much for your explanation and new screenshots.

    It's helpful to know that the multi-level menus don't currently work in the Nav Drawer in the Boost theme. That means I can stop trying to figure out what I need to do to make it work! wink If it's possible to add that functionality in the future, that would be beneficial.

    Thanks for considering the icon question, too. If it's possible to add the ability to include an icon in the future, that would be a very nice visual feature.

    Thank you for this plugin. Aside from my two questions, it's working great and is very useful! I appreciate that it works so well with language codes, too.

1 2
Please login to post comments