Liverpool’s club statement read as follows:
“The 25-year-old has signed a long-term contract with the Reds after passing a medical and finalising personal terms.
Diaz will arrive on Merseyside once he has completed international duty with Colombia, who face Argentina in a World Cup qualifier in Cordoba on Tuesday evening.
He joins Liverpool after two-and-a-half seasons with FC Porto, where he made 125 appearances and scored 41 goals, and will wear the No.23 shirt.
To date, Diaz has 31 caps for Colombia, with seven goals for his country.”