I may have the weirdest answer but stop using shampoo all together. You will have a slightly oily hair for 2 weeks but then it all evens out. It is basically a cycle.......you wash your hair which removes all the natural oil your body produces so it needs to produce more. Once you stop removing it, your body will stop making so much.
Google "no poo" hair washing. I started this method 5 years ago. Honestly I use nothing but water since then. Your hair will not smell bad.....that is a complete myth. Trust me, I play hockey in the winter and baseball in the summer. I sweat like a pig when training and doing cardio. I do not smell at all. I have even had family members and hairdressers comment how soft my hair is.