Hey there, @drain0! Thanks for contacting us. I’m happy to help you.
Marking the product as virtual will automatically disable shipping options, but it won’t provide the option to set up the product as you mentioned.
On the core WooCommerce plugin you would be able to set the product as downloadable and automatically send a download link to the user if they purchase it.
But to have it on your website and only grant access if the customer purchases the product, you will need to use another plugin.
I’d suggest looking at either of these 2 extensions:
These extensions allow you to restrict content on a per-product basis and grant access to members who purchase those products.
WooCommerce.com offers a 30-day refund policy which you can take advantage of, allowing you to test the extension(s), and make sure that it is what you are looking for.
Should you have any pre-sales related questions, kindly contact us directly, here. You will need to create an account if you do not have one already.
Hope this helps!
Have a wonderful day!