Slashdot Mirror


Drupal 6 Content Administration

Trevor James writes "Finally, here's a Drupal book specifically for Drupal content editors and site managers, those folks responsible for posting new content and editing existing content on a Drupal site. While many of the Packt series of Drupal books focuses on code, development and are written for Drupal developers, this title is for anyone who is dealing with management of Drupal based content and any individuals or teams responsible for the management of Drupal sites on a daily and hourly basis. This book is also perfect for introductory Drupal classes and I will not hesitate to use it in my Drupal 101 classes in the near future." Read on for the rest of Trevor's review. Drupal 6 Content Administration author J. Ayen Green pages 179 publisher Packt Publishing rating 9/10 reviewer Trevor james ISBN 1847198562 summary A fun, informative, hands-on learning guide that uses an actual case study In Chapter 1, the author gives a concise and streamlined introduction to the Drupal CMS and the elements of a Drupal Web site from both the frontend and backend perspectives. I liked seeing the detailed explanations of a Drupal powered front end layout — explaining the differences between the site header, navigation areas, and content areas. I'd recommend this first chapter to anyone who is just starting to use Drupal and wants a basic introduction to the Drupal framework. It's hard to emphasize how important it is to understand the basic intro level concepts and functionality of the Drupal CMS and its all here in this intro section. To any of my intro Drupal users I would hand this chapter out and ask them to read it.

Chapter 2 moves into a detailed discussion of Drupal-based content and asks the simple question (but important one), what is content? In Drupal we know that content includes nodes and node types, node IDs (nid), comments, Blocks, and Views. The author defines the core node types including Story and Page. Note here to Drupal 7 users ... the story type is renamed "Article" and the Page type is "Basic Page" in the new D7 release. I also love the fact that Green defines what the Drupal front page or home page is and what that home page contains. I am asked this question all the time by new Drupal users — how do I post content to my home page and how do I customize the home page. Read the definition on p. 19 of this book.

At this point I'd encourage those readers who are using the book to go ahead and start creating content on their Drupal site following the author's instructions. It's a great book of examples of tutorials to follow along with hands-on. The author gets you creating story content and editing it quickly. He also spends a good deal of time discussing integrating a WYSIWYG text editor to your content node form so you can use the text editor buttons to format content.

Chapter 3 continues the content discussion by showing you a bunch of enhancements you can do to your posted content. The author aptly calls these "seasonings". This includes creating teasers, creating links to other node content using the text editor, uploading images using the text editors and manually via the Drupal node editor, linking your images, embedding audio content, and linking to downloadable files such as PDFs. My only concern here is that the author shows you how to link to PDF files via the text editor but there's actually simpler methods of doing this in Drupal using Drupal's default file attachments module (part of core). This is the preferred method since it easily opens up the attached file to be used in other areas of your site via the Views module for instance. I always encourage Drupal users to add attached files using the core Drupal file attachments since I think it's simpler and more streamlined and it's the "Drupal" way of attaching files. I would add this method first and then show the text editor option second.

The author shows us how to upload and embed video content using SWF Tools module. I would have spent a bit more time in this chapter showing the user more details about uploading Flash based content using a combination of the Flash node and the SWF tools modules and integrating various player options in SWF Tools such as the Flowplayer utility. But again these are technicalities. The information the author presents is great and detailed. It's a good starting point for more beginning Drupal users.

Chapter 4 moves into more advanced content editing topics. The author shows you how to use HTML and CSS to create table based layouts (without using table code) in your text editor and in a Drupal node. So for everyone who needs an introduction to CSS this is a great place to start. The author spends time showing us how to add the CSS files so they are recognized by our Drupal theme — this is going to be a bit more advanced for the new Drupal user but its good stuff to learn. He even shows us how to create a CSS file from scratch and how to build the table layout without using table code. Sticking to CSS is going to give you cleaner code and work better with Drupal so it's great that he emphasizes this here. For dealing with more table based code Green shows us some tricks to injecting this code using PHP. Again this is more advanced but good tips and tricks for those involved with code. He also shows us how revisions and workflow work in our Drupal site.

