Restrict size of custom background image

There are two parts to the answer:

  1. You can set the size of images using add_image_size. This is done in your functions.php.

    add_image_size( 'background-image', 900, 500 ); //900 px wide 500px high - no crop
    
  2. Once this is set you will need to regenerate your thumbnails. There are number of great plug-ins that can help you with that task. After you add the new image size all future imports will be sized correctly. Now to use it you can call the WordPress thumbnail:

    the_post_thumbnail('background-image');

Depending on how you saved the image, you may need to use another method to recall the image size but there are a number of ways to do this.