WooCommerce Product Catalog and/or Inquiry is a multi-purpose plugin to let you set all or selected products in catalog mode by revoking cart and optionally hiding product price. It also lets you receive inquiry for any product regardless of its catalog mode status by adding an inquiry cart to your store and showing inquiry button for the product. What you call this inquiry (order, request a quote, info query) and which form (Contact Form 7, Gravity Forms, etc.) you use to receive this inquiry is up to you. You can receive inquiry cart’s content in the email sent to you by the inquiry form. You can also customize product price text and inquiry button label.
- For all or selected products
- Enable catalog mode
- Receive inquiry from registered or guest user
- Hide product price and/or customize price text
- Revoke cart (deny add-to-cart request and hide add-to-cart button)
- Show inquiry button and customize button label
- Global and Product level settings
- Override global settings at product level or just configure at product level
- Inquiry Cart Page
- Use auto-created inquiry cart page or create a new one
- Add inquiry cart to a page using shortcode – [mwqc_cart]
- Customize inquiry cart by hiding table columns, total section or its rows and/or update button using shortcode’s attributes
- Customze inquiry cart by overriding its template file in your theme just like any other WooCommerce template
- Add inquiry form to inquiry cart page using shortcode
- Customize inquiry cart name (e.g reservation cart) for front-end
- Customize inquiry cart page title and slug
- Show cross-sells of the inquiry cart’s products on the inquiry cart page
- Inquiry Form
- Use any shortcode-rendered form (Contact Form 7, Gravity Forms, etc.) as inquiry form (See Details Below)
- Add inquiry cart’s contents in the email template of the inquiry form using shortcode – [mwqc_cart_4_email]
- Clear inquiry cart on inquiry form submission using [mwqc_clear_cart] shortcode in the form’s confirmation
- Hide inquiry form for empty inquiry cart by wrapping it in [mwqc_if_non_empty_cart] shortcode
- Inquiry Button Behavior
- If simple product is added to shopping cart via AJAX on shop page, it will also be added to inquiry cart via AJAX on shop page
- if user is redirected to shopping cart after add-to-cart, they will also be redirected to inquiry cart after add-to-inquiry
- Allows shopping cart and checkout with orginal price for non-catalog-mode product
- Prevents the inferring of the price of a hidden-priced-product by hiding the prices in the inquiry cart’s total section
Plugin let you configure itself at multiple levels. Each level covers a particular set of products. A lower level covers a subset of the products being covered by the level on top of it. These levels are:
- Prodouct Category
Please note: only Global and Product levels are available as of now.
This level based settings make it possible to configure a set of products at a certain level and then override this configuration for a subset of this set at a lower level. For example, you can hide price of all products at global level and show price of selected products by configuring them at product level.
Add inquiry form to inquiry cart page
- Create form with any form plugin (Contact Form 7, Gravity Forms, etc.)
- See form plugin’s documentation to know the shortcode to render the form.
- Edit inquiry cart page in back-end.
- Add the form shortcode while wrapping it in [mwqc_if_non_empty_cart] shortcode.
- Example: mwqc_if_non_empty_cart[/mwqc_if_non_empty_cart]
- Explanation: [contact-form-7 id=”58”] shortcode renders the inquiry form. [mwqc_if_non_empty_cart] shortcode hides the inquiry form for empty inquiry cart.
- Wrapping form shortcode is optional. If not wrapped, your inquiry form will remain visible on inquiry cart page when inquiry cart is empty.
- Save the inquiry cart page.
Receive inquiry cart’s contents in the email sent to you by the inquiry form on form submission
- Open inquiry form.
- Add [mwqc_cart_4_email] shortcode in its email template.
- Save the form.
Clear inquiry cart on inquiry form submission
- Open inquiry form.
- Add [mwqc_clear_cart] shortcode in its confirmation template.
- Save the form.
Replace auto-created inquiry cart page
- Add [mwqc_cart] shortcode to new page.
- Go to global settings as described above in “Configure all products” section and select this new page in “Inquiry Cart Page” dropdown.
- Save changes.
Give a custom name to inquiry cart
- Go to global settings as described above in “Configure all products” section and input new name (e.g reservation cart) in “Inquiry Cart Name” field.
- Save changes.
Any shortcode-rendered form can be used as inquiry form given that it sends email to you on form submission (all popular WordPress Form plugins send email on form submission).
If you want to receive inquiry cart’s content in this email, you will need to add [mwqc_cart_4_email] shortcode in its email template. To add this shortcode, the inquiry form should support customization of email template and interpretation of shortcode available in the email template. If any Form plugin doesn’t directly let you customize email template or interpret shortcode, I shall make it work for my plugin. Please let me know!
Contact Form 7 does not interpret shortcode added to its email and confirmation templates. It has its own mail-tags which look like shortcode. My plugin has necessary code to get my [mwqc_cart_4_email] and [mwqc_clear_cart] shortcodes interpreted by Contact Form 7.
Q. How to hide inquiry form when inquiry cart is empty?
A. Enclose your form’s shortcode in my [mwqc_if_non_empty_cart] shortcode.
Example: [mwqc_if_non_empty_cart][contact-form-7 id=”58”][/mwqc_if_non_empty_cart]
Q. How do you prevent inference of hidden-priced product’s price from the inquiry cart totals?
A. By replacing prices in the totals section with the price (replacement) text set in backend for that hidden-priced product.
Q. If inquiry cart has multiple hidden-priced products, which product’s price text is used in the inquiry cart totals?
A. The text of the first hidden-priced product that was added to the inquiry cart.
Q. Can customer add a hidden-priced product to shopping cart?
A. Yes. If you don’t want to allow it, enable “Revoke Cart” for that product.
Q. Will the price of a hidden-priced product hidden or visible during checkout?
A. It will be visible. Plugin doesn’t disturb shopping cart and checkout form in any way. Once a product is added to cart, it can be checked out.
Q. Is output of [mwqc_cart_4_email] shortcode plain text or HTML?
A. It is HTML. If inquiry form is made in Contact Form 7, you will need to check the “Use HTML content type” checkbox on the mail tab on the form edit screen in backend. Gravity Forms by default sends HTML email.
Q. Are product prices hidden/visible in the output of [mwqc_cart_4_email] shortcode?
A. This output is a trimmed version of the inquiry cart. If a product price is hidden in the inquiry cart, it will also be hidden in the output of this shortcode. Please note, currently inquiry cart’s total and tax are not available in this output.
2022-03-25 - Version 1.2.2 - reloaded inquiry cart page when product is added to cart via ajax from inquiry cart page (e.g. cross-sells).
2022-03-20 - Version 1.2.1 - Fixed compatibility of [mwqc_cart_4_email] shortcode with WooCommerce 6.3 or later. - [Release Notes 1.2.1](https://github.com/wpxqw/mwqc/blob/master/docs/release-notes-1.2.1.md)
2021-11-07 - Version 1.2.0 - Added [mwqc_clear_cart] shortcode. This shortcode can be placed in the confirmation message of the inquiry form to clear the inquiry cart on form submission. - Added global setting to customize the name for inquiry cart - e.g reservation cart, inquiry basket. - Showed cross-sells of the inquiry cart's products on the inquiry cart page.
2021-07-03 - Version 1.0.1 - Made localization ready. - Added WPML Compatibility. - Made layout of the inquiry cart configurable by giving the option to hide UI elements (e.g price column, total section) using attributes in [mwqc_cart] shortcode.
2021-06-22 - Version 1.0.0 Initial ReleaseSource