You'll probably have to create a custom function and then replace the woocommerce_add_to_cart action with your function. If user is not logged in show the quote form, if they are logged in and have a specific role show the add to cart button
–
AnagioJan 30 '13 at 11:30

Thanks for the comment Anagio. I couldn't think of any out of the box solutions too.
–
user834915Jan 30 '13 at 23:58

1 Answer
1

The Catalog Visibility Options plugin sounds like it would do what you want. It can disable the shopping features for "guests" and allow them for registered/logged in users.

Then if you want to add a Quote form you could use Gravity Forms + WooCommerce Gravity Forms Add-ons. You might be able to use the "conditional logic" options in GF to get it to only display the quote option for non-logged in users (not 100% sure on that part though).

The Product Add-on's extension also gives you the ability to add a checkbox/textbox/radio buttons to a product, however I don't think the view options can be set on that for guest/registered users.