What is the best way to train DROP IT? We're working on this command with our newly adopted shelter dog, and it's hit or miss. I've been offering a more enticing item, so he'll drop what's in his mouth for the new toy, but if he really likes what he has (such as socks, his great love) he won't always go for the trade. Then what?
Also, we have 4 young kids, so the advice to not leave things on the floor, while good advice, just isn't going to fly. They're young and they forget.
Start with boring items and trade for treats. As soon as he opens his mouth, click, treat, give BACK the boring toy. Once he drops it as soon as you put your hand near his mouth, say drop it, click, treat, toy.
Then you move to better toys and socks.
Train the kids and yourself too.

Before letting the dog out of his crate and into that room, check for socks, shoes, shirts, etc.
If he has a sock, just leave the room to find another sock and his toy. Offer the exchange with the new sock and quickly swap it out for the toy, and hide the socks. Use treats if needed.