The main and most critical tip I can give you for puppy teething is to pick up or hide anything he can’t have. Prevention is the key in the vast majority of dog behaviour and training. Baby gates really help in this case, as for a few weeks your puppy should not be leaving your sight, and when you can’t watch him he should be crated.
Puppies (and dogs) tend to find most enjoyment with toys if someone else is playing with them as well, so just leaving toys around isn’t likely to encourage the puppy to play with these when he’s bored instead of going after tasty ankles or shoes.
If he bites hands or legs, don’t say a word to him or react in any way. (many websites will suggest yelping or squealing, but I find this just riled them up more)
Simply get up, walk into another room that he can’t get to (baby gates are a must IMO) and ignore him for about 10-15 seconds. Step back over the gate and if he goes for your pants again, pull your leg back (slowly, considerate of puppy teeth) and ignore for another 10-15 seconds.
If when you re-enter the room and he DOESN’T go for your pants, reward him by initiating play with a toy of his. Biting humans always ends a play session immediately.
While the phrase “a tired puppy is a good puppy” does hold some truth, it can also be said that a TOO-tired puppy can be a bad puppy... so get used to noticing when yours is getting tired and cranky and enforce nap times. Cranky puppies bite and nip more and don’t know how to settle themselves down.
If you do find that he’s stolen a coveted Human Item, grab one of his toys and make a really huge deal out of it, like it’s way way way more valuable and fun than what he has. When he isn’t looking, take back the Human Item and hide it where he can’t get to it in the future.
if you need any more help, let me know!!