The upcoming release of Drupal 7 is seeing some major changes in the look and functionality due to the attention that has been given to the user experience. Like WordPress, Drupal 7 will have an administration theme which will take away many of the layout, design, and customisation headaches that currently exist.
When Drupal 6 was released contributed modules such as CCK and Views were not ready due to major rewrites for both, which meant most people couldn’t upgrade. There is a push behind Drupal 7 to make sure this doesn’t happen again.
CCK (Content Construction Kit) is used to add different field types to your content (the ability to add new content types is part of Drupal), which is very useful considering the basic content types are very limited in the fields available. Content types consist of a title and then the content itself, but with CCK you could add datefields, images, calculated fields, files, etc. It was and is a very flexible system.
CCK also allows you to control how fields display depending upon how the content is being viewed. For example, you might not want to display all of the node content on your RSS feed or on the node teaser. CCK enables gives you the tools do control this.
CCK also enables you to control which roles can see fields you’ve created. It’s extremely flexible and I’ve personally used it on a site to hide the cost of a product from our customers, but display it for our staff. This has enabled us to use the same system for both internally and externally. At least it did. I’m revamping the site…
The good news is that a lot of CCK’s functionality is being merged into Drupal 7, bringing the greatness that is CCK to every Drupal user. I can’t wait to see what people do with it.
Views is a great tool used to build lists of content based upon whatever criteria you may so desire. It enables you to format, filter and sort the content in multiple ways and is extensible too so even if the default view display methods don’t suit your purpose, someone has probably written one that will.
The catch with Views is that Drupal content must first be exposed to views and luckily all of the default drupal content is exposed. Many users have written addons to Views that expose data from other contributed modules (CCK exposes any created fields to Views), but it is possible to come across a situation where there is data ytou would like to display with Views but you cannot access it. I have such a problem with Ubercart’s Attributes/Options.
I was thinking of a great example of a use for CCK and Views just recently (but I am using WordPress on here now so can’t do it). On our WoW guild forums there is a post that has the gems everyone can make listed throughout it. Using CCK you could create a content type designed to contain the details about each gem you can craft and then Views could be used to generate a table-based list. You could even add a field that lists all your jewelcrafters and select the people who can make each gem.
CCK and Views are extremely flexible and if you’re running Drupal and haven’t used them you are only scratching the surface of what you can do.
I’m very excited to see what Drupal 7 will bring to the table