Hi there
I'm replacing our current website with a Drupal-based one. I am a Drupal newb. In some ways I'd like to use WordPress but Drupal appears to beat it hands down in terms of being a powerful CMS.
The one thing I'm struggling on (at this moment!) is the decision on how to handle the basic structure of the website - do I do it through a book? Do I use taxonomies? Or something else?
I'm looking for the most efficient way of doing it. One of the things I'd like is page specific menus - for example if you are on the about us page, you see the about us menu with its children. At the moment I have 7 top level items.
I've started off looking at using taxonomy and the advanced taxonomy blocks module, having different blocks for different categories. With this, I'm not sure on whether to have different content types for each top level item.
The book module - does this offer the flexibility I might need. For example it appears I would need a top node - would this have to be/should it be my homepage?
Drupal seems fantastic, and incredibly flexible - I think that's part of my problem - too many options and I can't decide which one.
I've done a fair bit of searching, but not really come up with the goods. Can anyone help?
Comments
Planning
Here are some things that work for me.
For the menus
You can specify that a block appears on some pages and not others. For example, on http://coredogs.com, I have a bunch o' lessons, as well as other content. There are tabs across the top of the every page. The attached image home.png shows a piece of the home page. There is just one menu visible, the nav menu with the user name title (Kieran on the screen shot).
When the user clicks the Lessons tab, another menu block appears. See the attached image lessons_menu.png.
How does this work? For each block, you can specify what pages the block appears on. You do this by specifying the URLs where the block is to appear. On CoreDogs, the lessons block appears on pages that have "lesson" in the URL. See the attached image paths.png.
For me, a key to site organization is:
So my lessons all have URLs starting with http://coredogs.com/lesson/... Articles are all http://coredogs.com/article/... And so on.
This is different from some other CMSs, where URLs aren't important.
Note that using URLs as a structuring tool requires you to turn on the path module. The pathauto module is useful as well.
BTW, using URLs like this also helps with SEO.
Information architecture
I'm assuming you have a site plan. Usually I structure this like a tree. The home page is the root, and the pages are grouped into sections (lessons, articles, groups, goodies, etc.). Plan to match the sections to segments of the URL.
Read a LOT
I bought about a half dozen Drupal books, and spent a LOT of time reading. I'm still confused about some things. Expect to take a long time to really understand what is going on inside Drupal.
Note: I'm a n00b as well (to Drupal, at least). There are no doubt other ways of doing things.
Kieran
Kieran Mathieson
kieran@dolfinity.com
Start with the menu system
If you are just getting started, use the core menu system -- its functionality is useful, and it's a good way to learn how blocks and menus work together.
We use the Menu Block module to create context-specific, menu-based navigation: http://drupal.org/project/menu_block
Cheers,
Bill
FunnyMonkey
Click. Connect. Learn.
Using Drupal in Education
FunnyMonkey
nodehierarchy module
Check out the node hierarchy module to see if it will help you out:
http://drupal.org/project/nodehierarchy
Thanks
Thanks very much for your replies - I will check out those modules. I've been playing round with stuff for a little while but need to concentrate on the basics - the last few minisites I've made have been with WordPress.
Yep we do have a sitemap -I have a copy of 'Information Architecture - Blueprints for the web' - so that makes me an expert ;-)))
I've read the required modules thread on here which was very useful and will continue to experiment til I get there.
Right, better get some diet coke (it should be green tea I know) it's gonna be a long day...
A little late to the game
A little late to the game but http://drupal.org/projects/outline_designer paired with the menu block module Bill referenced is killer. We do all our sites that way now.
"Plaguing the world with Drupal; One Plone, Moodle, Wordpress, Joomla user at a time since 2005." ~ btopro
http://elearning.psu.edu/
http://elearning.psu.edu/projects/
http://elearning.psu.edu/drupalineducation/
Ex Uno Plures
http://elmsln.org/
http://btopro.com/
http://drupal.psu.edu/
(Core Menu + php visibility snippet) + taxonomy
I have tagged each of my nodes with a taxonomy term that relates to the "section" of the site the user is correctly viewing. I used the core menu module to set up a menu for each of the sections. I then have the menu in a block that has a php snippet for visibility that says, if the taxonomy term is attached to the node, display the menu. In this way I can use the new Menu Node API and Menu Node Edit to grant edit permissions to certain users.
I am not sure it is the best way but it is working for me.
I thought about making a view that would use the taxonomy term as an argument to display the other nodes associated with that term but I am not sure that if I can structure it to have the hierarchy that is required in some menus. Plus I would lose the ability to use Menu Node API and Menu Node Edit.
Where am I?
Menu Node Views instead of Taxonomy?
Menu Node Edit is a pretty new module that I wish I had known about before. It looks like it does exactly what I need (I've been tearing my hair out over for months trying to work out something like this using OG and OGUR).
The taxonomy approach seems like a bit of a kludge. Would the new Menu Node Views module, along perhaps with Context for controlling block visibility work?
hmm... it is not a kludge if it works
I checked out the two modules you mentioned. I had heard about Context before and forgot about it. I found that the Context Module has a taxonomy add-on module that would allow me to basically use the same idea only through the Context UI. I am using the Studio Theme Pack and unfortunately for some reason it and Context do not play nice. There was a patch in the issue queue that I applied to the Studio Theme Pack that seemed to take care of one of the issues but it is still not 100%. Basically blocks are showing up in Context that are not set in the Blocks menu. Phantom blocks if you will. So...
I think I will resort to my kludgy (but working perfectly) php snippets.
Where am I?
Actually, getting something to work is the whole point...
of a kludge. No shame in that (at least among consenting adults)!
Hopefully this is still
Hopefully this is still related to the topic - if I want pathauto to generate a relative path based on the menu structure i.e. about-us/staff
Am I supposed to be using [menu-raw]/[title-raw] ? Or is there is an issue with that: http://drupal.org/node/339211
I'm using Drupal 6 BTW.
node hierarchy & submenutree
The node hierarchy module I mentioned above does that,
but see also the submenutree module:
http://drupal.org/project/submenutree
--
http://edtechdev.blogspot.com/
http://twitter.com/doug_holton
http://itls.usu.edu/
I got there I think
I got there I think [menupath-raw] but I'm still slightly nervous about pathauto.