Issue with wordpress thumnails – same thumnail displayed everywhere

I’m guessing the problem is this: $recent_posts[0]['ID']; and I don’t see $recent_posts being defined in your code, so what exactly is that $recent_posts and where/how did you define it?:

$image = wp_get_attachment_image_src( get_post_thumbnail_id($recent_posts[0]['ID']), 'full' );

And you’re inside The Loop, so you could just call get_post_thumbnail_id() without having to specify the post ID — or use get_the_ID() to get the current post’s ID:

$image = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full' ); // use this or below
//$image = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ), 'full' );

And I think the $thumbnailImg=$image[0]?$image[0]:catch_that_image($recent_posts[0]); should also be:

$thumbnailImg=$image[0]?$image[0]:catch_that_image( get_the_ID() );