How to Automatically Set the Featured Image in WordPress

Do you sometimes forget to set the featured image on your WordPress posts? Here’s a quick handy snippet that will automatically set the featured image by grabbing the first image of the post. If you want to select your own featured image, it will display your selection instead.

Add this snippet to your theme’s functions.php file or create your own little plugin for it, whichever you prefer:

function autoset_featured() {
          global $post;
          $already_has_thumb = has_post_thumbnail($post->ID);
              if (!$already_has_thumb)  {
              $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
                          if ($attached_image) {
                                foreach ($attached_image as $attachment_id => $attachment) {
                                set_post_thumbnail($post->ID, $attachment_id);
add_action('the_post', 'autoset_featured');
add_action('save_post', 'autoset_featured');
add_action('draft_to_publish', 'autoset_featured');
add_action('new_to_publish', 'autoset_featured');
add_action('pending_to_publish', 'autoset_featured');
add_action('future_to_publish', 'autoset_featured');

This snippet comes to you courtesy of the folks at Add the code to your site and never forget to set your featured image again.