refactor collection elements (include product and review)