Try wearing Leather shoes--that will cure the problem. The shock is caused by
a build up of Static electricity,this cannot escape if you have rubber footwear
so when you touch Earth you get a shock.
i was always of the opinion it was as you exited the vehicle, the type of clothes you wear caused static as you slid off the car seat...then when you touched the door or handle it discharged...
I find the best way to avoid this is to touch and keep contact with part of the car whilst you're getting out e.g. open the door and hold the lip between the door cut out and the car's roof. That way any static that would build up as you're getting out is discharged for the duration that you're in contact with the vehicle instead of as a 'shock' when you touch or nearly touch the vehicle again.
You may find that the charge is built up within the vehicle during general use.It cant discharge because the vehicle is insulated from earth because of the tyres.When you exit..especially if you wear conductive soles..it will discharge through you....about 25,000v.
Try as suggested.. a discharge strap or chain.