Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Including images as CCK fields

From: Drupal 6: Online Presentation of Data

Video: Including images as CCK fields

One of Drupal's greatest weakness is its lack of native support for graphics. If you watch the Drupal Essential Training Series from lynda.com, you might remember the procedure we use to get them into a Drupal site. It was pretty messy. You had to upload the file, figure out where it was stored, hand write HTML to place it in the content and finally change the setting just to get the things actually show up. So let's look at a better way. Drupal's poor handling of images in its core package created a vacuum that was filled with several solutions in the form of downloadable Modules. If you browse through them on drupal.org, it's easy to get confused by their shear number and the fact they all appear to do exactly the same thing. We are going to look at just one of these Modules called ImageCache.

Including images as CCK fields

One of Drupal's greatest weakness is its lack of native support for graphics. If you watch the Drupal Essential Training Series from lynda.com, you might remember the procedure we use to get them into a Drupal site. It was pretty messy. You had to upload the file, figure out where it was stored, hand write HTML to place it in the content and finally change the setting just to get the things actually show up. So let's look at a better way. Drupal's poor handling of images in its core package created a vacuum that was filled with several solutions in the form of downloadable Modules. If you browse through them on drupal.org, it's easy to get confused by their shear number and the fact they all appear to do exactly the same thing. We are going to look at just one of these Modules called ImageCache.

I like it because in addition to letting you upload and place graphics fairly easily, it can be set to automatically process them in interesting ways that become especially useful for putting in the context of a data driven site. It's in wide use on Drupal sites throughout the Internet despite the fact that running it effectively requires you to download and install four separate Module packages. They are all included in Acquia Drupal by the way, which you can download at acquia.com. Setting up ImageCache and all its supporting parts is a hassle but believe me, it will be worth it once we start setting up views later in the course. You will need to install four Modules. ImageAPI, which is a behind the scenes module with no interface of its own. FileField, which lets you upload files into CCK fields. ImageField, which extends FileField and is specific to images.

And ImageCache itself, which does all the fancy image processing. We have already downloaded and uncompressed them and dragged them into the Modules folder of our Drupal installation. If you need help with this step, see the video expanding your site's capabilities with modules in the lynda.com Drupal Essential Training Course. To turn on these Modules as always you go to Administer, Site building, and Modules. On the Modules page, you will need to turn on Modules in two different groups. There is a new group called ImageCache and there are also some new Modules turned on in the CCK group at the top of the screen. I'll show you those right now.

Scroll down a bit and you see FileField. We'll turn that on and also ImageField. Scroll down a little bit further, and we come to the ImageCache group. I'm going to turn on all of these except for ImageMagick. I generally don't use it because it's a command line tool. That's a little bit beyond what I need. However, you may want to look into it, and of course documentation as always is on drupal.org. But for us, we'll just turn on these four in the ImageCache group, scroll to the bottom, and Save configuration. There is one side note I want to mention here. The ImageField Module is incompatible with the other popular Module that's called simply image. If you have downloaded and installed that one, weed (ph) through ImageField's documentation to understand the conflict and how to get out of it. Now we are basically all set up, we only have two more steps to go. First, to add the ImageField to our Person Content type and secondly, to give ImageCache instructions that will let to do it's magic.

We are going to start by going to our Person Content type, once again that's Administer, Content management, Content types, and I'm going to add fields to my Person Content type. Specifically, I'm going to add a headshot so we can see the faces of all the people in our database. As before we add a new field by going down to this New field form and filling it in. I call it Headshot. The field will be called headshot. And under file type we now have a different selection, File. We select that and select Image. We then click Save to go on to the next screen, which lets us set our attributes for this headshot field.

As with Numbers there are specific options that you can set for this kind of CCK field type. For example, you could decide you don't want to allow people to upload GIFs by deleting this extension here, or you want them to be able to upload a different type of image file. You can specify a Minimum resolution or a Maximum resolution, so people don't upload anything too big or too small. Here is one change we are actually going to make which is to change the path. I'm going to create a folder inside our files directory called headshots, just so that we can keep them all together in one place instead of having all of our files end up loose in that files directory.