Chapter 5 deals with how to use tagging, tag clouds and how to re-name our URLs with human friendly path aliases using Drupal's core Path module. This will help our site become more searchable, browser and user friendly. Tagging is the focus here and he gives a nice walkthrough of Drupal's taxonomy system. Anyone interested in setting up tagging on their Drupal site should read this chapter. Chapter 6 moves into using Blocks, Views and setting up Blogs on your site. This chapter is the one to read if you're managing blocks and Views and want a good introduction to the Views module. Packt has published books specifically on using Drupal Views but I would start here first if you're just using Views for the first time.

The section on blogging is good too. Often I hear folks report that Drupal is only a fancy blogging tool or blogging application. This book actually shows that Drupal is a full scale and robust CMS and that blogging is only one minuscule part of the entire framework. If you're just going to be blogging on your site Drupal may actually be overkill. The author shows this by spending a smaller amount of time showing you how to set up your Drupal site for blogs, but of course it also shows you that Drupal does blogs too and you can easily use a Drupal site to just blog. I would argue that this is a great book to look at the overall impact of Drupal on building Web sites and how we can leverage it to build powerful, rich and robust content management driven sites. We can add a blog if we want to but it's not just a blogging-based piece of software.

Chapter 7 deals with setting up users, roles and permissions on your site. It's good to leave this chapter towards the end of the book since Drupal permissions can be a bit tricky and time consuming to set up. We moved through a bunch of fun material earlier in the book and now we have a chapter on permissions. I like the attention the author placed on how to organize this section into the overall book's theme and layout. Chapter 8 shows you some tricks for dealing with issues like pasting Word content into a Drupal node; and using the Blog API module to work on blog posts in remote software and then post those blog entries to your Drupal site via a Web service. A nice touch here to add a small section on using Web services to post content. Finally the Appendix shows you how to install Drupal.

This is definitely one of the best books I've read on Drupal from an introductory standpoint. It's up there with O'Reilly's Using Drupal book and I would recommend it to anyone who is installing Drupal for the first time. I'll use it in my introductory Drupal classes for sure. It will be nice to see this book revised for Drupal 7 soon. Excellent work again from J. Ayen Green.

You can purchase Drupal 6 Content Administration from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

