From 6 months, my 2.5 year old was an amazing sleeper. Put him in his cot and he'd roll over and sleep 7 - 7. Absolutely nothing we did, blind luck.
6 months ago he figured out how to climb out of his cot so we had to take the side off. So then we had to lay on the floor holding his hand and wait for him to sleep. It could be for up to an hour (I also have a 4 year old I need to put to bed as well), if you tried to leave he would scream and scream. Eventually we had to put a stairgate on his door and leave him to cry as my eldest was getting upset I couldn't spend time with her at bedtime. It took 20 min and he went to bed. From that night on he's been fine and gone to sleep straight away no problem.
But he has now figured out he can climb over the stairgate so that's had to go. So not only are we back lying in a dark room for an hour putting him to sleep (if we leave he screams and follows us), he is also getting up at night and will only settle back to sleep in our bed or if I sleep on his floor. I'm also the only one who can comfort him at night, he doesn't let my husband near him!
So I would be eternally grateful for any tips....I'm exhausted!