Pick your shampoo for your scalp, not your hair type. Look for formulas that are meant for fine/limp hair, or specifically for oily hair. These shampoos have detergents that effectively remove excess oil.
Before washing your hair, apply conditioner to the ends to protect them from the harsh detergents in the shampoo. Don't worry about not being able to clean the ends; the shampoo runs off your hair as you rinse, and the lather cleanses the ends.
Apply shampoo to the scalp only, using your hands to make sure the product is spread evenly.
Select a conditioner for your hair type. Get an extra-moisturizing conditioner, but apply it only where you need it: from midlength to the ends. Avoid getting conditioner on or near your scalp.
Keep any greasy styling products, like hair dressing creams or pomades, on the ends, away from the roots.
To extend your wash for a day, apply witch hazel with a cotton ball to your scalp. Other options to absorb excess oil: Dry shampoo, essentially powder in a spray bottle, allows you to spray the roots with powder that absorbs oil; natural-bristle brushes distribute excess oil further down the hair shaft.