If you have installed token as we did in an earlier video, you can see that you can actually create folders that are specific to the file. So that if for example the user name Cindy uploads files, they will be put in a folder labeled Cindy and so forth. Scroll down. We'll make one or two other very small changes. In File size restrictions, I recommend that you do put a Maximum upload file size there because otherwise people might upload these enormous files which will crowd up your server. I'm just going to say you can't upload anything more than 5 megabytes. We'll scroll to the bottom, and Save.

As always I recommend that you take a look at the other options there, so you can understand what's available when you create an ImageField type. I'm going to rearrange this a little bit so it looks better when people are filling out the field. And Save it. We have now added a Headshot field to our Content type called Person. Now let's go back and edit a node of that Content type to see how this works. We are not actually done and in fact there are two important things we have to do to make the image appear the way we wanted but that will be clear after we create this node. We'll go back to the home page and will look at this Tom record, and we'll edit it. And here we have a place we can put that Headshot, if we click Browse, we could then go and find it. The one we'll use is called tom-the-scream. Open it and click Upload. And after a moment there it is. It's been put into our Drupal installation. However, you still have to save in order to make sure that it's in the node.

Now that we have done that and uploaded the Headshot, you can see one of the problems, it's much too big. This is where the ImageCache Module comes in. We are going to set some specific rules for ImageCache so when someone uploads a file, it not only makes sure that it's not above a certain size but it forces it down to whatever size we want it to be. To do that, we'll scroll back over. Go to Administer, Build, and ImageCache. The way ImageCache works is you set up what are called Presets. In a Preset you can say how large the file can be and a few other things as you will see in a moment. I think it's easier to show than to tell, so will add a new preset and I'm going to call this one, 100x100. As you can see, you are limited to using only alphanumeric characters, underscores, and hyphens as in many places throughout Drupal. Create that new preset and then I can set whatever actions I want. In this case I'm going to scale it down to a certain size, so I click on Add scale. As you can see there are many other options, for example, you can rotate each image that somebody uploads but I'm just going to make it scale.

I will make the width only 100 and the height only 100. And I'll allow upscaling. What that means is if someone uploads an image that's only 50x50 pixels, it will make it larger so it's 100x100. It will look pixelated but it will at least be the same size as all the other images. I'll add the action, good, and it shows us a preview here. If I wanted to I could add other action, so that after scaling it would rotate, it could sharpen and so forth. But I'll just say update preset, make sure everything is good. Good, my preset is saved.

I am going to go back to ImageCache and create one more because I'm going to use that later in this series. Add new preset, 200x200 and you can guess what this is going to be. I'll scale it to 200x200 and add action. Very good. And you can see now that what's it going to look like. Now let's go back and take another look at that node. We'll go back to the home page and click on Tom de Nada. Yes, still too big. But we can change that by going into Content type.

We click on Administer, Content management and Content types. And once again we click manage fields, this time we go to Display fields. Next to Headshot, as with the other fields you have several options. You can change it so it's not only the raw image but the image that you just created using ImageCache or rather that ImageCache automatically created for you. I'm going to change that so it's not 100x100 image and when you click on it, it goes to the node. And I'll do that both for the teaser and the full node. And Save it.

Now let's go back to our home page and see what that looks like. Much better. Finally, I'm going to do just a little bit of clean up, I'll go back to our Content type, go back to Display fields and I'm going to take away that thing that says Headshot. Obviously, it's a Headshot and Save it. Let's take one more look at our page. Looks good in the teaser, looks good in the node itself. Terrific. That was a pretty complicated process, so let's review. There are five steps to adding images using ImageCache. The first is to install and enable all of the Modules that you will need. The second is to add an ImageField to your Content type. In our case it was the Person Content type. The third is to add ImageCache preset so that you will end up processing the files that people upload to be exactly what you want. The fourth is as always change the way it appears on the page by changing the Display fields settings within your Content type. And finally, start uploading files and see how it goes.

