CCK has been significantly reworked for Drupal 6, both to add new functionality and to provide stronger code and APIs. We've tried to respond to many of the things that were often requested but were difficult or impossible to do in the Drupal 5 version: streamline the process of creating fields, use drag-n-drop to reorganize fields and values, provide a user-friendly 'Add more' button for multiple values, give developers an API and more tools to customize CCK behavior, and provide more documentation.

Many of the things you see in the latest code would not have been possible without all the new Drupal 6 and Views 2 features. Drupal 6, CCK 2 and Views 2 make a great combination!

CCK Links

Important: This release fixes a (minor) security issue that was present in the previous RC releases.
See the Security Annoucement for more informations.

Upgrading from Drupal 5

  • The update instructions are on the Project page. The recommended upgrade process is designed to help you avoid problems that the early adopters ran into and represent suggestions for the safest and easiest possible upgrade. Please be sure to read and follow them, and, as always, make a backup copy of your database before upgrading to the Drupal 6 version.

Features/Changes from CCK D5

Usability Improvements

  • The Manage Fields screen now uses drag-n-drop to make it easy to re-organize fields and fieldgroups.
  • Streamlined UI to add fields and groups: Add a field, select the type and widget, and drag it into place right from the Manage fields screen.
  • Re-arrange non-CCK "fields" (title, body...) along with CCK fields on the Manage fields screen. Third-party modules can expose their own "fields" to gain d-n-d reordering for free.
  • On node edit forms, multiple-valued fields come with an AHAH-enabled 'Add more' button to add empty form elements without reloading the page, and drag-n-drop support to freely reorder values.
  • Numerous usability improvements have been incorporated based on feedback from the usability testing at the University of Minnesota.

Fields and Field Display

  • Field visibility and formatting can be adjusted for each display context. Notably, the 'Search index' context lets administrators specify which fields get indexed by the search engine. Third-party modules can expose their own display contexts ($node->build_mode) to the list of available contexts.
  • There is a new option on the 'Display Fields' screen to omit fields from the $content variable used in node templates, to make it easier to customize where those field values will go.
  • Fields can now have a fixed number of multiple values (2, 3... up to 10).
  • Nodereference and userreference fields now have an option to display options as checkboxes as well as in a drop-down select list.
  • New $FIELD_NAME_rendered and $GROUP_NAME_rendered variables are available to node templates holding a fully themed field with label and multiple values.
  • More help for themers is included in the Advanced Help topics.

Content Permissions

  • A new Content Permissions module included in the CCK package lets you control fine-grained access to individual fields.

Content Copy Improvements

  • The Content Copy module has been reworked to reduce import/export problems and to ensure that default values and other attributes make their way into the import.


  • A new API with Create/Read/Update/Delete (CRUD) functions has been added to make it easier to create and populate fields from custom modules and profiles.
  • Module-defined fields can be 'locked' to prevent users from changing or deleting them and breaking functionality.
  • The API for widget modules have been significantly reworked to allow field widgets to be reused outside of node forms.

3rd party integration

Views 2

  • CCK fields expose feature-rich fields, filters, arguments and sorts to be used in Views.
  • Relationships make all values from related nodes or users available in Views. Add a 'relationship' to a view using a nodereference or userreference field, then add any field, sort, filter, or argument from the referenced node or user to the view (just indicate it is coming from the relationship instead of the original node).
  • There is a new feature to create a view of users and use it as a customized 'Referenceable users' list, or, as in earlier versions, create a view of nodes and use it to create a customized 'Referenceable nodes' list.
  • Fields now can be filtered by 'Empty' or 'Not empty'.

Advanced help

  • CCK 2.0 comes with initial support for the Advanced help module to make more documentation available. Browse to the Advanced Help index or use the 'help icons' to find information on CCK's user interface, available fields and widgets, how to add fields to content types, and advanced theming. The corpus of help topics will be progressively enriched in future releases.


  • We have begun integration with the Panels 2 module. Panels 2 for Drupal 6 is not quite ready yet, but preliminary integration has been added to CCK, and will be extended in later releases.

