{"id":55086,"date":"2017-03-18T18:23:08","date_gmt":"2017-03-18T18:23:08","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/wp-easy-smtp\/"},"modified":"2026-02-26T13:37:27","modified_gmt":"2026-02-26T13:37:27","slug":"wp-easy-smtp","status":"closed","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/wp-easy-smtp\/","author":15352495,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.0","stable_tag":"1.2.0","tested":"6.9.4","requires":"4.3","requires_php":"","requires_plugins":null,"header_name":"WordPress Easy SMTP","header_author":"iProDev","header_description":"","assets_banners_color":"cbc7c4","last_updated":"2026-02-26 13:37:27","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/iprodev.com\/wordpress-easy-smtp-send-emails-from-your-wordpress-site-using-a-smtp-server","header_plugin_uri":"https:\/\/iprodev.com\/wordpress-easy-smtp-send-emails-from-your-wordpress-site-using-a-smtp-server","header_author_uri":"https:\/\/iprodev.com\/","rating":5,"author_block_rating":0,"active_installs":400,"downloads":48010,"num_ratings":0,"support_threads":1,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"iprodev","date":"2017-03-23 07:44:13"},"1.0.1":{"tag":"1.0.1","author":"iprodev","date":"2017-03-22 22:13:38"},"1.0.2":{"tag":"1.0.2","author":"iprodev","date":"2017-03-23 07:49:25"},"1.0.3":{"tag":"1.0.3","author":"iprodev","date":"2017-04-10 15:38:48"},"1.0.4":{"tag":"1.0.4","author":"iprodev","date":"2017-06-08 21:09:42"},"1.1.0":{"tag":"1.1.0","author":"iprodev","date":"2017-11-21 12:44:36"},"1.1.1":{"tag":"1.1.1","author":"iprodev","date":"2017-11-21 13:25:34"},"1.1.2":{"tag":"1.1.2","author":"iprodev","date":"2018-09-26 21:16:53"},"1.2.0":{"tag":"1.2.0","author":"iprodev","date":"2026-02-26 13:37:27"}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":"3"},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":1619329,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":1619329,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":1619329,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":1619329,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.1.0","1.1.1","1.1.2","1.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":1634549,"resolution":"1","location":"assets","locale":""}},"screenshots":{"1":"WP Easy SMTP"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[450,6932,6696,25906,6695],"plugin_category":[41],"plugin_contributors":[133311],"plugin_business_model":[],"class_list":["post-55086","plugin","type-plugin","status-closed","hentry","plugin_tags-mail","plugin_tags-phpmailer","plugin_tags-smtp","plugin_tags-wordpress-smtp","plugin_tags-wp_mail","plugin_category-communication","plugin_contributors-iprodev","plugin_committers-iprodev"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/wp-easy-smtp_cbc7c4.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/wp-easy-smtp\/assets\/screenshot-1.png?rev=1634549","caption":"WP Easy SMTP"}],"raw_content":"<!--section=description-->\n<p>WP Easy SMTP allows you to configure and send all outgoing emails via a SMTP server. This will prevent your emails from going into the junk\/spam folder of the recipients.<\/p>\n\n<p>You can also send emails to your WordPress blog Users &amp; Commenters using your SMTP server.<\/p>\n\n<h4>WP Easy SMTP Features<\/h4>\n\n<ul>\n<li>Send email using a SMTP sever.<\/li>\n<li>You can use Gmail, Yahoo, Hotmail, SendGrid, SparkPost, Postmark, Mandrill, Pepipost's SMTP server if you have an account with them.<\/li>\n<li>Send emails to your WordPress blog Users &amp; Commenters.<\/li>\n<li>Seamlessly connect your WordPress blog with a mail server to handle all outgoing emails (it's as if the email has been composed inside your mail account).<\/li>\n<li>Securely deliver emails to your recipients.<\/li>\n<\/ul>\n\n<h4>Localization<\/h4>\n\n<ul>\n<li>Persian (fa_IR) - <a href=\"https:\/\/iprodev.com\/author\/admin\/\">Hemn Chawroka<\/a> (plugin author)<\/li>\n<li>Kurdish (ckb) - <a href=\"https:\/\/iprodev.com\/author\/kurddata2006\/\">Nasr Chawroka<\/a> (plugin author)<\/li>\n<li>Kurdish Kurmanji (kmr) - <a href=\"https:\/\/iprodev.com\/author\/admin\/\">Hemn Chawroka<\/a> (plugin author)<\/li>\n<li>German (de_DE) - <a href=\"https:\/\/iprodev.com\/author\/admin\/\">Hemn Chawroka<\/a> (plugin author)<\/li>\n<li>French (fr_FR) - <a href=\"https:\/\/iprodev.com\/author\/admin\/\">Hemn Chawroka<\/a> (plugin author)<\/li>\n<li>Portuguese (pt_PT) - <a href=\"https:\/\/iprodev.com\/author\/admin\/\">Hemn Chawroka<\/a> (plugin author)<\/li>\n<li>Spanish (es_ES) - <a href=\"https:\/\/iprodev.com\/author\/admin\/\">Hemn Chawroka<\/a> (plugin author)<\/li>\n<\/ul>\n\n<h4>WP Easy SMTP Plugin Usage<\/h4>\n\n<p>Once you have installed the plugin there are some options that you need to configure in the plugin settings (go to <code>Settings-&gt;WP Easy SMTP<\/code> from your WordPress Dashboard).<\/p>\n\n<p><strong>a)<\/strong> WP Easy SMTP General Settings<\/p>\n\n<p>The general settings section consists of the following options<\/p>\n\n<ul>\n<li>From Email Address: The email address that will be used to send emails to your recipients<\/li>\n<li>From Name: The name your recipients will see as part of the \"from\" or \"sender\" value when they receive your message<\/li>\n<li>Mailer: Integrated support for Gmail, Yahoo, Hotmail, SendGrid, SparkPost, Postmark, Mandrill, Pepipost<\/li>\n<li>SMTP Host: Your outgoing mail server (example: smtp.gmail.com)<\/li>\n<li>Type of Encryption: none\/SSL\/TLS<\/li>\n<li>SMTP Port: The port that will be used to relay outbound mail to your mail server (example: 465)<\/li>\n<li>SMTP Authentication: No\/Yes (This option should always be checked \"Yes\")<\/li>\n<li>Username: The username that you use to login to your mail server<\/li>\n<li>Password: The password that you use to login to your mail server<\/li>\n<\/ul>\n\n<p>For detailed documentation on how you can configure these options please visit the <a href=\"https:\/\/iprodev.com\/wordpress-easy-smtp-send-emails-from-your-wordpress-site-using-a-smtp-server\">WordPress Easy SMTP<\/a> plugin page<\/p>\n\n<p><strong>b)<\/strong> WP Easy SMTP Testing &amp; Debugging Settings<\/p>\n\n<p>This section allows you to perform some email testing to make sure that your WordPress site is ready to relay all outgoing emails to your configured SMTP server. It consists of the following options:<\/p>\n\n<ul>\n<li>To: The email address that will be used to send emails to your recipients<\/li>\n<li>Subject: The subject of your message<\/li>\n<li>Message: A textarea to write your test message.<\/li>\n<\/ul>\n\n<p>Once you click the \"Send Test Email\" button the plugin will try to send an email to the recipient specified in the \"To\" field.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Go to the Add New plugins screen in your WordPress admin area<\/li>\n<li>Click the upload tab<\/li>\n<li>Browse for the plugin file (wp-easy-smtp.zip)<\/li>\n<li>Click Install Now and then activate the plugin<\/li>\n<li>Now, go to the settings menu of the plugin and follow the instructions<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20this%20plugin%20be%20used%20to%20send%20emails%20via%20smtp%3F\"><h3>Can this plugin be used to send emails via SMTP?<\/h3><\/dt>\n<dd><p>Yes.<\/p><\/dd>\n<dt id=\"can%20this%20plugin%20be%20used%20to%20send%20emails%20to%20my%20users%3F\"><h3>Can this plugin be used to send emails to my Users?<\/h3><\/dt>\n<dd><p>Yes.<\/p><\/dd>\n<dt id=\"can%20this%20plugin%20be%20used%20to%20send%20emails%20to%20my%20commenters%3F\"><h3>Can this plugin be used to send emails to my Commenters?<\/h3><\/dt>\n<dd><p>Yes.<\/p><\/dd>\n<dt id=\"my%20plugin%20still%20sends%20mail%20via%20the%20mail%28%29%20function\"><h3>My plugin still sends mail via the mail() function<\/h3><\/dt>\n<dd><p>If other plugins you're using are not coded to use the wp_mail() function but instead call PHP's mail() function directly, they will bypass the settings of this plugin. Normally, you can edit the other plugins and simply replace the <code>mail(<\/code> calls with <code>wp_mail(<\/code> (just adding wp_ in front) and this will work. I've tested this on a couple of plugins and it works, but it may not work on all plugins.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20plugin%20to%20send%20email%20via%20gmail%20%2F%20google%20apps\"><h3>Can I use this plugin to send email via Gmail \/ Google Apps<\/h3><\/dt>\n<dd><p>Yes.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Security: Fixed reflected XSS vulnerability in test-email recipient field (missing esc_attr).<\/li>\n<li>Security: Fixed stored XSS risk in admin-notice renderer \u2014 all data fetched from remote API is now fully escaped (esc_attr, esc_js, wp_kses_post) before output.<\/li>\n<li>Security: Replaced base64 password storage with AES-256-CBC encryption (OpenSSL) keyed to the site's AUTH_KEY + SECURE_AUTH_KEY. Falls back to base64 when OpenSSL is unavailable. Fully backward-compatible with existing installs.<\/li>\n<li>Security: Added current_user_can('manage_options') check to the notify-dismiss AJAX handler.<\/li>\n<li>Security: Removed @ error suppression operators throughout; all POST data is now read safely via isset() checks.<\/li>\n<li>Security: Added whitelist validation for the mailer and encryption type fields to reject unexpected values.<\/li>\n<li>Security: SMTP error messages from PHPMailer are now escaped with esc_html() before being sent to the browser.<\/li>\n<li>Security: Changed sslverify to true for remote API requests in the cron class.<\/li>\n<li>Compatibility: Fixed PHPMailer instantiation for WordPress 5.5+ (namespaced PHPMailer v6 at wp-includes\/PHPMailer\/). Automatically falls back to the legacy class-phpmailer.php path on older WordPress versions.<\/li>\n<li>Compatibility: Fixed wpesmtp_init_smtp() \u2014 now correctly references WP_Easy_SMTP::VERSION as a class constant instead of accessing the instance property via an undeclared global.<\/li>\n<li>Bug fix: Fixed incorrect From-email override logic in wpesmtp_init_smtp() \u2014 the From address is now always applied when configured, instead of only when it already matched the current value.<\/li>\n<li>Bug fix: Fixed duplicate HTML id attribute on both form submit buttons (were both \"settings-form-submit\").<\/li>\n<li>Bug fix: Replaced deprecated if()\/echo _e() pattern with esc_html_e() throughout the settings page.<\/li>\n<li>Bug fix: wp_kses_post() is now used for the test-email message body, preserving safe HTML while blocking scripts.<\/li>\n<li>Bug fix: update_option() now also updates the in-memory $this-&gt;OPTIONS so the same request sees fresh data immediately after saving.<\/li>\n<li>Code quality: VERSION and SLUG converted to class constants (const).<\/li>\n<li>Code quality: All translatable strings now use esc_html_e() \/ esc_attr_e() \/ esc_html__() instead of _e() \/ __().<\/li>\n<li>Code quality: Added apply_filters('wpesmtp_smtp_options') hook so developers can enforce strict SSL certificate verification.<\/li>\n<li>Code quality: Used checked() helper for all radio button states instead of manual if\/echo.<\/li>\n<li>Code quality: inline JavaScript in admin_notice now uses esc_js() for all dynamic values; removed invalid async\/defer attributes from inline script tag.<\/li>\n<li>Code quality: Removed unused variables and dead code paths.<\/li>\n<li>Code quality: Added comprehensive docblocks to all public methods and global functions.<\/li>\n<li>Code quality: Removed jQuery dependency; all admin-page JavaScript has been rewritten in vanilla ES5 using fetch() and URLSearchParams.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Disabled browser autocomplete for username and password fields to prevent them from being replaced by WP login credentials (if those were saved in browser).<\/li>\n<li>Fixed some bugs.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Fixed some bugs.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Supported WordPress version up to 4.9.<\/li>\n<li>Added new settings option to specify a reply-to email address.<\/li>\n<li>Test email message body is no longer having excess slashes inserted.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fixed possible XSS vulnerability with the email subject and email body input fields.<\/li>\n<li>Fixed added slashes to the email subject and email body input fields.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Added Sending email to users and commenters.<\/li>\n<li>Fixed some bugs.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fixed some bugs.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Added French language.<\/li>\n<li>Added Portuguese language.<\/li>\n<li>Added Spanish language.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First commit of the plugin.<\/li>\n<\/ul>","raw_excerpt":"Easily send emails from your WordPress blog using your preferred SMTP server. Supports Gmail, Yahoo, Hotmail, SendGrid, SparkPost, Postmark, Mandrill, &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/55086","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=55086"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/iprodev"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=55086"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=55086"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=55086"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=55086"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=55086"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=55086"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}