Sarathlal N

Handle custom form in WordPress

Have you ever tried custom forms in WordPress. It is too easier than you think.

Here is my sample form.

<form method='post' action=''>
	<input name='name' type='text' value='' />
	<?php echo wp_nonce_field('handle_custom_form', 'nonce_custom_form'); ?>
	<input type='submit' value='Submit'/>
</form>

Form handling function for sample form is given below. Always strictly validate form fields.

public function wpsa_handle_custom_form()
{
	if (!empty($_POST['nonce_custom_form']))
	{
		if (!wp_verify_nonce($_POST['nonce_custom_form'], 'handle_custom_form'))
		{
			die('You are not authorized to perform this action.');
		} else
		{
			$error = null;
			if (empty($_POST['name']))
			{
				$error = new WP_Error('empty_error', __('Please enter name.', 'your-text-domain'));
				wp_die($error->get_error_message(), __('CustomForm Error', 'your-text-domain'));
			}
			else
			{
				die('Its safe to do further processing on submitted data.');
				//Process submitted data from here
				//$name = $_POST['name'];
			}
		}
	}
}

add_action('init', 'wpsa_handle_custom_form');

Need Help?

Do you need any help on WordPress? I'm happy to help you.

Contact Now

Fill the form & submit your query. I will get back to you soon.



Recent Posts

  1. Unzip zip file using PHP
  2. Disable single page view & archive page view of Custom Post Type - WordPress
  3. Get variation product data on selecting variation options - WooCommerce
  4. Add TinyMCE WYSIWYG (Rich text area) meta box - WordPress
  5. Reorder product tabs in single product page - WooCommerce

Your Questions / Comments

If you found this article interesting, found errors, or just want to discuss about them, please get in touch.