Mon, 13 Jul 2009
/SW/business/Drupal:
The Relationship Between Content & Menus in Drupal
If you edit a content or a menu item in drupal, you will see a
"Menu link title" and a "Parent item" field in both of
these editing windows. This is your first clue that the contents of
menus come from at least two different places:
- A piece of content (a "page", for instance) created on the
"Create Content" (node/add) page. If you create or edit a
page, between the Title & Body fields there is a "Menu
settings" section. If you click into that there is a "Menu link
title" field where you specify the precise text of the menu item
(what it is called) and a "Parent item" drop-down menu where you
select the position in the menu structure. ("Primary Links", for
instance.) After you create such content, specifying a position within
the "Primary Links" menu, this page will also now be
automatically listed when you edit the Primary Links menu at
admin/build/menu-customize/primary-links. In other words, the
same "thing" is both a piece of content ("page") and a menu
item.
- "Pseudo" content. This is a Drupal convention of where to find
certain kinds of content. If you click "Add Item" on
admin/build/menu-customize/primary-links, you will be taken to a
page that looks similar to the "Menu settings" section if you
edit a content page, with the addition of a "Path" field. If you
put "node/x" (where x is an integer referring to an already
created page of content) the new menu item will point to an already
existing page of content. If you put "blog" in the "Path"
field, then the menu item will point to an aggregation of all blog posts
on the site. "blog" is the path where Drupal developers have
designated that such content is to be found.
So to summarize, most normal "menu" items should probably be content
that you create on node/add, and there specify a position in one
of your pre-defined menus like "Primary Links". For certain
things like the blogging function and the contact form function (where
the path would be "contact") you need to create the menu item by
clicking "add item" within
admin/build/menu-customize/primary-links and filling out the
"path" field appropriately.
For sites fitted with dropdown menus, to get 2nd & 3rd level menu
items, in the "Parent item" field you have to place the lower
level menu items under the higher level items. And then click on all the
"Expanded" check boxes on
admin/build/menu-customize/primary-links.
posted at: 11:36 | path: /SW/business/Drupal | permanent link to this entry