Have a Question? Search our Knowledge Base.

Menu management - making additions and changes

Peter T. Chen -

Managing menus (global, sidebar, and other drupal generated menus) are largely the domain of users with admin and site building privileged roles.  In the department (JSA) infrastructure, Site owners are also able to manage the Drupal menu system. \


Adding and removing items to a menu in the Drupal CMS architecture is a complex system however, some of the day to day tasks can be reduced to adding and removing items to an existing menu.  Creating a "new" menu or a specifically targeted menu is a task more for an experienced site builder or system architect since arbitrary menu creation can create instability to a site's architecture and navigational infrastructure.  Greater detail about the Drupal menu system can be found at: 


Places to add and change menus and menu items

In a number of content types, you can add menu items directly in the Node edit form.  This has it's advantages but we generally do not recommend doing so in day to day use as it can be tricky to determine weight (where something is ordered among peripheral objects) in a large menu system.   In general, it is recommended that after creating/editing/publishing a node that needs to be added to a menu, that you remember/write down the node number before adding it to the menu using /admin/build/menu .  You can also usually find it under the admin menu -> site building --> menus --> list menus




The menu that you want to edit may vary based on site and or the section of the site.  If you're unsure which menu you're editing, ask Pete or someone involved with the site architecture.  On the engineering.stanford.edu site, most nearly everything that needs go in a menu somewhere goes in the 'Full Menu" system.  This is a fairly large and unwieldy menu, but it maintins most of the site structure and hierarchy fairly well. 




Once in the "Full site" menu system, to add a new menu item fine the "Add item" tab at the top right. 





Now to add a new menu item, enter the path of the node as shown below.  In some cases, you may not be working with a node but rather the path of a view or a "bean generated page" or something other than a node.  In those circmstances, it's fine to put in a full relative path (leave out the leading slash) such as:  about/news/this-is-an-example .   The reasons behind using a node path is that in some cases, nodes can have their paths changed or redirected.  If you use the node path instead of the URL path, Drupal will still be able to find it rather than give users s 404. 

After entering a path, give the link a title.  Usually this should be the same as the existing page title but in some circumstances we come up with a short title where the page has an extrordinarily long name. 




FInally, select a "Parent Item" from the full menu for the menu item.  This identifies what level the menu item 'belongs" under. When you save this, you will get a chance to sort it with peripheral items before publishing it to the world.   Leave "enabled" checked. 




When you save the menu item, you'll return to the "Full site" (or other menu) organization page. You can use the handlebar to sort which order it needs to be in relative to peripheral items.  Also, you can move it to below another parent if you need to. 





When done, make sure you "save configuration" at the bottom of the page.   




Have more questions? Submit a request