Support » Plugins » Hacks » WooCommerce Variable product shortcode

  • Hello,

    does anyone have an idea how to call variable product form with shortcode?

    More details:

    I have two variable products on the site and when I visit product page, there is an option to choose product variation – scroll down to the bototm of the page content.

    What I need is to create a page that will show all products (like a post list), but that will include this form as well at the end of each post.

    I can create custom page template that will pull products with custom WP Query, but not sure how to add forms that will allow me to order products.

    It would be even better if I could add it as shortcode, and to have one page that will include description of both products with forms included.


    {product 1 description}

    [form_shortcode product=”product_id”]


    {product 2 description}

    [form_shortcode product=”product_id”]

    Any idea? Thanks

Viewing 3 replies - 1 through 3 (of 3 total)
  • I would recommend using the WooCommerce Gravity Forms plugin, it makes this kind of problem sooo much easier to solve than shortcodes because you can just insert a form rather than hack up a custom shortcode. Caveat is it requires purchasing premium plugins, both the Gravity Forms plugin and the extension from WooThemes. Both are GPL so if you don’t need support, you can much find cheaper versions of the same plugins, like the ones on Sozot.

    Hope that helps.

    Hey WordPress Blob,

    that’s exactly what I did, started using GF addon, it’s really great. I have few more issues, but hope I will be able to solve it.

    Sozot looks like great resource for the future, bookmarked 🙂


    Did this end up working for you? When I put [product] shortcode on a page, it shows the product, but not the gravity form. But when I view the actual product page from the catalogue, the form shows up.

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘WooCommerce Variable product shortcode’ is closed to new replies.