Woocommerce Item fields *informational*


This Discussion is public


For those creating products with WooCommerce I thought I'd give a brief tutorial on the various available fields and mapping them.
Here's a list of available fields and their descriptions, some I'm not sure what they do, perhapse someone else can chime in.

To use these simply create the fields in the form. Then go to settings, Create Post, Post type=product. Select name field in dropdown, select content field (such as product description paragraph field). Add categories to the category field. Then under "Custom Fields, add values.
i.e. create field (can be radio or whatever, I use hidden fields for a lot with default yes, no, etc.
Field Title: "Is Product Visible"
Then go to Settings > Create Post > Custom Fields > Add
Field name:  _visibility -to field- Is Product Visible

Here's what I have for parameters

comment_status (value= open, closed) > Same as a post (refers to the checkbox for "Enable reviews"
ping_status (value= open, closed) > Same as a post
product_cat > Category for product
product_tag (product tag area) > Same as a post
product_type (values= simple, grouped, external, variable)
_visibility (values= visible, search, hidden) > whether to display the product "Publish"
_stock_status (values= instock, outofstock) > current availability
total_sales (value= numeric) > used for tracking sales, default start is 0
_downloadable (values= yes, no) > whether the product is digital/downloadable
_virtual (values= yes, no) > whether the product is physical or digital/virtual
_product_image_gallery > haven't used
_price (value= numeric input) > If you're using values like $2.50 you'll want to edit this field in the form and set step to 0.01
_sale_price_dates_from > Haven't used, but used for a sale price period
_sale_price_dates_to > co-dependant with above
_regular_price (value= numeric input) > used if there is also a sale price
_sale_price (value= numeric value) > see above, dependant upon each other
_tax_status > haven't used
_tax_class > haven't used
_purchase_note (value= text input field) > used to add these contents to the buyer purchase email
_featured (values= yes, no) > whether this is a featured product
_weight > haven't used
_length > haven't used
_width > haven't used
_height > haven't used
_sku (value= alphanumeric input field) generally these are all numeric
_product_attributes > haven't used, but with no attributes the default value is a:0:{}
_sold_individually (values= yes, no) > Whether to allow multiple purchases at one time
_stock (value= numeric input) > how many on hand/available
_backorders (values= yes, no, notify) (notify means allow backorders but notify buyerthat the item is out of stock)
_manage_stock (values= yes, no) > whather to allow backend stock management
_woocommerce_exclude_image > Haven't used
_wp_attachment_backup_sizes > Haven't used
_wp_types_group_filters_association > Haven't used
_wp_types_group_terms > Haven't used
_wp_attached_file > Haven't used
_wp_types_group_fields > Haven't used
_wp_types_group_templates > Haven't used
_wp_types_group_post_types > Haven't used
_menu_item_menu_item_parent > Haven't used
_menu_item_target > Haven't used
_menu_item_xfn > Haven't used
_menu_item_object > Haven't used
_menu_item_type > Haven't used
_menu_item_classes > Haven't used
_menu_item_object_id > Haven't used
_menu_item_url > Haven't used
_wpcf_conditional_display > Haven't used
_wp_old_slug > Haven't used

Hope that helps out ūüôā


Thanks for sharing this. We will be sure to link others to this page when trying to set up WooCommerce products via a Formidable form.

Definitely. My pleasure. I also have the parameters for many others as I do a lot of back end intigration. Is there a User/Member Tips and tricks section? That would be a great place for a lot of solutions to be posted after trial and error. Such as my recent experience with 3k+ categories timing out.

There isn't currently a tips/tricks category. I'll run it past the team and see what they think about it.

Alright, you talked us into it. I have created a new "user tips and tricks" category.

Awesome :)

I love this product. My intentions for purchasing it began with a simple but effective front end post form. Since then, looking at the framework and abilities I've begin to replace every "generic" aspect of my various plug-ins functionality with themed and user friendly forms created with Formidable. Since I'm using so much integration, I'd love to share what does and doesn't work as I move along. I'm sure others will enjoy the option as well :)

Who knows, a simple browsing through what others have done could minimize the support team requests :)

Scrolling through multiple support threads and knowledgebases can be tedious at times since so many issues are unique to a users requirements. I feel having a "solutions" area could narrow that down.

Thank you much, and thank you for an awesome product with a stellar support staff.

Great stuff queberican351 ,

I had also tried to add these custom fields using a plugin to find custom fields. But I was unable to relate digital download upload field with Formidable Pro File upload field.

Is there any trick?

I'll look into the custom field value for that and let you know in a bit :)

_product_url - address to file (for affiliate and outside products hosted elsewhere)

_button_text - This can be whatever you want it to say (used for outside and affiliate as above)

To answer your question

_file_paths - this is the path to the hosted digital download

_download_limit - Allows you to set a limit to how many times this download will be available after purchase

_download_expiry - integer in days of how long the download link will be valid (1 =1 day, 30 = 30 days)

Also useful fields are -
_purchase_notes - for including a message after purchase such as archive password for zip and rar, ect.
_downloadable - yes for digital hosted product
product_tag - you can add a tags field and map it to this to create specific product tags
product_cat - see above

This is a great area where static "hidden" fields are handy. You can create a hidden field. Set the value as "yes" (without quotations) and then map it to _downloadable.
Then every product is already attributed to being a downloadable product.


