The following code can be used to automatically change a product label when a form is submitted.
In this example we have a book prize form –
- field id 5 is the title of the book as provided by the form user
- the ‘product’ is the prize and cost for entering the book prize
The form user will see they are registering for the book prize – but in the confirmation, payment gateway and invoice they will see the product along with the title of the book. For example “Prize nomination – My Awesome Book”
If you’re not sure where to place this code I highly recommend you read How to create a WordPress plugin for your custom functions.
Note: the form id and field id will need to be changed to match your form.
If you need this to apply to existing entries see: How to clear product info table cache
add_filter( 'gform_product_info', 'custom_product_info', 10, 3 ); function custom_product_info( $product_info, $form, $entry ) { $book_title = rgar( $entry, 5 ); if ( 43 == $form['id'] && ! empty( $book_title ) ) { foreach ( $product_info['products'] as $key => &$product ) { $field = GFFormsModel::get_field( $form, $key ); if ( is_object( $field ) ) { $product['name'] .= ' - ' . $book_title; } } } return $product_info; }
For more information on using the gform_product_info filter see: https://www.gravityhelp.com/documentation/article/gform_product_info/