Suggestions for Improving Drupal's Book Module - Part 1: Administration
January 01, 2004

Note: a wiki containing this article and many other more in-depth discussions of drupal usability is HERE

A while back I promised to write up some suggestions for improving the book module. I finally got some time, so here they are. I'm posting this here because as far as I know, the forums don't yet allow images to be posted.

I am mostly interested in improving the navigation for the end user of drupal-based books, but I will start with my suggestions for changing the administration of books. Navigation suggestions will follow in another post.

1. When you browse to any page of a book, and click "administer," you go to the editing screen for that one page.

At the very bottom of the editing screen, there is a button "Edit book outline" that allows you to administer the relationship of that one page to the outline of the rest of the book.
takes you to:

Ads by Google

Posted by ellen at January 01, 2004 10:40 PM

To edit any other page, you either have to browse to it, which can be a cumbersome multiclick process using the current navigation system, or you have to click in the side column: Administer: Content: Books: YourBook.

At THAT point you get a truly great screen that lets you see the whole book at a glance and choose from editing, viewing or changing the weight.

I like this particular screen a lot, but would add to it some facility for reordering and editing the relationships of the book's nodes (editing the outline en masse) right on this page. I don't know exactly how this should look yet, but it ought to be possible. I understand that changing the weight affects order and you CAN change the weight on this page, but I am not entirely happy with using weight to control order in the context of a book, where exact order is critical. Weight as an attribute of a node in a looser situation - i.e. a collection of articles - is fine.

So to recap: when I click administer on any book page, I would like to be able to choose from any page in the book. In other words, I would like to get:

instead of

or at least I would like the CHOICE on each page of administer page/administer book.

I do understand this is not how the rest of Drupal's node editing features work, but it seems more intuitive to me for books. Less clicks, and less thinking.

2. if you select "Administer: Content: Books: YourBook, then edit a particular page, when you finish editing and click the "Submit" button, you go to a page that is pretty useless:

It says only "this page has been updated" and gives you the option of viewing, editing, or returning to the main book edit screen. This creates extra clicks if you want to continue editing other pages.

After hitting submit, I would like to be dropped right back to the book editing screen (

to choose another post or view the node you just edited. You have the same options of "view" and "edit" for each node on this screen, just like on the "The story has been updated" screen that is currently shown, but you also have a lot more options - ie. to go on to any other page in the book. Or, perhaps instead of just a "submit" button at the bottom of the node edit page, there could be a "submit and continue editing this page" button AND a "submit and edit another page in this book" button. The titles need some work, but something along those lines.

3. When you click "administer: content" I would like the option of the content of a book NOT to show up in the node list. I would like only the book title to show up. In other words, once a node is incorporated into a book, it is treated differently.

Then, when you would click the title of the book, you would go to that book-editing screen that I like so much, where all the pages in the book show up in order, and with all those options.

To my mind, the fact a node is in a book adds a lot of attributes to it that should be easily editable, and also makes the BOOK the main unit, so that it is actually confusing to have individual pages show up in the node list like they currently do. I am sure this will not be a popular suggestion, since it goes against the way the programmers think of nodes. Being a user, I think of a book page differently than I think of a regular node. If the page is removed from the book, it should drop back into the common "pile" of nodes and appear on the list again.

4. When you click "administer: content: books" you get a list of titles of books in the navigation column. If the titles are long, they can get pretty squished, and extend down a long way.

The main content area of this page is basically blank. Why not use all that nice white space for the clickable list of book titles instead of the boilerplate copy that describes the book module which is currently there? Of course, the list of book titles should be sortable by all available attributes, like title, author, date added, etc.

Ads by Google


Nice post Ellen.

Not sure if it helps, but you can create a small custom module that adds an 'admin book' link to every node in a book. that would link to your fav admin page. personally, i'm not keen on making the 'administer' link behave differently for different node types.

in the CVS version of Drupal, the mostly empty confirmation page after editing a node is gone. It still might not behave as you want though.

not many people have posted about usability of book admin or book in general. please do keep on doing so and posting patches when your ideas are concrete.

Most of your suggestions make sense yet it may take a while for these to be incorporated as they require quite a bit of work. I just looked at the book module code and have some concrete ideas as how some of your suggestions could be implemented. In the mean time, I suggest you continue posting suggestions. Thanks.

There are great suggestions. I haven't started using the book module (yet!) and I agree that your suggestions are very good and logical.

Ads by Google

 RSS   |   Contact Me

Ads by Google