投稿画像をループで取得していますが、それぞれが新しい幅と高さで表示されます。img タグで幅と高さを定義する方法に問題があります。
<?php
$image = wp_get_attachment_image_src(get_post_thumbnail_id(get_the_ID() ),
'single-post-thumbnail');
?>
<img src="<?= $image[0]; ?>" alt="" width="" height="" />
配列 getimagesize (文字列 $filename [, 配列 &$imageinfo ] )
http://php.net/manual/en/function.getimagesize.phpから
また、http://codex.wordpress.org/Function_Reference/wp_get_attachment_image_srcから
<?php
$attachment_id = 8; // attachment ID
$image_attributes = wp_get_attachment_image_src( $attachment_id ); // returns an array
?>
<img src="<?php echo $image_attributes[0]; ?>" width="<?php echo $image_attributes[1]; ?>" height="<?php echo $image_attributes[2]; ?>">