Create Short code dynamically

I cannot comment, I would if I could, but I can’t, please don’t down-vote

Could you not just use 1 shortcode with a parameter, e.g. instead of create one for each gallery image-gallery-1,image-gallery-2 etc, you could just use the ID as a parameter: image-gallery 1, image-gallery 2

Then in your handling function you can simply test the parameter to see which gallery it is, I think this method is also slightly better for performance too as you don’t need to call add_shortcode as many times, and all you are doing is removing one hyphen 🙂