Thanks for the reply Mike.
Honestly? I’m not a coder, so I have just been cutting and pasting different things from various other forum posts trying to get it to work!
echo apply_filters( 'woocommerce_single_product_image_html', sprintf( '<a rel="nofollow" href="%s" itemprop="image" class="woocommerce-main-image zoom" title="%s" data-rel="prettyPhoto' . $gallery . '">%s</a>', $image_link, $image_caption, $image ), $post->ID );
I’ve tried changing that part of /wp-content/plugins/woocommerce/templates/single-product/product-image.php to make the href for the image be the external/affiliate link.
I made a post on github anyway, not sure if it will help or not.
https://gist.github.com/anonymous/34ee8d5db8895b026d52
Thanks again!