Any of the enzyme cleaners you get at the pet store will do the job. I prefer Simple Solution or Simple Green over Nature's Miracle which didn't quite get rid of the smell for me.
If it's all on the hardwood, spray the cleaner liberally all over, especially the crevices. Let it sit for 20-30 minutes and then mop it up.
If there's any on carpet, pour the cleaner over the stain so the cleaner penetrates the padding. Then let it sit for 30 minutes and soak it up with a towel. Any stains that remain on the carpet after using the enzyme cleaner can be faded or eliminated with Spot Shot which is an aerosol rug cleaner.