Pull the seats and shampoo the carpet with deodorizer and change the cabin air filter with a new carbon one. That will last for a few months.... maybe. Now that it's Summer the heat makes it come back.
On a whim I picked up a can of Zep Smoke Odor Eliminator at Home Depot to try out. This stuff works much better than the Meguires bomb believe it or not. This is some super heavy duty, kill the stank in a Las Vegas hotel room odor remover. I sprayed it directly on the carpet. Only 5.00 for a big can too.