create posts directory if missing