Hope that helps :)


I would like to thank you all for this post. I am creating a front-end form for Woocommerce and this post is very informative and useful.

I have one question. How do we use _price parameter? I don't see any field with this parameter in Woocommer backend add product page.

It seems that this field uses values in both _regular_price and _sale_price in Woocommerce. If there is _sale_price is null, _price is the same as _regular_price. If there is a value for _sale_price, then _price field is displayed as _regualr_price + _sale_price (displayed in different styles in backend, single product page, and widget).

Right now, I have regular and sale price fields in my form. If I enter values in both, only the regular price is displayed, although both values are in the product entry (checked in backend product entry and Formidable form entries). It looks like _price field is not updated when values are sent from a Formidable form. When I open the entry from backend and update it manually (without modifying values at all),  _price filed is updated and both regular and sale prices are properly displayed.

Thank you.

very nice. Thanks a lot

Hi Guys,

I think that I am struggling with the exact issue as "azboytk" above and was wondering if there is a solution to this.

I have a frontend form where I need to input both Regular and Sale Price and I need both prices to be properly
diplayed in the product detail page output.

When I fill up the Regular Price and assign it a _regular_price parameter and the create a Sale Price field and assign
it a _sale_price parameter, both of these prices will output into my admin, into the correct fields.

However they do not output on the product detail page.

Only after I click on the "Update" button in the admin ( without doing any changes to the output at all ), both prices
will display correctly on the product detail page now.

So I added a hidden field, calculated default value of the Regular Price field and the assigned _price parameter to
this hidden filed.

After clicking the submit button, I have achieved the regular price being properly displayed on the product detail page now.

So this means that I need to create another hidden field, calculate the default values for the Sale Price filed and assign the field another _price parameter.

By doing this, I'd probably achieve displaying both regular and sale price on the output.

However I can have 2 instances og the _price matakeys in Settings > Create Post > Custom Fields.

I was wondering if anybody managed to find a solution to this issue ??

Many Thanks ..

I have a similar problem: the form is submitted but the product is not visible on the shop until I press update in the product edit page. Please see here: http://test.bestnatura.ro/adauga-produs/

I have tried to change the field type, but did not worked.


Initial state:
Woocommerce installed Version 2.1.7 on Wordpress 3.8.2, FormidablePro 1.07.07


_manage_stock (values= yes, no) > whather to allow backend stock management
_stock (value= numeric input) > how many on hand/available
_sku (value= alphanumeric input field) generally these are all numeric
_stock_status (values= instock, outofstock) > current availability


_regular_price (value= numeric input) > used if there is also a sale price
_sale_price (value= numeric value) > see above, dependant upon each other


Also I have noticed that the price is not populated in product preview until I make manually the update

That means you are missing some of the parameters above, but I'm not sure which fields they require. _visibility might help, but you may need to try others as well.


this doesn't work due to the Woocommerce and Formidable incompatibility.. We have bee through this, remember ??

Yes, you're right. The price custom fields don't connect to the post as well as the other fields. You can use _price to pass just one price to the Woocommerce product which will show up as soon as the post is created, instead of after the post is edited. I realize this is limited, but it is something that would be incorporated into the Formidable/Woocommerce add-on.

I'd love to be able to use a Formidable form to create a list of cost-centres  which could be placed at the checkout page. The entries would include basic contact details, email and unique cost-centre ID.
Use case :
Create  cost-centre entries & fill in contact details incl email and unique cost-centre ID.

Customer makes choices and adds to cart
Once all products added to cart, proceeds to checkout
At checkout, fills in the usual customer information, plus makes a choice of cost-centre from the entries made in the form above.
When the order is processed, order email is sent to the value set  in the cost-centre.


I wonder if anyone knows a solution for this. (And yes, Jamie/StephI understand that this isn't part of the core functionality of Formidable Pro so you can't officially answer my question. However, perhaps some user knows the answer)


I too am needing a form to create WC products, and it looks like it's easier to do this with Formidable than Gravity. But I have one question that I don't think I've seen addressed (unless I missed it, in which case, please refer me to it):

Can I use a Formidable field to upload an mp3 to the wp media library and then make its url be the link for a downloadable product?

Also, is it possible for me to add some standard text to the end of all short product descriptions entered in the form?

So no matter what is entered for short product description on the front end, I need something extra to be on every product uploaded, and it must include the URL referenced in my previous question. So this extra text would be the same for all products, except for the URL referenced. Specifically, it will be an audio player shortcode, so the url for the media file would be unique to each product.

I hope I'm not sounding too confusing. Is this possible with Formidable?

When you upload a file in a "File Upload" field and then map that field to a Woocommerce product field, the attachment ID of the file is passed to the Woocommerce field (or any custom field). That's as far as the built-in features will get you with this specific part. You would need custom code to get that attachment ID and display the URL for it on the product page.

It would also require a little added code to add default text to the end of all short product descriptions, but we have related examples in our docs.

If you have more questions about this, could you create a new topic so the other users don't have to get spammed? Also, for you and anyone else who has not voted already, please vote for the Formidable-Woocommerce add-on here:
Simply click the "Vote" button on that page.

Thanks. I'll post a new topic once I install FF and start creating the downloadable products with it. I'm sure I'll have questions after actually doing it.

Reply to this Discussion