VS Contact Form



This is a lightweight plugin to create a customized contact form.

Add shortcode [contact] on a page or use the widget to display your form.

Form has fields for Name, Email, Subject and Message. It also has a sum to solve and a privacy consent checkbox.

You can personalize your form via the settings page or by adding attributes to the shortcode or the widget.

It’s also possible to list form submissions in your dashboard.

How to use

After installation add shortcode [contact] on a page or use the widget to display your form.

Settings page

You can personalize your form via the settings page. This page can be found via Settings > VSCF.

Settings and labels can be overridden when using the relevant (shortcode) attributes below.

This can be useful when having multiple contact forms on your website.


You can also personalize your form by adding attributes to the shortcode mentioned above. Attributes will override the settings page.


  • Add custom CSS class to form: class="your-class-here"
  • Change default email address: email_to="your-email-here"
  • Send to multiple email addresses (max 5): email_to="first-email-here, second-email-here"
  • Change “From” email header: from_header="your-email-here"
  • Change prefix of email subject: prefix_subject="your prefix here"
  • Change email subject (including prefix): subject="your subject here"

Field labels:

  • Name label: label_name="your label here"
  • Email label: label_email="your label here"
  • Subject label: label_subject="your label here"
  • Message label: label_message="your label here"
  • Privacy consent label: label_privacy="your label here"
  • Submit label: label_submit="your label here"

Field placeholders:

  • Name placeholder: placeholder_name="your placeholder here"
  • Email placeholder: placeholder_email="your placeholder here"
  • Subject placeholder: placeholder_subject="your placeholder here"
  • Message placeholder: placeholder_message="your placeholder here"

Field error labels:

  • Name error label: error_name="your label here"
  • Email error label: error_email="your label here"
  • Subject error label: error_subject="your label here"
  • Sum error label: error_sum="your label here"
  • Message error label: error_message="your label here"
  • Links error label: error_links="your label here"
  • Privacy consent error label: error_privacy="your label here"

Form messages:

  • Message when sending succeeds: thank_you_message="your message here"
  • Message in confirmation email to sender: auto_reply_message="your message here"


  • One attribute: [contact email_to="your-email-here"]
  • Multiple attributes: [contact email_to="your-email-here" subject="your subject here" label_submit="your label here"]

Atributos do Widget

