Hey Chris,
That’s an excellent question. The is a file inside the includes folder in the theme called images.php that creates some additional image sizes for WordPress to create when new images are uploaded. These are the two sizes that the theme creates and uses for the staff images:
add_image_size('staff-full', 400, 300, true);
add_image_size('staff-thumbnail', 300, 225, true);
The staff-full is used on an individual staff member’s page and the thumbnail is set to be used on the listing.
The add_image_size function in WordPress can be frustrating. Several years ago we all used a script called timthumb to resize images, but it ended up having a really nasty security flaw that led to thousands of sites being hacked. One thing it did do really well was let you resize images to an exact size. If the image was smaller, it would scale it up. If it was larger, it would scale it down and then crop it.
The built-in function is similar. If an image is larger than the set size, it will scale it down until it hits one of the dimensions in size. Then it crops the other one dimension. You can also set it to scale down until both dimensions are within the set size if you’d rather.
But it will not scale up and that can lead to some unexpected and head scratching results. If an image is equal to one of the dimensions and smaller than the other, then nothing happens at all. The image is used as is.
With the current system, you’ll always get your best results by sizing all the images to the same dimensions before uploading. That gives the best consistency.
You’re welcome to change the default image sizes. Just change the numbers in the snippet above. If you’d rather not crop the images at all, then change the true in each one to false. The changes will only affect images uploaded after that, so you’ll need to run the regenerate thumbnails plugin to change any existing ones.
Hope that helps out,
Bill