Devel generate

  • CCK now integrates with the Devel generate module. Core CCK fields and any other CCK fields that implement the content_generate() hook will add random valid field values to the generated nodes, making it easy to create sites with populated values for all your fields.


  • The Diff module can outline changes in CCK field values across node revisions.


  • CCK comes with a fairly comprehensive suite of tests (fields CRUD API and data storage, admin UI, node edit forms, optionwidgets) to be run using the Simpletest module, to help ensuring that no critical feature gets broken during development.

Thanks !

KarenS and yched wish to thank a number of people who have spent a lot of time getting this release working. Apologies to anyone we forgot to include! We appreciate the efforts of everyone who helped out.

  • Moshe Weizman for his constructive presence in the issue queue, early code and feature review, and his contribution of the new Content Permissions module.
  • Earl Miles/merlinofchaos for lots of help getting the Views integration working right and making sure we were taking full advantage of all it could offer.
  • pwolanin for security reviews and patches.
  • corsix for writing the helper framework for the Fields CRUD simpletests during the GHOP contest.
  • fago for providing and maintaining Rules integration.
  • dopry, jpetso, asimmonds, fractile81, and Moonshine for a variety of patches, reviews and bug reports.
  • hass for providing translations and hass, stella, and others at Civic Actions for string translatability reviews and fixes.


jvandyk’s picture

Thanks so much for your tireless work on this vital part of Drupal. Awesome!

stella’s picture

Well done and a major thank you for all of your work on this outstanding module. It's invaluable to the whole community. Cheers!

janusman’s picture

It looks like a lot of hard work went into this. Cheers!

iimitk’s picture

Ah.. all good things to those who wait! :) Congrats everyone & a big thanks for all those who worked hard to get this must-have module available for Drupal 6.

Since the official launch of Drupal 6, there wasn't a single D6 implementation showcased on's front page, maybe except for, which is in its owners' words used a "heavily customized version of Drupal 6".

I hope with both CCK2 & Views2 now officially released & considered stable that more powerful D6 sites come to the scene.
"Creativity is knowing how to hide your resources" - Albert Einstein.

WorldFallz’s picture

This is an amazing amount of work! I'm still trying to digest the magnitude of all the improvements that d6, views2, cck2, panels2, d6 og, and nodequeue2 bring to the table. There simply is no competing OS CMS that comes anywhere near providing this functionality without writing a single line of code.

Kudos to everyone involved!

"Give a man a fish and you feed him for a day. Teach a man to fish and you feed him for a lifetime." - Lao Tzu
"God helps those who help themselves." - Ben Franklin
"Search is your best friend." - Worldfallz

BioALIEN’s picture

Spot on in your assessment. Big kudos for the immense amount of effort and sleepless nights that went into getting CCK out the door.

Dee :: UK Drupal Consultancy

bonobo’s picture

Thank you all for your work on this. Great stuff all around.



Click. Connect. Learn.

zzolo’s picture

So great!! Amazing work.

Chicago Technology Cooperative


greylogic’s picture

This is one of the most important/useful contributed module. Well Done.

My attempt with Drupal -

RobLoach’s picture

Looking forward to a wicked demo at New Orleans!

ChrisBryant’s picture

Thanks to everyone involved in making this happen, with this you make Drupal shine!

Great job with the writeup and details about the release as well.


Gravitek Labs

jdelaune’s picture

Great news. Any documentation for the new API yet?

samhassell’s picture

Congratulations Guys, now all I need is Ubercart & Panels2 for D6, then I can start the Great Migration! Thanks!

mengweifu1985’s picture

期待有人翻译一下... 高级help 如果纳入核心就好了

Kuldip Gohil’s picture

Really CCK & Views is awesome module in Drupal

Kuldip Gohil

kyutums’s picture

Things just keep getting better and better! Thanks to the CCK team for another wonderful release! :)

eigentor’s picture

This bloody rocks. I was already amazed by the "wizard-like" UI for CCK in Drupal 6. This is a huge improvement. CCK for D5 had some serious UI issues. But now e.g. now the "manage fields" tab is directly accessible from the content types overview tables. Really amazing. Rock on!

I'm happy being miserable

cloneofsnake’s picture

Absolutely agree! CCK2 & Views2 are so much more refined on D6! And now... the other modules have no more excuses for delays... >:D

None are more hopelessly enslaved than those who falsely believe they are free. - Goethe

aleagi’s picture