The widget supports the same attributes. Don’t add the main shortcode tag or the brackets.


  • One attribute: email_to="your-email-here"
  • Multiple attributes: `email_to=”your-email-here” subject=”your subject here” label_submit=”your label here”

Listar formulários enviados no painel

Via Settings > VSCF you can activate the listing of form submissions in your dashboard.

After activation you will notice a new menu item called “Submissions”.


SMTP (Simple Mail Transfer Protocol) is an internet standard for sending emails.

WordPress supports the PHP mail() function by default, but when using SMTP there’s less chance your form submissions are being marked as spam.

You must install an additional plugin for this, such as:

For support visit the relevant plugin forum.


If you uninstall plugin via dashboard all form submissions and settings will be removed from database.

All posts of the (custom) post type “submission” will be removed.

You can avoid this via Settings > VSCF.


Por favor, dê uma olhada na seção FAQ.


Não estão incluídos, mas o plugin suporta pacotes de idiomas WordPress.

Mais traduções são bem vindas!


Sem o codex WordPress e ajuda da comunidade WordPress eu não seria capaz de desenvolver este plugin, então: obrigado!


Imagens de tela

  • Form (GeneratePress theme)
  • Form (GeneratePress theme)
  • Widget form (GeneratePress theme)
  • Widget (dashboard)
  • Settings page (dashboard)
  • Settings page (dashboard)
  • Settings page (dashboard)
  • Submissions (dashboard)


Please check Description section for installation info.


About the FAQ

The FAQ are updated regularly to include support for newly added or changed plugin features.

Como faço para definir o idioma do plugin?

Plugin will use the website language, set in Settings > General.

If plugin isn’t translated into this language, language fallback will be English.

What is the default admin email address?

By default form submissions will be send to the email address set in Settings > General.

You can change this via Settings > VSCF or by using an attribute.

What is the default email subject?

By default the email subject contains a prefix (the title of your website), followed by the subject that sender has filled in. If subject field is disabled it only contains the prefix (the title of your website).

You can change this by using an attribute.

The same subject will also be used in the confirmation email to sender.

Why is the “from” email address not from sender?

I have used a default so called “From” email header to avoid form submissions being marked as spam.

Best practice is using a “From” email header (an email address) that ends with your website domain.

That’s why the default “From” email header starts with “wordpress” and ends with your website domain.

You can change this by using an attribute.

Your reply to sender will use another email header, called “Reply-To”, which is the email address that sender has filled in.

Can I display multiple forms on the same page?

Do not add multiple shortcodes on the same page. This might cause a conflict.

But you can display a form by using the shortcode and a form by using the widget, on the same page.

Why does form submission fail?

An error message is displayed if plugin was unable to send form.

Your hosting provider might have disabled the mail function of your server. Please contact them for info.

If they advice you to install a SMTP plugin, please check the “SMTP” section above.

In case you’re using a SMTP plugin, check the settings page of that plugin for mistakes. Most SMTP plugins have a test module, you can test the mail function by sending a test mail.

Why am I not receiving form submissions?

  • Please also check the junk/spam folder of your mailbox
  • Check installation info above and check shortcode (attributes) for mistakes
  • Check the settings page, maybe you have disabled email to admin
  • In case you’re using a SMTP plugin, check the settings page of that plugin for mistakes
  • Most SMTP plugins have a test module, you can test the mail function by sending a test mail
  • Install another contact form plugin to determine whether it’s caused by VS Contact Form or not

Does this plugin have anti-spam features?

Of course, the default WordPress validating, sanitizing and escaping functions are included.

Form has a sum to solve and you can allow or disallow links in Message field.

And form contains honeypot fields and a time trap. This is not visible in the frontend of your website.

Does this plugin meet the conditions of the GDPR?

The General Data Protection Regulation (GDPR) is a regulation in EU law on data protection and privacy for all individuals within the European Union.

I did my best to meet the conditions of the GDPR:

  • Form has a privacy consent checkbox
  • You can disable collection of IP address
  • Form submissions are safely stored in database, similar to how the default posts and pages are stored
  • You can easily delete form submissions

Does this plugin have its own block?

No, plugin doesn’t have its own block in the editor and there are no plans to add this anytime soon.

No Semantic versioning?

Version number doesn’t give you info about the type of update (major, minor, patch). You should check changelog for that.

Como posso fazer uma doação?

You like my plugin and you’re willing to make a donation? Thanks, I really appreciate that! There’s a PayPal donate link at my website.

Outras perguntas ou comentários?

Por favor, abra um tópico no fórum do plugin.


28 de novembro de 2022
... is this plugin when they are looking for contact forms. There are some many contact form plugins with drag and drop building stuff really nobody uses. This plugin is really simple and perfect for my use! Also this plugin does not contact any external servers. Perfect!
23 de julho de 2022
So happy to find this plugin. Using since ever Contact form 7. But is no more SEO friendly. The support is so fast and efficient. And the installation in Wordpress so easy. So Thanks Guido for your great plugin!!!
10 de janeiro de 2022
Very simple contact form that works. sometimes all you need is a simple form to collect very basic info. shortcode customization is straight forward.
16 de junho de 2021
Super facil de instalar, configurar y usar. Si ningun agregado de versiones PRO ni nada. Recomendable!!!
Leia todas as 44 avaliações

Colaboradores e desenvolvedores

“VS Contact Form” é um software com código aberto. As seguintes pessoas contribuíram para este plugin.


“VS Contact Form” foi traduzido para 22 localizações. Agradecemos aos tradutores por suas contribuições.

Traduzir “VS Contact Form” para o seu idioma.

Interessado no desenvolvimento?

Navegue pelo código, dê uma olhada no repositório SVN ou assine o registro de desenvolvimento via RSS.

Registro de alterações

Version 13.1

  • Minor changes in code

Version 13.0

  • Fix: nonce

Version 12.9

  • Fix: nonce

Version 12.8

  • Extra validation
  • This extra validation makes debugging easier
  • Changed attribute “message_success” into “thank_you_message”

Version 12.7

  • Fix: prefix in widget file
  • This means you need to set existing widgets again
  • New: you can disable email to admin
  • Can be useful when listing submissions in your dashboard is enough
  • Or when debugging plugin
  • Removed function load_plugin_textdomain() because redundant
  • Plugin uses the WP language packs for its translation
  • Kept translation folder for reference

Version 12.6

  • Better support for screen readers

Version 12.5

  • Fix: form

Version 12.4

  • Plugin has a new name
  • But plugin itself and ownership did not change
  • New: hide labels and use placeholders instead
  • Form update

Version 12.3

  • Fix: max number of email addresses, when using email_to attribute
  • Minor changes in code

Version 12.2

  • Fix: sending submission to multiple email addresses, when using email_to attribute
  • Fix: Reply-To email address in confirmation email to sender

For all versions please check file changelog.