Prevent duplicate purchase link form IDs

These changes fix duplicate purchase link form IDs as discussed on https://wordpress.org/support/topic/duplicate-ids-with-multiple-checkoutbuy-buttons 

The form at the end of the product page will still have an ID but shortcode and widget output will no longer use duplicate IDs. Only when the shortcode [downloads] is used inside a product post, a duplicate ID can still occur.