CCK is, one of the most important modules and it's very nice to know that we have an stable version! WTG!


Best regards,

Luiz Gustavo Aleagi Nunes `°º¤ø,¸¸, |
Desenvolvedor Drupal | Padrões W3C | Acessibilidade
¸,ø¤º°`°º¤ø,¸¸,ø¤º°` Nosce te ipsum...¸,ø¤º°``°º¤ø,¸¸,

ascetic’s picture

thanks, been waiting for this
great work guys..

Mediasastra Literature Social Networking
Jati my blog
itechstyle IT needs some styles

juan_g’s picture

Just updated the CCK status to CCK 6.x-2.0 released, at Contributed modules status - version 6.x. Thank you!

vkr11’s picture

Congratulations and thanks for all the worl

- Victor
Better Way to Search | Drupal Jobs | Income Tax India

jou00jou’s picture

Thank you all for your hard work. I think it is time to move CCK and VIEWS into drupal 7 core.

ipwa’s picture

Soooo happy to see this module have a stable version for Drupal 6 now, this changes everything! Now we can start building our Drupal 6 sites for clients, I couldn't be happier. You guys rock!

And +1 to adding CCK2 and Views2 to core!



Coupon Code Swap’s picture

Thank you so much for all the hard work on this. It is an indispensable module for Drupal. I have already installed on two sites and it is running beautifully. Can I send a donation specifically to support this module?

MacRonin’s picture

I just want to add my voice to the legions that are thanking you for your hard work and efforts on behalf of the Drupal community. Now I just need to find some free time so I can DL both the new VIEWS & CCK and starting experimenting and envisioning the possibilities.

------------------- News from the Privacy Front (Drupal) Helping children around the world ( Drupal)

mbarcelo’s picture

Many thanks, for you great job!

duntuk’s picture

very nice.... *high five*!

VVVi’s picture


Rosamunda’s picture

Fantastic, thanks!

Buenos Aires | Argentina

Joanzo’s picture

gee, thanks for the hardwork.. I've been waiting for this to use drupal 6.

new foods n beverages lover community

TomDude48’s picture

I can wait to start using the new CCK API. Anybody know where some documentation is?

Build faster: Open Enterprise Drupal
Analyze deeper: Open Enterprise Intelligence

naingtunwin’s picture

Hi, finally CCK 2.0 officially released :-) so nice.
But may I know how can I upgrade from 6.x-2.0-rc10. It must be uninstall and reinstall the new CCK 2.0? or I can upgrade from 6.x-2.0-rc10?
Thank you.
Drupal rock!!

yched’s picture

Like for any other contrib module : delete the old cck folder, upload the new one, go to update.php to see if there are updates pending.’s picture

Great news.
Thanks to all contributors.
Drupal Theme Garden

zilla’s picture

still can't believe that this isn't part of drupal core! thank you for your tireless work on this, many or most drupal sites would not be possible without CCK!

i love to waste time:

Morten_P_Andersen’s picture

"still can't believe that this isn't part of drupal core!
I agree with you, completely
CCK is a most have for Drupal


webchick’s picture

There's an issue to get CCK into core, but we need more people helping out, and fewer people wishing. ;)

Lullabot loves you
Join us at Do It With Drupal!
A large scale, curated education event
December 10-12, New Orleans

zilla’s picture

what? you mean "hope" isn't a strategy?? has anybody shared that wisdom with our government? ;)

i love to waste time:

mattie’s picture


is there maybe a screencast somewhere showing off the new features..? :)

jrc’s picture

To the team, a hearty thank you for all your hard work. You have just removed a roadblock to building a new disaster response site.

- John

3lite’s picture

Lucky me, another dream come true!

Thank you!

Washington Pages
Blank My Blank - Promote your _____!

leoklein’s picture

You can't imagine how this has made my life easier!

NikLP’s picture

Where can I find out more about the progress of the Panels 2 integration work?

joep.hendrix’s picture

Wow, the anouncement itself is of high quality and so is CCK.
Thanks to all the people involved for this wonderfull module!

CompuBase, Drupal, websites and webdesign

CompuBase, Dutch Drupal full service agency

matteoraggi’s picture

I?m searching for developers interested to work on integration of cck2 with
here some more details:

Luxury Furniture

Fred125’s picture

it is excellent work!