I'm currently trying to make a simple 2D based game in Unity. I can get my character to move left and right pretty easy, but however I cannot get him to interact with any Ladders. I've been able to set it up so the Character Controller is able to interact with the collider I set for the ladder so it prints it out (currently it's set as a trigger), however I cannot get the character to climb the ladder. Any suggestions on how to get this working?
It really depends on how your game is structured. The quickest way that pops into my head is to add 2 properties to your player script, an isOnLadder and an isClimbing property. When the player enters one of your ladder triggers it sets the isOnLadder flag to true and when he leaves the ladder it sets it to false. This way you can easily know from inside your player script when you can climb.
Then inside your player script when you press the "up" arrow you would check to see if the isOnLadder flag is true, if it is true then you would proceed with your climbing routine which would include setting the isClimbing flag to true and moving the character object up. You would obviously want to lock the players movement left/right until the isClimbing has finished. For the actual climbing you could either just disable any gravity acting on your character and move his position, or you could get tricky and use some joints and the physics system to pin him on a track.
This is obviously just a real brief overview of a possible way to accomplish what you are asking but I hope it helps get you off in the right direction.
Trying to disable gravity is a good choice, you can try to enabling isKinematics while you are using ladder, then when your player is up, disable it again to gain the physics...