Yep, you would do this through variations.
When creating your product, in the Product Data box:
- Choose “Variable product”
- Go to the Attributes tab and create an attribute called “Type” or whatever you want to call it. In values, enter “Physical | Downloadable” or whatever you want to call them (without the quotation marks) and tick “Used for variatons”, then click “Save attributes”
- Go to the Variations tab, and from the drop-down choose “Create variations from all attributes”; two variations will be created
- In the settings for your downloadable one, tick “Downloadable” and “Virtual”
That should be it!
Awesome, thank you. Seems I was on the right track, but now I understand the process completely. Should the attribute be global? Or should I recreate it for each product that has this option? Seems like it should be global, because for products that don’t have a downloadable option, I would just create those as simple products, correct?
Glad I could help! 🙂
Yeah, if you have several products like this it would be a good idea to use global attributes. Then the ones that don’t have the option would either be set as a simple product, or a variable product with only one variation (the latter might make it a little bit easier if you want to add the option in the future, you’d just add a second variation).
So to followup on this, if I have a physical product at the moment, it would be smarter to create it as a variable product if I plan to later offer it as a downloadable product, as opposed to creating it as a simple product now and then converting it to a variable product later?
If I make it variable now, but I don’t offer the downloadable variation, then what would the customer see on the front end of the store? Obviously I would not want him to be able to select downloadable if it’s not available. I wouldn’t even want him to know that it might be downloadable in the future. Is there a way to hide this from the customer?
You just wouldn’t create the downloadable variation yet, so it would be a variable product with only one variation 🙂
Alternatively if you want to let people know that it will be available as a download in the future, you could set the downloadable variation to out of stock and then use a function to change the out of stock text to “Not yet available” or “Coming soon” or something like that. Standard funtion for that plus discussion of fine-tuning is available here: https://support.woothemes.com/hc/en-us/articles/202845976-How-to-Change-In-Stock-Out-of-Stock-Text
I understand, I’m playing with it now actually, it’s actually pretty intuitive so far. I’m impressed =)