50 comments

  1. Another book report by Anonymous Coward · · Score: 0

    I could open the table of contents and get the summary of this book review. How's the tone of the book? How complete are the examples? What is the pace like?

    Oh but "the section on blogging is good too." Yeah, that's... good.

  2. Drupal 6 or 7? by SwedishCoward · · Score: 1

    Maybe wishful thinking from the reviewer (Drupal 7 is still in Alpha) but the book seems to be about Drupal 6, not Drupal 7.

    1. Re:Drupal 6 or 7? by PocariSweat1991 · · Score: 1

      ...neither of which would satisfy the users that are still happy with Drupal 5.

    2. Re:Drupal 6 or 7? by BitterOak · · Score: 1

      ...neither of which would satisfy the users that are still happy with Drupal 5.

      They will be less happy when Drupal 7 comes out, because typically, only two versions are supported at once. Once D7 comes out, D5 support will most likely be dropped, meaning no more security updates.

      This is, in fact, one of my biggest complaints about Drupal: lack of backwards compatibility between versions. I just finished developing a site in Drupal 6 and it involved writing a lot of code. I am disappointed to see that many of the functions I call in the code are changed or eliminated in Drupal 7. At some point before Drupal 8 comes out, I'll have to update all that stuff, and I don't look forward to it!

      --
      If I can be modded down for being a troll, can I be modded up for being an orc, or a balrog?
    3. Re:Drupal 6 or 7? by 0100010001010011 · · Score: 1

      Permanent backwards compatibility leads to the cruft that is Windows. Sometimes you need to cut loose old APIs and compatibility and move forward.

      Didn't someone estimate that they spent more than 1/2 of their development time trying to support IE6? Sometimes you need to break things.

      If you don't want to change. Don't. If 6 works for you, then keep using 6.

    4. Re:Drupal 6 or 7? by roe-roe · · Score: 1

      I don't think you have much to worry about.

      First, Drupal 7 has been in development for a *long* time, so I wouldn't worry about when Drupal 8 is going to be released.

      Secondly, many projects have rolling support options. Where features have a two version rolling window of support. If you were programming for Drupal 6 you probably should have been keeping an eye on Drupal 7 to see which calls/apis/etc were being discarded. This would have limited the amount of rework to move to Drupal 7.

    5. Re:Drupal 6 or 7? by Bozovision · · Score: 1

      My 4.5 modules worked with 4.6 with no changes. My 4.6 modules worked with 4.7 with no changes. My 4.7 modules worked with 5 with very minor changes. My 5 modules worked with 6 with very small changes. I haven't tried porting any 6 modules to 7 yet, but looking at the list of modules that already support 7, I'm not quivering with fright at the prospect.

      The API is not guaranteed not to change, but a lot of people work hard to make sure that the change is evolutionary and the thousands of automated tests help to make sure that

    6. Re:Drupal 6 or 7? by BitterOak · · Score: 1

      My 4.5 modules worked with 4.6 with no changes. My 4.6 modules worked with 4.7 with no changes. My 4.7 modules worked with 5 with very minor changes. My 5 modules worked with 6 with very small changes. I haven't tried porting any 6 modules to 7 yet, but looking at the list of modules that already support 7, I'm not quivering with fright at the prospect.

      The API is not guaranteed not to change, but a lot of people work hard to make sure that the change is evolutionary and the thousands of automated tests help to make sure that

      First of all, it isn't surprising that changes from 4.5->4.6->4.7 didn't require any rewriting of modules. Only major version number change break backward compatibility. I think the change to Drupal 7 will be bigger than the previous changes. The changes to the code I've written will be anything but minor. The entire database abstraction layer is changing. No more db_fetch_object for instance, and my code has about 50 calls to that function. Also, INSERT and UPDATE db_queries will need to change as they will be handled by special functions. And that's just the database stuff. There are a lot of other functions that are changing as well, see the documentation for just some of the changes.

      --
      If I can be modded down for being a troll, can I be modded up for being an orc, or a balrog?
    7. Re:Drupal 6 or 7? by BitterOak · · Score: 1

      Secondly, many projects have rolling support options. Where features have a two version rolling window of support. If you were programming for Drupal 6 you probably should have been keeping an eye on Drupal 7 to see which calls/apis/etc were being discarded. This would have limited the amount of rework to move to Drupal 7.

      The entire database abstraction layer is changing. I know of no way to write code that would be compatible with both Drupal 6 and Drupal 7 at the same time. For instance, db_fetch_object() is being dropped from Drupal 7, but the replacements aren't in Drupal 6. And it looks like the new way of doing things will require more code. Ditto for db_query()s that use SQL UPDATE or INSERT statements. Done in an entirely different way in Drupal 7 that wouldn't work in Drupal 6. That's the gist of my complaint. I'm still grateful that this wonderful product is freely available, and I appreciate the tremendous work that's gone into it. I just see the necessity for the kind of changes that are going into Drupal 7.

      --
      If I can be modded down for being a troll, can I be modded up for being an orc, or a balrog?
  3. *tears* by BabyDuckHat · · Score: 1, Troll

    Drupal makes real programmers cry.

    1. Re:*tears* by Lunix+Nutcase · · Score: 0

      I know. That's why I write all my webpages in x86 assembly.

    2. Re:*tears* by Anonymous Coward · · Score: 0

      Real programmers reuse existing APIs instead of starting from scratch. Your poorly written, poorly reviewed code that I have to "fix" after you get fired for doing a lousy job makes me cry.

    3. Re:*tears* by Anonymous Coward · · Score: 0

      Your poorly written, poorly reviewed code that I have to "fix" after you get fired for doing a lousy job makes me cry.

      But in his last job that code was written using Drupal.

    4. Re:*tears* by Anonymous Coward · · Score: 0

      I know. That's why I write all my webpages in x86 assembly.

      Is EVERYTHING some kind of extreme religious issue for you? Man, you must be a miserable person. Does it take the pain away to post sarcastic and condescending replies on Slashdot?

      Wouldn't it be better to stop being a condescending ass who has to take everything to the utmost extreme because he cannot handle a contrary opinion? Isn't that better than being that way, being miserable because of it, and then taking that misery out on various Slashdot users? Like a shorter distance between two points.

    5. Re:*tears* by Rivalz · · Score: 1

      Kinda why I always hated being referred to as a programmer / IT / geek whatever.
      Seriously can't we do a little bit more to refine our public image a little bit more?
      I'd like to have a little bit more pride about saying what I'm doing when I go out with the girlfriend and have to talk about what I do.
      It's been 20 years now and we still can't make our profession cool? We practically make the fucking civilization go and programming is basically the next form of communication for the next 100 years.
      We generally make good money and we can fuck up even the best of most businesses.

    6. Re:*tears* by revlayle · · Score: 1

      you have to be new here, right?

    7. Re:*tears* by Lunix+Nutcase · · Score: 0, Flamebait

      My post wasn't being serious. Maybe you need to lighten up a fuckton if you take my posts that personally?

    8. Re:*tears* by lymond01 · · Score: 1

      We generally make good money and we can fuck up even the best of most businesses.

      This is where the term "consultant" is appropriate.

    9. Re:*tears* by Anonymous Coward · · Score: 0

      WHOOSH!

    10. Re:*tears* by Anonymous Coward · · Score: 0

      My post wasn't being serious. Maybe you need to lighten up a fuckton if you take my posts that personally?

      Reading your posts in any Apple discussion illustrates how condescending and serious you are. Like the pussy you happen to be, it is always in a deniable fashion. Hey, when somebody calls you on it, just claim you were joking. That way you never have to own up to anything.

    11. Re:*tears* by mp3LM · · Score: 1

      I don't have any mod points so I thought I'd just let you know:
      Your comment was funny and appreciated.

    12. Re:*tears* by tehcyder · · Score: 1

      We generally make good money and we can fuck up even the best of most businesses.

      Yeah, that's a good slogan to improve the public image of any profession.

      --
      To have a right to do a thing is not at all the same as to be right in doing it
    13. Re:*tears* by Lunix+Nutcase · · Score: 1

      I didn't say all my posts were me joking. I was only referring to the post above. Either way, the fact that you take what I post so personally means you really need to get a life.

  4. Drupal by Anonymous Coward · · Score: 0

    Because 800 database connections to render a single page rules.

    1. Re:Drupal by hierofalcon · · Score: 1

      Why do you think the boost front end module and css and js aggregation options are so popular? They may not help with registered user content, but really help with anonymous users.

  5. Hmmm... by Disgruntled+Goats · · Score: 0, Troll

    What's with all the slashvertisements for Packt Publishing? They going to pay for Taco's penis enlargement surgery?

  6. sweet, send one to France by rarel · · Score: 1
    France.fr has been a laughing stock ever since its failed launch last month. Maybe the devs could learn a thing or two after their site collapsed only a few hours after launch...

    (disclaimer: I'm French, I just can't help it if my country's been a complete joke lately)

    1. Re:sweet, send one to France by Anonymous Coward · · Score: 0

      Lately? Try ever since Napoleon kicked Europes ass.

  7. Will you be paid for re-do? by Anonymous Coward · · Score: 0

    >At some point before Drupal 8 comes out, I'll have to update all that stuff, and I don't look forward to it!

  8. Re:Another day, another book on some by Anonymous Coward · · Score: 0

    Will you suck my penis if I stick it in your pooper beforehand?

  9. I downloaded it, thanks! by Anonymous Coward · · Score: 0

    Great, I've downloaded it, thank you so much, I will read it now.

    And no, I will not give anyone the download link, it has hard to find (it took me 20 minutes to find a working link, 90% of links for this book are down). ;)

  10. And send one to BC by rueger · · Score: 1

    What can you say when the government launches a gambling website, shuts it down within hours, and admits to serious reveals of customer information. Like users being able to gamble with other people's money...

  11. Great timing! by vvaduva · · Score: 1

    Right in time for Drupal 7!!

  12. A book for content administration? by NightHwk1 · · Score: 2, Insightful

    There is something *seriously* wrong with a Content Management System if it prompts someone to write a book on how to use it for editing content.

    Never mind the nightmarish coding practices that developers have to deal with, the always-one-version-behind modules, views in the database, or all the other things that make Drupal a pain to work with. The first thing a CMS should do is make content administration simple.

    Hopefully Drupal 7 will solve some of these problems...

    1. Re:A book for content administration? by Anonymous Coward · · Score: 1, Insightful

      I disagree. It's really interesting to see how many people don't know how to properly convey, organize, and administrate content...ESPECIALLY on websites. I've even seen some very intelligent people do it incorrectly. I think a lot of people underestimate this task. Programming is NOT the same as content administration. In my opinion, they require different skill sets.

    2. Re:A book for content administration? by Anonymous Coward · · Score: 0

      Of course there are different skill sets between content management and programming. The point is that Drupal (at least as of version 6.x) is clunky and difficult to use, even for advanced users.

  13. just imagine if M$ had by alizard · · Score: 1

    switched to a *nix with an emulation layer running XP while porting the company flagship apps to *nix. Imagine a M$ OS that's stable, reliable, and until the virus h4xx0rs catch up, largely malware free.

  14. Serious problem with most CMSs by Bozovision · · Score: 1

    Drupal is not alone here. This is a problem with almost all except the simplest CMSs.

    The problem is one of complexity: when you are doing one thing, it's easy to optimize it into one SQL query. But when you have a modular system, you want each module to work independently as much as possible because you want to avoid dependency hell, and you want to minimize module interaction because that will lead to side-effect bugs which are difficult to track down. The architecture choice that most CMSs make in order to foster sustainable growth is that each module gets to handle its own data. But that means that you don't get optmized database queries - in fact you are almost certainly guaranteed that you will have multiple reads of the same data, as different modules work on that data.

    Which is why all mature CMSs also have caching strategies. They typically cache the output of whole pages if pages do not differ by user, and partial pages where they do, constructing the page from the appropriate parts. They also usually have in-memory caching strategies to avoid repeated db reads.

    Better CMS's have variable caching strategies, allowing you to store pages in memory, in files and in database as appropriate. Drupal has modules for all of these strategies and also works well with Varnish, a caching proxy/accelerator.

  15. Tears of joy by Bozovision · · Score: 4, Insightful

    I think I can claim to be a real programmer having designed & written shrinkwrap software, built in-house corporate software, developed embedded control software, made web apps used by thousands of users daily, written several frameworks, all for software running on a diverse range of hardware, from microcontrollers through to mainframes and most things in between, in a pretty wide variety of languages, from systems languages like C, through to dynamic languages like PHP and Ruby, and all the usual suspects in between.

    In my opinion Drupal core is well written. Tons of thought goes into it, with lots of smart, experienced people weighing in on the architectures and reviewing the code. It's (far) better than most closed source apps I've had the pleasure of working with.

    This is also true of the top, say 10 to 20% of non-core modules. The ones that no serious site is without. The quality of the rest varies hugely, from bad, through to awesomely good.

    1. Re:Tears of joy by DNS-and-BIND · · Score: 1

      Thus reinforcing the stereotype that Drupal is for coders only. If I had known what a festering ball of crap the user side of it was, I would never have started using it.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    2. Re:Tears of joy by drinkypoo · · Score: 1

      Thus reinforcing the stereotype that Drupal is for coders only. If I had known what a festering ball of crap the user side of it was, I would never have started using it.

      Have you tried any of other other Free/free CMSes that do everything Drupal does? Wait, they don't exist. Further, they are just as frustrating, if not moreso. What would stop me from starting to use Drupal today is that Drupal 7 is pretty majorly different, and it's going to be some time after its release before all the important modules are stabilized... and it's not out yet. I'm holding back three different projects until D7 drops... which means they've already been pushed back. D7 is supposed to provide the database abstraction layer that we have needed all this time, and which should have been the first thing added when they added support for a second db.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    3. Re:Tears of joy by jhenai29 · · Score: 1

      I am also dreaming that someday i will be a good programmer.. I am not smart as my brother! I hope I have even just a piece of his brain...he knows everything! SEO Tips Top 10 Twitter Tools Top Twitter Tools The Internet Marketing Superclass Review

  16. A complex tool needs a manual by SuperKendall · · Score: 1

    There is something *seriously* wrong with a Content Management System if it prompts someone to write a book on how to use it for editing content.

    I do not agree. I think someone taking the time to lay out clearly exactly what all the parts are makes a lot of sense for any CMS, so that a content producer can lay out data and pages in ways that make sense for that CMS.

    The thing open source software is worst at is writing manuals, so it makes sense that a very popular CMS would have that documentation vacuum filled with commercial books.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  17. Commendable aim. by Anonymous Coward · · Score: 0

    But there are tasks intrinsically complex, the management of data seems to be one of them, so I don't know how you expect to "simplify" it....