What is the difference between: field_image, field_image_cache and field_preview?
In this Drupal installation I have a number of fields that I have created using CCK (and/or Ubercart). Each time I create a new content type or think about adding an image field to a content type - as I'm just about to for my content type of website - I wonder to myself - why do I have three fields types? Couldn't I just have one? Let's compare them then...
Looking at Admin -> Content Types -> Fields I can see that each field is of type File.
So let's create a table and consider the attributes of each field
| Field name | Used in | Field details |
|---|---|---|
| field_image | Component, Page |
640x480 ALT text: Not enabled Title: Not enabled
Global settings Not required Unlimited values List: Disabled Description: Disabled
|
| field_image_cache |
Domains, Extras, File, Hosting, Product, Product Kit, Site, subsection, Support. All of these classes are Ubercart products - except for subsection!
|
No max size. ALT text: Enabled Title text: Enabled
Global settings: Not required Unlimited values List: Disabled Description field: Enabled
|
| field_preview | portfolio |
No max size File path: portfolio ALT text: Enabled Title Text: Enabled Default image: YES
Global settings Required: YES List field: Enabled Description field: Enabled
|
For field_image:
Widget type is Image for Component and File upload for Page. Oh my! this (File upload for Page) is wrong... since it doesn't allow custom ALT or Title text on Page entries.

Conclusion: The field to add to website is "field_preview".
Now why's it called preview.
Well... historical reasons. In the original site when you click on the image you get taken to the live site. The preview was a thumbnail version of a screen capture. Now, using Image Cache we can make them big to start with and have it scaled down where we need it.
I have no idea what ticking or unticking "List field" does!