{"id":25434,"date":"2013-10-05T18:05:14","date_gmt":"2013-10-05T18:05:14","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/mailgun-email-validator\/"},"modified":"2017-11-25T14:21:46","modified_gmt":"2017-11-25T14:21:46","slug":"mailgun-email-validator","status":"publish","type":"plugin","link":"https:\/\/szl.wordpress.org\/plugins\/mailgun-email-validator\/","author":8048391,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.2.4.1","stable_tag":"1.2.4.1","tested":"4.9.29","requires":"3.1.0","requires_php":"","requires_plugins":"","header_name":"Mailgun Email Validator","header_author":"Jesin","header_description":"","assets_banners_color":"777777","last_updated":"2017-11-25 14:21:46","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/websistent.com\/wordpress-plugins\/mailgun-email-validator\/","header_author_uri":"https:\/\/websistent.com\/","rating":4.2,"author_block_rating":0,"active_installs":60,"downloads":11448,"num_ratings":25,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":[],"ratings":{"1":"4","2":"1","3":"1","4":"1","5":"19"},"assets_icons":[],"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":"1057422","resolution":"1544x500","location":"assets"},"banner-772x250.png":{"filename":"banner-772x250.png","revision":"1057422","resolution":"772x250","location":"assets"}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0","1.1","1.2","1.2.1","1.2.2","1.2.3","1.2.4","1.2.4.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":"1057422","resolution":"1","location":"assets"},"screenshot-2.png":{"filename":"screenshot-2.png","revision":"1057422","resolution":"2","location":"assets"},"screenshot-3.png":{"filename":"screenshot-3.png","revision":"1057422","resolution":"3","location":"assets"},"screenshot-4.png":{"filename":"screenshot-4.png","revision":"1057422","resolution":"4","location":"assets"}},"screenshots":{"1":"Enter your public API key to begin validation.","2":"A comment with an incorrect email address.","3":"This plugin in action on the user registration page.","4":"Email validation in a contact form."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2656,107,2182,599,724],"plugin_category":[44,54],"plugin_contributors":[82480],"plugin_business_model":[],"class_list":["post-25434","plugin","type-plugin","status-publish","hentry","plugin_tags-anti-spam","plugin_tags-comments","plugin_tags-email-validation","plugin_tags-spam","plugin_tags-validation","plugin_category-discussion-and-community","plugin_category-security-and-spam-protection","plugin_contributors-jesin","plugin_committers-jesin"],"banners":{"banner":"https:\/\/ps.w.org\/mailgun-email-validator\/assets\/banner-772x250.png?rev=1057422","banner_2x":"https:\/\/ps.w.org\/mailgun-email-validator\/assets\/banner-1544x500.png?rev=1057422","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/mailgun-email-validator_777777.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/mailgun-email-validator\/assets\/screenshot-1.png?rev=1057422","caption":"Enter your public API key to begin validation."},{"src":"https:\/\/ps.w.org\/mailgun-email-validator\/assets\/screenshot-2.png?rev=1057422","caption":"A comment with an incorrect email address."},{"src":"https:\/\/ps.w.org\/mailgun-email-validator\/assets\/screenshot-3.png?rev=1057422","caption":"This plugin in action on the user registration page."},{"src":"https:\/\/ps.w.org\/mailgun-email-validator\/assets\/screenshot-4.png?rev=1057422","caption":"Email validation in a contact form."}],"raw_content":"<!--section=description-->\n<p>Most email validators look for an <code>@<\/code> and a <code>.<\/code>(dot) some go further and blacklist certain domain names. But Mailgun's Advanced email validation service goes deeper and looks for the existence of the domain name, presence of a <a href=\"http:\/\/en.wikipedia.org\/wiki\/MX_record\">MX record<\/a> and the custom ESP(Email Service Provider) grammar.\nThe grammar here is the rules defined by each email provider. For example, Yahoo Mail addresses can only contain letters, numbers, underscores, and one period. \nSo <code>user.name.abc@yahoo.com<\/code> perfectly passes the <a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/is_email\">is_email()<\/a> function but can never exist as it contains more than one period. Such addresses can't escape Mailgun's Email validation.<\/p>\n\n<h4>Why use Mailgun's email validation service?<\/h4>\n\n<ul>\n<li>Performs the usual email syntax check.<\/li>\n<li>Checks the existence of the email domain. So <code>user@some-random-characters.com<\/code> can't escape.<\/li>\n<li>Checks if the email domain has a MX record. So <code>anything@example.com<\/code> is caught.<\/li>\n<li>Checks if the username complies with the grammar of its ESP (Email Service provider). Eg Gmail doesn't allow usernames less than 6 characters and hyphens so <code>small@gmail.com<\/code> and <code>hyphen-user@gmail.com<\/code> can't get away.<\/li>\n<\/ul>\n\n<h4>Why use this plugin?<\/h4>\n\n<ul>\n<li>Integrates with the <a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/is_email\">is_email()<\/a> function of WordPress. So it works seamlessly with Contact Form 7, Jetpack\/Grunion contact forms, WordPress registration form and any form which uses the <code>is_email()<\/code> function.<\/li>\n<li>Kicks spam before it is inserted into the database<\/li>\n<li>Ensures that the commenting process is uninterrupted even if Mailgun suffers a <a href=\"http:\/\/status.mailgun.com\">downtime<\/a><\/li>\n<li>Works completely transparent, nothing changes in the frontend<\/li>\n<\/ul>\n\n<p>This plugin requires a Mailgun Public API Key which can be obtained by <a href=\"https:\/\/mailgun.com\/signup\">signing up at Mailgun<\/a>.<\/p>\n\n<p>If you're trying out this plugin on a local WAMP\/LAMP\/MAMP installation make sure your system is connected to the Internet for this plugin to contact Mailgun.<\/p>\n\n<h4>Available Languages<\/h4>\n\n<ul>\n<li>English<\/li>\n<li>Serbo-Croatian by <a href=\"http:\/\/www.webhostinghub.com\/\">Borisa Djuraskovic<\/a><\/li>\n<li>Spanish by <a href=\"http:\/\/www.webhostinghub.com\/\">Andrew Kurtis<\/a><\/li>\n<\/ul>\n\n<h4>Further Reading<\/h4>\n\n<p>Read about Mailgun's email validation service.<\/p>\n\n<ul>\n<li><a href=\"http:\/\/blog.mailgun.com\/post\/free-email-validation-api-for-web-forms\/\">http:\/\/blog.mailgun.com\/post\/free-email-validation-api-for-web-forms\/<\/a><\/li>\n<li><a href=\"http:\/\/blog.mailgun.com\/post\/weekly-product-update-improvements-to-email-validation-api\/\">http:\/\/blog.mailgun.com\/post\/weekly-product-update-improvements-to-email-validation-api\/<\/a><\/li>\n<li><a href=\"http:\/\/mailgun.github.io\/validator-demo\/\">Mailgun Address Validator demo<\/a> and its <a href=\"https:\/\/github.com\/mailgun\/validator-demo\/tree\/gh-pages\">source code<\/a><\/li>\n<li>The <a href=\"https:\/\/websistent.com\/wordpress-plugins\/mailgun-email-validator\/\">Mailgun Email Validator Plugin<\/a> official homepage.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Unzip and upload the <code>mailgun-email-validator<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the <strong>Mailgun Email Validator<\/strong> plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Configure the plugin by going to <code>General &gt; Email Validation<\/code> page.<\/li>\n<li><a href=\"https:\/\/mailgun.com\/signup\">Signup<\/a> for a Mailgun account (First 100 validations are free every month).<\/li>\n<li><a href=\"https:\/\/mailgun.com\/sessions\/new\">Login<\/a>, copy and paste your public API key to <code>General &gt; Email Validation<\/code> page.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt>Installation Instructions<\/dt>\n<dd><ol>\n<li>Unzip and upload the <code>mailgun-email-validator<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the <strong>Mailgun Email Validator<\/strong> plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Configure the plugin by going to <code>General &gt; Email Validation<\/code> page.<\/li>\n<li><a href=\"https:\/\/mailgun.com\/signup\">Signup<\/a> for a Mailgun account (First 100 validations are free every month).<\/li>\n<li><a href=\"https:\/\/mailgun.com\/sessions\/new\">Login<\/a>, copy and paste your public API key to <code>General &gt; Email Validation<\/code> page.<\/li>\n<\/ol><\/dd>\n<dt>Why did you create this plugin?<\/dt>\n<dd><p>I hate comment spam because it bloats my database. I also don't like bugging my visitors with CAPTCHAs in the form of scribbled text, \ncounting the puppies and answering questions like <em>What is 3 + 2?<\/em>\nSo when Mailgun released their email validation service I tried validating the email addresses of comments in the spam queue of <a href=\"https:\/\/websistent.com\">my blog<\/a>.\nI found that nearly 50% of these email addresses were identified incorrect by Mailgun. \nThus this plugin was born. Though not as effective as CAPTCHAs this plugin can prevent a decent amount of spam while maintaining user experience.<\/p><\/dd>\n<dt>Is this plugin a product of Mailgun?<\/dt>\n<dd><p>No. It only makes use of Mailgun's email validation service API. Nothing in the code belongs to Mailgun.<\/p><\/dd>\n<dt>I get a *401 Unauthorized* error when I verify the API key but I'm very sure that it is correct<\/dt>\n<dd><p>You could be using the normal API key, for this plugin you need to enter the <strong>Public API Key<\/strong> this is slightly \nlonger than the normal API key and is found just below it.<\/p><\/dd>\n<dt>This plugin is active and I have entered a Valid Public API Key but it doesn't work<\/dt>\n<dd><p>Try the email validation demo from the plugin's option page. It could a connectivity issue.<\/p><\/dd>\n<dt>What happens if Mailgun's service is down?<\/dt>\n<dd><p>In such cases emails are passed on untouched (as though this plugin is nonexistent) and on the front-end users won't notice anything.<\/p><\/dd>\n<dt>What contact form plugins are supported?<\/dt>\n<dd><p>Any form which uses the <code>is_email()<\/code> function are supported this means the most popular ones like Contact Form 7, Jetpack by WordPress.com, Grunion Contact Form\nand a lot of others are supported.<\/p><\/dd>\n<dt>Does Mailgun support this plugin?<\/dt>\n<dd><p>No, because Mailgun didn't create it. If you need support create a thread \nby choosing the <strong>Support<\/strong> tab of this plugin. If you directly create a thread in the forum I'll never know of its existence.<\/p><\/dd>\n<dt>I want to see a demo of emails validating<\/dt>\n<dd><p>Mailgun has created a <a href=\"http:\/\/mailgun.github.io\/validator-demo\/\">jquery demo<\/a> at this page. The code for this demo is <a href=\"https:\/\/github.com\/mailgun\/validator-demo\/tree\/gh-pages\">available here<\/a>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.4.1<\/h4>\n\n<ul>\n<li>19th October 2017<\/li>\n<li>Add global variables $pagenow and $wp<\/li>\n<\/ul>\n\n<h4>1.2.4<\/h4>\n\n<ul>\n<li>8th October 2017<\/li>\n<li>Don't use Mailgun validation on the WooCommerce WP-Admin orders page. <a href=\"https:\/\/wordpress.org\/support\/topic\/is_email-function-happens-a-lot\/\">More details...<\/a><\/li>\n<\/ul>\n\n<h4>1.2.3<\/h4>\n\n<ul>\n<li>16th October 2016<\/li>\n<li>Removed PHP4 style constructors for PHP 7 compatibility<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>21st April 2015<\/li>\n<li>Use <a href=\"http:\/\/blog.mailgun.com\/default-api-version-now-v3\/\">Mailgun's API v3<\/a><\/li>\n<li>Added Spanish language, props <a href=\"http:\/\/www.webhostinghub.com\/\">Andrew Kurtis<\/a><\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>19th October 2014<\/li>\n<li>Use HTTP HEAD instead of GET to validate API key. <a href=\"https:\/\/wordpress.org\/support\/topic\/a-http-error-occurred-when-validating-the-api-error-code-502-bad-gateway\">More details...<\/a><\/li>\n<\/ul>\n\n<h4>1.2<\/h4>\n\n<ul>\n<li>3rd September 2014<\/li>\n<li>Added Serbo-Croatian language, props <a href=\"http:\/\/www.webhostinghub.com\/\">Borisa Djuraskovic<\/a><\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>3rd November 2013<\/li>\n<li>Plugin is translation ready<\/li>\n<\/ul>\n\n<h4>1.0<\/h4>\n\n<ul>\n<li>5th October 2013<\/li>\n<li>Initial version<\/li>\n<\/ul>","raw_excerpt":"Kick spam with a highly advanced email validation in comment forms, user registration and contact forms using Mailgun&#039;s Email validation service.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/25434","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=25434"}],"author":[{"embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jesin"}],"wp:attachment":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=25434"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=25434"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=25434"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=25434"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=25434"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=25434"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}