Variable number of buttons depending on the number of links defined in an external list

Use a dynamic components extension, e.g. CompCreator

or if you know the maximum number of buttons that might be required, set them all up and handle their visibility as required (this is an extension-less but cumbersome approach

or use a listview or listpicker to display all the links.