Wordpress - How do you add thumbnail support for custom post types?

By default all custom post adds support for Title and editor, if you want more stuff like comments, thumbnail and revisions you have to add it manually in the support argument.

Read more about how to register your custom post type here, you can also find the section about support to see what you can add.

Here is an example wehere to register thumbnail for the custom post "Books" and it hav support for: 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments'

function codex_custom_init() {
  $labels = array(
    'name' => _x('Books', 'post type general name'),
    'singular_name' => _x('Book', 'post type singular name'),
    'add_new' => _x('Add New', 'book'),
    'add_new_item' => __('Add New Book'),
    'edit_item' => __('Edit Book'),
    'new_item' => __('New Book'),
    'all_items' => __('All Books'),
    'view_item' => __('View Book'),
    'search_items' => __('Search Books'),
    'not_found' =>  __('No books found'),
    'not_found_in_trash' => __('No books found in Trash'), 
    'parent_item_colon' => '',
    'menu_name' => __('Books')

  $args = array(
    'labels' => $labels,
    'public' => true,
    'publicly_queryable' => true,
    'show_ui' => true, 
    'show_in_menu' => true, 
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'has_archive' => true, 
    'hierarchical' => false,
    'menu_position' => null,
    'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' )
add_action( 'init', 'codex_custom_init' );

For custom posts, you first have to enable support for thumbnails:

add_theme_support( 'post-thumbnails' );
function theme_setup() {
    register_post_type( 'yourposttype', array(
        'supports' => array('title', ...,'thumbnail'),
add_action( 'after_setup_theme', 'theme_setup' );

You can also use add_post_type_support() to add a single feature, if you don't want to rewrite the default supports options when registering your custom post type:

add_post_type_support( 'product', 'thumbnail' );