: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
$form->update_setting( 'title', esc_html__( 'Bathroom Sink', 'ninja-forms' ) );
$form->update_setting( 'default_label_pos', 'above' );
$form_id = $form->get_id();
'default' => '<div style="background:#DBF0FD; padding: 15px;"><h3>Common Fields</h3><div>These are all the most common generic fields one might use.</div></div>',
'label' => esc_html__( 'Textbox', 'ninja-forms' ),
'label' => esc_html__( 'Textarea', 'ninja-forms' ),
'label' => esc_html__( 'Checkbox', 'ninja-forms' ),
'label' => esc_html__( 'Select List', 'ninja-forms' ),
'label' => esc_html__( 'Option One', 'ninja-forms' ),
'label' => esc_html__( 'Option Two', 'ninja-forms' ),
'label' => esc_html__( 'Option Three', 'ninja-forms' ),
'label' => esc_html__( 'Radio List', 'ninja-forms' ),
'label' => esc_html__( 'Option One', 'ninja-forms' ),
'label' => esc_html__( 'Option Two', 'ninja-forms' ),
'label' => esc_html__( 'Option Three', 'ninja-forms' ),
'type' => 'listcheckbox',
'label' => esc_html__( 'Checkbox List', 'ninja-forms' ),
'label' => esc_html__( 'Option One', 'ninja-forms' ),
'label' => esc_html__( 'Option Two', 'ninja-forms' ),
'label' => esc_html__( 'Option Three', 'ninja-forms' ),
'key' => 'checkbox_list',
'label' => esc_html__( 'Date', 'ninja-forms' ),
'label' => esc_html__( 'Number', 'ninja-forms' ),
'label' => esc_html__( 'Hidden', 'ninja-forms' ),
// 'label_pos' => 'hidden',
'default' => '<div style="background:#DBF0FD; padding: 15px;"><h3>' . esc_html__( 'User Information Fields', 'ninja-forms' ) .
'</h3><div>' . esc_html__( 'These are all the fields in the User Information section.', 'ninja-forms' ) . '</div></div>',
'label' => esc_html__( 'First Name', 'ninja-forms' ),
'label' => esc_html__( 'Last Name', 'ninja-forms' ),
'label' => esc_html__( 'Email', 'ninja-forms' ),
'label' => esc_html__( 'Phone', 'ninja-forms' ),
'label' => esc_html__( 'Address', 'ninja-forms' ),
'label' => esc_html__( 'City', 'ninja-forms' ),
// 'type' => 'liststate',
'label' => esc_html__( 'Zip Code', 'ninja-forms' ),
'default' => '<div style="background:#DBF0FD; padding: 15px;"><h3>' . esc_html__( "Pricing Fields", "ninja-forms" ) .
'</h3><div>' . esc_html__( "These are all the fields in the Pricing section.", "ninja-forms" ) . '</div></div>',
'label' => esc_html__( 'Product (quanitity included)', 'ninja-forms' ),
'product_use_quantity' => 1,
'product_price' => '5.00',
'label' => esc_html__( 'Product (seperate quantity)', 'ninja-forms' ),
'product_use_quantity' => 0,
'product_price' => '5.00',
'label' => esc_html__( 'Quantity', 'ninja-forms' ),
'product_assignment' => '999',
'label' => esc_html__( 'Shipping', 'ninja-forms' ),
'shipping_cost' => '10.00',
'label' => esc_html__( 'Total', 'ninja-forms' ),
'type' => 'creditcardfullname',
'label' => esc_html__( 'Credit Card Full Name', 'ninja-forms' ),
'key' => 'creditcardfullname',
'type' => 'creditcardnumber',
'label' => esc_html__( 'Credit Card Number', 'ninja-forms' ),
'key' => 'creditcardnumber',
'type' => 'creditcardcvc',
'label' => esc_html__( 'Credit Card CVV', 'ninja-forms' ),
'key' => 'creditcardcvc',
'type' => 'creditcardexpiration',
'label' => esc_html__( 'Credit Card Expiration', 'ninja-forms' ),
'key' => 'creditcardexpiration',
'type' => 'creditcardzip',
'label' => esc_html__( 'Credit Card Zip Code', 'ninja-forms' ),
'key' => 'creditcardzip',
'default' => '<div style="background:#DBF0FD; padding: 15px;"><h3>' . esc_html__( "Miscellaneous Fields", "ninja-forms" ) .
'</h3><div>' . esc_html__( "These are various special fields.", "ninja-forms" ) . '</div></div>',
'label' => esc_html__( 'Star Rating', 'ninja-forms' ),
'label' => esc_html__( 'Anti-Spam Question (Answer = answer)', 'ninja-forms' ),
'spam_answer' => esc_textarea( __( 'answer', 'ninja-forms' ) ),
foreach ($fields as $settings) {
$field = Ninja_Forms()->form($form_id)->field()->get();
$settings[ 'order' ] = $order;
$settings[ 'label_pos' ] = 'default';
$field->update_settings($settings)->save();
$submit = Ninja_Forms()->form($form_id)->field()->get();
$submit->update_setting( 'label', esc_html__( 'Submit', 'ninja-forms' ) )
->update_setting( 'type', 'submit' )
->update_setting( 'order', $order)
->update_setting( 'process_label', esc_html__( 'processing', 'ninja-forms' ) )
->update_setting( 'key', 'submit' )
$action = Ninja_Forms()->form( $form_id )->action()->get();
$action->update_setting( 'label', esc_html__( 'Mock Save Action', 'ninja-forms' ) )
->update_setting( 'type', 'save' )
public function form_long_form( $num_fields = 500 )
$form = Ninja_Forms()->form()->get();
$form->update_setting( 'title', esc_html__( 'Long Form - ', 'ninja-forms' ) . $num_fields . esc_html__( ' Fields', 'ninja-forms' ) );
$form->update_setting( 'default_label_pos', 'above' );
$form_id = $form->get_id();
for( $i = 1; $i <= $num_fields; $i++ ) {
$field = Ninja_Forms()->form($form_id)->field()->get();
$field->update_setting( 'type', 'textbox' )
->update_setting( 'label', esc_html__( 'Field #', 'ninja-forms' ) . $i )
->update_setting( 'label_pos', 'above' )
->update_setting( 'required', 0 )
->update_setting( 'order', $i )
->update_setting( 'key', 'field_' . $i )
public function form_email_submission()
$form = Ninja_Forms()->form()->get();
$form->update_setting( 'title', esc_html__( 'Email Subscription Form', 'ninja-forms' ) );
$form->update_setting( 'default_label_pos', 'above' );
$form_id = $form->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'email' )
->update_setting( 'label', esc_html__( 'Email Address', 'ninja-forms' ) )
->update_setting( 'label_pos', 'hidden' )
->update_setting( 'required', 1 )
->update_setting( 'order', 1 )
->update_setting( 'placeholder', esc_html__( 'Enter your email address', 'ninja-forms' ) )
->update_setting( 'wrapper_class', 'three-fourths first' )
->update_setting( 'key', 'email' )
$email_field_id = $field->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'submit' )
->update_setting( 'label', esc_html__( 'Subscribe', 'ninja-forms' ) )
->update_setting( 'order', 5 )
->update_setting( 'wrapper_class', 'one-fourth' )
->update_setting( 'key', 'submit' )
public function form_product_1()
$form = Ninja_Forms()->form()->get();
$form->update_setting( 'title', esc_html__( 'Product Form (with Quantity Field)', 'ninja-forms' ) );
$form->update_setting( 'default_label_pos', 'above' );
$form->update_setting( 'hide_successfully_completed_form', 1 );
$form_id = $form->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'product' )
->update_setting( 'label', esc_html__( 'Product', 'ninja-forms' ))
->update_setting( 'label_pos', 'above' )
->update_setting( 'product_price', 10.10 )
->update_setting( 'product_use_quantity', 0 )
->update_setting( 'order', 1 )
->update_setting( 'key', 'product' )
$product_field_id = $field->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'quantity' )
->update_setting( 'label', esc_html__( 'Quantity', 'ninja-forms' ))
->update_setting( 'label_pos', 'above' )
->update_setting( 'product_assignment', $product_field_id )
->update_setting( 'default', 1 )
->update_setting( 'num_min', 1 )
->update_setting( 'num_max', NULL )
->update_setting( 'num_step', 1 )
->update_setting( 'order', 2 )
->update_setting( 'key', 'quantity' )
$quantity_field_id = $field->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'shipping' )
->update_setting( 'label', esc_html__( 'Shipping', 'ninja-forms' ) )
->update_setting( 'label_pos', 'above' )
->update_setting( 'shipping_cost', 2.00 )
->update_setting( 'order', 4 )
->update_setting( 'key', 'shipping' )
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'total' )
->update_setting( 'label', esc_html__( 'Total', 'ninja-forms' ) )
->update_setting( 'label_pos', 'above' )
->update_setting( 'key', 'total' )
->update_setting( 'order', 5 )
->update_setting( 'key', 'total' )
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'submit' )
->update_setting( 'label', esc_html__( 'Purchase', 'ninja-forms' ) )
->update_setting( 'order', 1000 )
->update_setting( 'key', 'submit' )
$action = Ninja_Forms()->form( $form_id )->action()->get();
$action->update_setting( 'label', esc_html__( 'Success Message', 'ninja-forms' ) )
->update_setting( 'type', 'successmessage' )
->update_setting( 'message', '<div style="border: 2px solid green; padding: 10px; color: green;">' . esc_html__( 'You purchased ', 'ninja-forms' ) .
'{field:' . $quantity_field_id . '}' . esc_html__( 'product(s) for ', 'ninja-forms' ) . '${field:total}.</div>' )
public function form_product_2()
$form = Ninja_Forms()->form()->get();
$form->update_setting( 'title', esc_html__( 'Product Form (Inline Quantity)', 'ninja-forms' ) );
$form->update_setting( 'default_label_pos', 'above' );
$form->update_setting( 'hide_successfully_completed_form', 1 );
$form_id = $form->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'product' )
->update_setting( 'label', esc_html__( 'Product', 'ninja-forms' ) )
->update_setting( 'label_pos', 'above' )
->update_setting( 'product_price', 10.10 )
->update_setting( 'product_use_quantity', 1 )
->update_setting( 'order', 1 )
->update_setting( 'key', 'product' )
$product_field_id = $field->get_id();
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'shipping' )
->update_setting( 'label', esc_html__( 'Shipping', 'ninja-forms' ) )
->update_setting( 'label_pos', 'above' )
->update_setting( 'shipping_cost', 2.00 )
->update_setting( 'order', 4 )
->update_setting( 'key', 'shipping' )
$field = Ninja_Forms()->form( $form_id )->field()->get();
$field->update_setting( 'type', 'total' )
->update_setting( 'label', esc_html__( 'Total', 'ninja-forms' ) )
->update_setting( 'label_pos', 'above' )
->update_setting( 'key', 'total' )
->update_setting( 'order', 5 )
->update_setting( 'key', 'total' )