This tutorial will cover the 3 basic types of doors- doors that open in a simple linear direction, ones that open when you press a button, and doors that open around a hinge.
Doors are created with the func_door entity as you'd expect. You can specify the direction in which the door opens with the move direction property, the sounds it makes with start sound and stop sound (note that when you browse for a sound, door sounds will appear under the "raw" sound type), the speed at which it opens and the lip (which defines the amount of overlap between the open and closed positions, in Hammer units).
To make a door that opens when you walk up to it, or use it, simply tick the "use opens" or "touch opens" flags.
To create a door that opens when a button is pressed, give it a name. Now create what you want to a button, and turn it into a func_button entity. In Hammer, you specify what the button triggers (and how) via the "outputs" tab at the top of the entity screen (see image below). Add a new output, selected "OnPressed" from the "My output named" field, then tell it to target your door with "Open" as the "Via this input" value. Also click the "Don't move" flag, and fill in any sound etc. fields you want:
See the outputs tutorial (when it appears) for more on using buttons and outputs.
To create a door that opens around hinges, you will need the func_door_rotating entity. There are two ways to do this- either you need to bind both the door itself and a solid where the hinges around, covered with the tools/toolsorigin texture, to this entity, OR simply specify the co-ordinates of the origin in the origin property (Hammer should draw a little circle on the 2D views of where you have specified). Your door will need tweaking so it works correctly; suffice to say that you will need to set the distance property, and click the "touch opens" flag. If you want it to open in one direction, like most doors do, use the "one-way" flag; you may need to use the "reverse direction" flag too if it is opening in the wrong direction.

Doors are created with the func_door entity as you'd expect. You can specify the direction in which the door opens with the move direction property, the sounds it makes with start sound and stop sound (note that when you browse for a sound, door sounds will appear under the "raw" sound type), the speed at which it opens and the lip (which defines the amount of overlap between the open and closed positions, in Hammer units).
To make a door that opens when you walk up to it, or use it, simply tick the "use opens" or "touch opens" flags.
To create a door that opens when a button is pressed, give it a name. Now create what you want to a button, and turn it into a func_button entity. In Hammer, you specify what the button triggers (and how) via the "outputs" tab at the top of the entity screen (see image below). Add a new output, selected "OnPressed" from the "My output named" field, then tell it to target your door with "Open" as the "Via this input" value. Also click the "Don't move" flag, and fill in any sound etc. fields you want:

See the outputs tutorial (when it appears) for more on using buttons and outputs.
To create a door that opens around hinges, you will need the func_door_rotating entity. There are two ways to do this- either you need to bind both the door itself and a solid where the hinges around, covered with the tools/toolsorigin texture, to this entity, OR simply specify the co-ordinates of the origin in the origin property (Hammer should draw a little circle on the 2D views of where you have specified). Your door will need tweaking so it works correctly; suffice to say that you will need to set the distance property, and click the "touch opens" flag. If you want it to open in one direction, like most doors do, use the "one-way" flag; you may need to use the "reverse direction" flag too if it is opening in the wrong direction.
