added post_id fallback to finding posts if slug fails
added fresh_when checks to ensure caching is done propperly