Our car makes rattling noises when acceleration. on 2006 Mercury Milan

The check engine light just came on 2 days after this started.

Asked by for the 2006 Mercury Milan
Get the code read for free at autozone and post the results on here so we can assist. Could be low oil pressure but post results of read.
Autozone said it could be Cam timing incorrect or slenoid stuck open. We usually do all of our car work ourselves but would the cam timing be something that we would need to take somewhere?