L'affichage de la langue des liens via un drapeau n'est pas génial à mon avis. Je crois que représenter un langue par un drapeau est un anti pattern (voir : Why flags do not represent language).
D'un point de vu technique wrapper la lien dans un liste pour en modifier le style ne me semble pas une très bonne idée. Utiliser le pseudo-élément ::before
me paraît tout indiquer à cet usage (sans nécessiter de complexifier le DOM pour autant).