Every time you take him outside (make sure he's on a lead the whole time) to goto the toilet after bedtime, start giving him a command such as 'wee wee's' or 'hurry up', once he goes, praise him and then put him straight back to bed. No playtime. No nothing. He will learn that you mean business and he will get the idea. During daytime, same applies for when he's crying at the door (except dont put him back to sleep). He will learn that crying at the door only gives him an opportunity to eliminate.
At first when I started this routine - after my puppy was taken outside and eliminated during the night, she'd come inside and act like "AWESOME!! LETS PLAY DAD!!" but I'd quickly just lock her in her crate. She'd whine, cry, bark. But she got used to it, and now she knows the drill. I also like to give my puppy a treat every time they are put back to bed after eliminating during the night. I found this has helped. Now, once I take her inside she'll bolt to her crate in anticipation for the treat.
If he's staying in his crate with the door open then I guess thats ok, but if he's not then I strongly suggest you lock the door. You really want him confined in the crate during these critical training times so he doesn't have an opportunity to get up when he wants and to eliminate outside of it. He needs to fit into YOUR schedule. If you never have plans to lock the door it kind of defeats the purpose of having a crate in the first place.
He WILL eventually get used to it. I found that covering the crate with a blanket helps. And please, IGNORE the whining. This is very hard to do. But please remember, if he cries and barks for 4 hours and you eventually give up and let him out, he'll quickly learn that 4 hours of barking has reached his goal and you have essentially had a massive setback with the training. You'll go through several sleepless nights... or weeks. I did.
We went through this same stage with my puppy. It's very hard at times. But if you're consistent, you WILL get through it, trust me.