So you might ask, what exactly does that get us? In one way, entering images this way is less flexible than if you just wrote HTML into the node. For example, you can't put the image in the middle of a block of text or make it flush left. But for a data driven site, you have to do it this way because a image becomes a separate data object that you will be able to play around with later. And ImageCache makes it a highly flexible data object by letting you specific how the graphic will appear in different contexts. We have only scratched the surface here. A search for the word ImageCache on the drupal.org website leads you to all sorts of neat effects that you can make it apply, such as reflection, recoloring, and so on. In short, a mastery of ImageCache can make your graphics look as good as the rest of your site.

Show transcript

This video is part of

Image for Drupal 6: Online Presentation of Data
Drupal 6: Online Presentation of Data

50 video lessons · 11241 viewers

Tom Geller
Author

 
Expand all | Collapse all
  1. 12m 56s
    1. Welcome
      1m 12s
    2. Reviewing requirements
      3m 35s
    3. Using the exercise files
      3m 11s
    4. Touring examples of data visualization
      4m 58s
  2. 27m 56s
    1. Planning data structure
      8m 26s
    2. Importing and manipulating data
      6m 40s
    3. Looking at Drupal's database
      6m 13s
    4. Deciding whether to store personal data as nodes or users
      6m 37s
  3. 1h 13m
    1. Understanding the Content Construction Kit (CCK)
      4m 57s
    2. Creating new content types with CCK
      7m 26s
    3. Hiding the Body field
      2m 46s
    4. Reflecting CCK field data in the Title field
      7m 28s
    5. Managing CCK field placement
      7m 34s
    6. Exploring CCK's other features
      8m 22s
    7. Using other CCK field types
      3m 25s
    8. Adding date information as a CCK field
      8m 43s
    9. Including images as CCK fields
      10m 23s
    10. Connecting content to existing nodes
      5m 58s
    11. Using taxonomies to categorize and group data
      5m 59s
  4. 53m 54s
    1. Understanding why views are useful
      6m 12s
    2. Using SimpleViews to create basic content views
      5m 49s
    3. Diving into the Views interface
      11m 16s
    4. Adding fields to a view
      7m 12s
    5. Understanding iconic controls in the Views interface
      7m 15s
    6. Surveying the Sort, Filter, and Field options in Views
      5m 40s
    7. Adding view displays as pages, blocks, and RSS feeds
      10m 30s
  5. 43m 34s
    1. Overriding default settings on view displays
      8m 56s
    2. Attaching more information to views
      10m 57s
    3. Improving view appearances with grid, list, and table formatting
      9m 20s
    4. Surveying other basic display settings in Views
      11m 3s
    5. Altering a view's appearance through CSS
      3m 18s
  6. 55m 8s
    1. Importing, exporting, and cloning views
      6m 9s
    2. Controlling access to views
      7m 19s
    3. Learning from built-in views
      5m 52s
    4. Creating views that aren't based on nodes
      10m 6s
    5. Extending views with arguments
      10m 17s
    6. Extending views with relationships
      7m 2s
    7. Going further with relationships
      8m 23s
  7. 46m 40s
    1. Understanding geographic data
      4m 26s
    2. Setting up the Location module
      16m 20s
    3. Entering geographic data with the Location module
      10m 10s
    4. Displaying basic maps with the GMap module
      6m 43s
    5. Integrating the GMap module with Views
      9m 1s
  8. 54m 21s
    1. Exporting data in tabular form
      11m 25s
    2. Planning with the calendar modules
      11m 31s
    3. Using the Charts module and Google Charts
      7m 11s
    4. Graphing data with Open Flash Chart
      4m 50s
    5. Making important data pop out with tag clouds
      7m 46s
    6. Putting it all together in an attractive package
      11m 38s
  9. 36s
    1. Conclusion
      36s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed Drupal 6: Online Presentation of Data.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.