Version Description
- 2019-05-19
- Fixed: Sendgrid code fix.
- Fixed: Default method (nothing configured) will use the default mail on the server and not SMTP.
Download this release
Release Info
Developer | yehudah |
Plugin | Post SMTP Mailer/Email Log |
Version | 2.0.2 |
Comparing to | |
See all releases |
Code changes from version 2.0.1 to 2.0.2
- Postman/Postman-Mail/PostmanContactForm7.php +1 -1
- Postman/Postman-Mail/PostmanModuleTransport.php +5 -0
- Postman/Postman-Mail/PostmanSendGridMailEngine.php +2 -2
- Postman/Postman-Mail/PostmanZendMailEngine.php +3 -1
- Postman/Postman-Mail/Zend-1.12.10/Mail.php +3 -4
- Postman/PostmanViewController.php +1 -1
- README.md +0 -244
- postman-smtp.php +2 -2
- readme.txt +14 -10
Postman/Postman-Mail/PostmanContactForm7.php
CHANGED
@@ -13,7 +13,7 @@ class Postsmtp_ContactForm7 {
|
|
13 |
}
|
14 |
|
15 |
public function change_rest_response( $response ) {
|
16 |
-
if ( $response['status'] == 'mail_failed' ) {
|
17 |
$message = $this->result_error ['exception']->getMessage();
|
18 |
|
19 |
if ( ! $message || $message == '' ) {
|
13 |
}
|
14 |
|
15 |
public function change_rest_response( $response ) {
|
16 |
+
if ( array_key_exists('status', $response) && $response['status'] == 'mail_failed' ) {
|
17 |
$message = $this->result_error ['exception']->getMessage();
|
18 |
|
19 |
if ( ! $message || $message == '' ) {
|
Postman/Postman-Mail/PostmanModuleTransport.php
CHANGED
@@ -503,6 +503,11 @@ abstract class PostmanAbstractZendModuleTransport extends PostmanAbstractModuleT
|
|
503 |
$deliveryDetails ['transport_name'] = $this->getTransportDescription ( $this->getSecurityType () );
|
504 |
$deliveryDetails ['host'] = $this->getHostname () . ':' . $this->getPort ();
|
505 |
$deliveryDetails ['auth_desc'] = $this->getAuthenticationDescription ( $this->getAuthenticationType () );
|
|
|
|
|
|
|
|
|
|
|
506 |
/* translators: where (1) is the transport type, (2) is the host, and (3) is the Authentication Type (e.g. Postman will send mail via smtp.gmail.com:465 using OAuth 2.0 authentication.) */
|
507 |
return sprintf ( __ ( 'Postman will send mail via %1$s to %2$s using %3$s authentication.', 'post-smtp' ), '<b>' . $deliveryDetails ['transport_name'] . '</b>', '<b>' . $deliveryDetails ['host'] . '</b>', '<b>' . $deliveryDetails ['auth_desc'] . '</b>' );
|
508 |
}
|
503 |
$deliveryDetails ['transport_name'] = $this->getTransportDescription ( $this->getSecurityType () );
|
504 |
$deliveryDetails ['host'] = $this->getHostname () . ':' . $this->getPort ();
|
505 |
$deliveryDetails ['auth_desc'] = $this->getAuthenticationDescription ( $this->getAuthenticationType () );
|
506 |
+
|
507 |
+
if ( $deliveryDetails ['host'] == 'localhost:25' ) {
|
508 |
+
$deliveryDetails ['transport_name'] = __( 'Sendmail (server defualt - not SMTP)', 'post-smtp');
|
509 |
+
}
|
510 |
+
|
511 |
/* translators: where (1) is the transport type, (2) is the host, and (3) is the Authentication Type (e.g. Postman will send mail via smtp.gmail.com:465 using OAuth 2.0 authentication.) */
|
512 |
return sprintf ( __ ( 'Postman will send mail via %1$s to %2$s using %3$s authentication.', 'post-smtp' ), '<b>' . $deliveryDetails ['transport_name'] . '</b>', '<b>' . $deliveryDetails ['host'] . '</b>', '<b>' . $deliveryDetails ['auth_desc'] . '</b>' );
|
513 |
}
|
Postman/Postman-Mail/PostmanSendGridMailEngine.php
CHANGED
@@ -117,7 +117,7 @@ if ( ! class_exists( 'PostmanSendGridMailEngine' ) ) {
|
|
117 |
$bccEmails = array();
|
118 |
foreach ( ( array ) $message->getBccRecipients() as $recipient ) {
|
119 |
$recipient->log($this->logger, 'Bcc');
|
120 |
-
$bccEmails[] = new \SendGrid\Mail\
|
121 |
}
|
122 |
$email->addBccs($bccEmails);
|
123 |
|
@@ -166,7 +166,7 @@ if ( ! class_exists( 'PostmanSendGridMailEngine' ) ) {
|
|
166 |
|
167 |
if ( isset( $response_body->errors[0]->message ) || ! $email_sent ) {
|
168 |
|
169 |
-
$e = ! $
|
170 |
$this->transcript = $e;
|
171 |
$this->transcript .= PostmanModuleTransport::RAW_MESSAGE_FOLLOWS;
|
172 |
$this->transcript .= print_r( $email, true );
|
117 |
$bccEmails = array();
|
118 |
foreach ( ( array ) $message->getBccRecipients() as $recipient ) {
|
119 |
$recipient->log($this->logger, 'Bcc');
|
120 |
+
$bccEmails[] = new \SendGrid\Mail\Bcc( $recipient->getEmail(), $recipient->getName() );
|
121 |
}
|
122 |
$email->addBccs($bccEmails);
|
123 |
|
166 |
|
167 |
if ( isset( $response_body->errors[0]->message ) || ! $email_sent ) {
|
168 |
|
169 |
+
$e = ! isset( $response_body->errors[0]->message ) ? $this->errorCodesMap($response_code) : $response_body->errors[0]->message;
|
170 |
$this->transcript = $e;
|
171 |
$this->transcript .= PostmanModuleTransport::RAW_MESSAGE_FOLLOWS;
|
172 |
$this->transcript .= print_r( $email, true );
|
Postman/Postman-Mail/PostmanZendMailEngine.php
CHANGED
@@ -171,10 +171,12 @@ if ( ! class_exists( 'PostmanZendMailEngine' ) ) {
|
|
171 |
$this->logger->debug( 'Create the Zend_Mail transport' );
|
172 |
$zendTransport = $this->transport->createZendMailTransport( $this->transport->getHostname(), array() );
|
173 |
|
|
|
|
|
174 |
try {
|
175 |
// send the message
|
176 |
$this->logger->debug( 'Sending mail' );
|
177 |
-
$mail->send( $
|
178 |
if ( $this->logger->isInfo() ) {
|
179 |
$this->logger->info( sprintf( 'Message %d accepted for delivery', PostmanState::getInstance()->getSuccessfulDeliveries() + 1 ) );
|
180 |
}
|
171 |
$this->logger->debug( 'Create the Zend_Mail transport' );
|
172 |
$zendTransport = $this->transport->createZendMailTransport( $this->transport->getHostname(), array() );
|
173 |
|
174 |
+
$transport = $this->transport instanceof PostmanDefaultModuleTransport ? null : $zendTransport;
|
175 |
+
|
176 |
try {
|
177 |
// send the message
|
178 |
$this->logger->debug( 'Sending mail' );
|
179 |
+
$mail->send( $transport );
|
180 |
if ( $this->logger->isInfo() ) {
|
181 |
$this->logger->info( sprintf( 'Message %d accepted for delivery', PostmanState::getInstance()->getSuccessfulDeliveries() + 1 ) );
|
182 |
}
|
Postman/Postman-Mail/Zend-1.12.10/Mail.php
CHANGED
@@ -1175,10 +1175,9 @@ class Postman_Zend_Mail extends Postman_Zend_Mime_Message
|
|
1175 |
{
|
1176 |
if ($transport === null) {
|
1177 |
if (! self::$_defaultTransport instanceof Postman_Zend_Mail_Transport_Abstract) {
|
1178 |
-
require_once '
|
1179 |
-
|
1180 |
-
|
1181 |
-
$transport = new Postman_Zend_Mail_Transport_Sendmail("-f{$replyTo['email']}");
|
1182 |
} else {
|
1183 |
$transport = self::$_defaultTransport;
|
1184 |
}
|
1175 |
{
|
1176 |
if ($transport === null) {
|
1177 |
if (! self::$_defaultTransport instanceof Postman_Zend_Mail_Transport_Abstract) {
|
1178 |
+
require_once 'Mail/Transport/Sendmail.php';
|
1179 |
+
|
1180 |
+
$transport = new Postman_Zend_Mail_Transport_Sendmail("-f{$this->_from}");
|
|
|
1181 |
} else {
|
1182 |
$transport = self::$_defaultTransport;
|
1183 |
}
|
Postman/PostmanViewController.php
CHANGED
@@ -320,7 +320,7 @@ if ( ! class_exists( 'PostmanViewController' ) ) {
|
|
320 |
echo '
|
321 |
<div class="updated settings-error notice is-dismissible">
|
322 |
<p>
|
323 |
-
<strong>Version ' . $version . '
|
324 |
</p>
|
325 |
<button style="z-index: 100;" data-version="'. $version . '" data-security="' . wp_create_nonce('postsmtp') .'" type="button" class="notice-dismiss postman-release-message">
|
326 |
<span class="screen-reader-text">Dismiss this notice.</span>
|
320 |
echo '
|
321 |
<div class="updated settings-error notice is-dismissible">
|
322 |
<p>
|
323 |
+
<strong>Version ' . $version . ' Sendgrid code fix and default delivery changes:</strong> <a target="_blank" href="https://postmansmtp.com/post-smtp-2-0-2-sendgrid-code-revert/">Read Here</a>
|
324 |
</p>
|
325 |
<button style="z-index: 100;" data-version="'. $version . '" data-security="' . wp_create_nonce('postsmtp') .'" type="button" class="notice-dismiss postman-release-message">
|
326 |
<span class="screen-reader-text">Dismiss this notice.</span>
|
README.md
DELETED
@@ -1,244 +0,0 @@
|
|
1 |
-
|
2 |
-
## Version 1.9.8 released - The SMTP Fallback
|
3 |
-
A fallback is a unique solution only exist on Post SMTP.
|
4 |
-
You can configure a backup SMTP, so if your emails are failing your site will keep sending emails !!! [Read the detailes here](https://postmansmtp.com/post-smtp-1-9-7-the-smtp-fallback/)
|
5 |
-
|
6 |
-
## The Only SMTP plugin with chrome Notifications
|
7 |
-
Get notified if your emails are failing inside your Chrome browser. [Download here](https://chrome.google.com/webstore/detail/post-smtp-notifications/npklmbkpbknkmbohdbpikeidiaekjoch?hl=en-US)
|
8 |
-
|
9 |
-
## WordPress Mail SMTP Plugin
|
10 |
-
|
11 |
-
Post SMTP is a next-generation WP Mail SMTP plugin, that assists in the delivery of email generated by your WordPress site. Post SMTP is the first and only plugin to support the [latest security standards](http://googleonlinesecurity.blogspot.ca/2014/04/new-security-measures-will-affect-older.html). With OAuth 2.0, there is **no need** to [store your email passsword](http://blog.codinghorror.com/youre-probably-storing-passwords-incorrectly/) in the WordPress database where it might be found.
|
12 |
-
|
13 |
-
The **Connectivity Test** and intelligent **Setup Wizard** scan your SMTP server to detect firewall blocks and eliminate configuration mistakes. The built-in **Email Log** is an invaluable resource for [diagnosing problems](https://wordpress.org/support/topic/ugly-e-mails-no-html-and-no-special-characters?replies=15) with emails. Even hosts that block the standard SMTP ports, like GoDaddy or Bluehost, can't stop your email as **Post SMTP can deliver via HTTPS** if it can't use SMTP.
|
14 |
-
|
15 |
-
Post SMTP is *not* another WP Mail SMTP clone like WP Bank or Easy SMTP. It replaces the default WordPress SMTP library, PHPMailer, with the heavy-duty Zend_Mail. Never [lose an email to PHP mail()](http://www.jvfconsulting.com/blog/php-mail-function-vs-smtp-guaranteed-delivery/) again.
|
16 |
-
|
17 |
-
### The Most Fast And Easy
|
18 |
-
See how fast and easy to setup Post SMTP with Google/Gsuite or any SMTP service.
|
19 |
-
|
20 |
-
https://www.youtube.com/watch?v=z-x1DhcAN0o
|
21 |
-
|
22 |
-
### Standard Features
|
23 |
-
* Easy-to-use, powerful Setup Wizard for perfect configuration
|
24 |
-
* Commercial-grade Connectivity Tester to diagnose server issues
|
25 |
-
* Log and resend all emails; see the exact cause of failed emails
|
26 |
-
* Supports [International alphabets](https://tools.ietf.org/html/rfc6530), [HTML Mail](https://en.wikipedia.org/wiki/HTML_email) and [MultiPart/Alternative](https://en.wikipedia.org/wiki/MIME#Alternative)
|
27 |
-
* Supports forced recipients (cc, bcc, to) and custom email headers
|
28 |
-
* [SASL](https://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer) Support: Plain/Login/CRAM-MD5/[XOAUTH2](https://en.wikipedia.org/wiki/OAuth#OAuth_2.0) authentication
|
29 |
-
* Security Support: [SMTPS](https://en.wikipedia.org/wiki/SMTPS) and [STARTTLS](https://en.wikipedia.org/wiki/STARTTLS) ([SSL/TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security))
|
30 |
-
* Copy configuration to other instances of Post
|
31 |
-
|
32 |
-
## OAuth 2.0 Features
|
33 |
-
* Supports the proprietary OAuth 2.0 implementations of Gmail, Hotmail and Yahoo
|
34 |
-
* Fire-and-forget delivery continues even if your password changes
|
35 |
-
* Gmail: By combining OAuth2 and the Gmail API, Post can deliver where other plugins can not
|
36 |
-
|
37 |
-
## API (HTTPS) Email Support
|
38 |
-
* Gmail API for sending Gmail and Google Apps email (requires a [Google](https://accounts.google.com/signup) account)
|
39 |
-
Often bloggers and small business owners don't want to use third-party SMTP services. Well you can use your Gmail or G Suite account for SMTP emails.
|
40 |
-
<a href="https://www.cloudways.com/blog/post-smtp-mailer-fork-of-wordpress-postman-smtp-plugin/" rel="friend">Check the guide I wrote</a>
|
41 |
-
|
42 |
-
* Mandrill API for sending any email (requires a [Mandrill](http://www.mandrillapp.com) account)
|
43 |
-
Mandrill is an email infrastructure service offered as an add-on for MailChimp that you can use to send personalized, one-to-one e-commerce emails, or automated transactional emails.
|
44 |
-
|
45 |
-
* Mailgun API for sending any email (requires a [Mailgun](http://www.mailgun.com) account)
|
46 |
-
Mailgun SMTP is a popular SMTP service provider that allows you to send large quantities of emails. They allow you to send your first 10,000 emails for free every month.
|
47 |
-
|
48 |
-
* SendGrid API for sending any email (requires a [SendGrid](https://sendgrid.com) account and PHP 5.3)
|
49 |
-
SendGrid has a free SMTP plan that you can use to send up to 100 emails per day. With our native SendGrid SMTP integration, you can easily and securely set up SendGrid SMTP on your WordPress site.
|
50 |
-
|
51 |
-
> Post SMTP needs [translators](https://translate.wordpress.org/projects/wp-plugins/post-smtp/stable)! If you are a non-English speaker, please get involved!
|
52 |
-
|
53 |
-
## Compatibile With..
|
54 |
-
* [Woocommerce](https://wordpress.org/plugins/woocommerce/)
|
55 |
-
* [WPForms](https://wordpress.org/plugins/wpforms-lite/)
|
56 |
-
* [Elementor Forms](https://elementor.com/features/form-widget/)
|
57 |
-
* [Contact Form 7](https://wordpress.org/plugins/contact-form-7/)
|
58 |
-
* [Gravity Forms](http://www.gravityforms.com)
|
59 |
-
* [Fast Secure Contact Form](https://wordpress.org/plugins/si-contact-form/)
|
60 |
-
* [Visual Forms Builder](https://wordpress.org/plugins/visual-form-builder/)
|
61 |
-
* [Contact Form Builder](https://wordpress.org/plugins/contact-form-builder/)
|
62 |
-
* [PlanSo Forms](https://wordpress.org/plugins/planso-forms/)
|
63 |
-
* [Quform](https://www.quform.com/)
|
64 |
-
* [MyMail Newsletter](http://revaxarts-themes.com/?t=mymail) by revaxarts
|
65 |
-
* [SendPress Newsletters](https://wordpress.org/plugins/sendpress/)
|
66 |
-
* [WP HTML Mail](https://wordpress.org/plugins/wp-html-mail/)
|
67 |
-
* [Email Templates](https://wordpress.org/plugins/email-templates/)
|
68 |
-
* [WordPress Leads](https://wordpress.org/plugins/leads/)
|
69 |
-
* .. and every other plugin that uses the WordPress API [wp_mail](https://codex.wordpress.org/Function_Reference/wp_mail) to send mail!
|
70 |
-
|
71 |
-
## Requirements
|
72 |
-
* WordPress 3.9 and PHP 5.6 with SPL and iconv
|
73 |
-
* Memory: 750KiB per process at idle
|
74 |
-
* Reliable mail delivery with custom email domains requires an SPF record
|
75 |
-
* Reliable SMTP delivery requires credentials with an email service provider
|
76 |
-
* OAuth 2.0 features require a Gmail, Hotmail or Yahoo mail OAuth 2.0 credentials
|
77 |
-
|
78 |
-
## CREDITS
|
79 |
-
|
80 |
-
Post SMTP (aka Postman SMTP) plugin was originally created by Jason Hendriks.
|
81 |
-
|
82 |
-
## Installation
|
83 |
-
|
84 |
-
> To send email reliably, you must use the SMTP server assigned to that email. If Post is unable to connect to the right SMTP server, you may have to ask your host to open the ports, or create a new email account managed by your host, or switch hosts!
|
85 |
-
>
|
86 |
-
> The Connectivity Test utility will tell you which ports are open and the actions available to you.
|
87 |
-
|
88 |
-
= Easy install and setup! (Recommended for all users) =
|
89 |
-
1. Install and activate the plugin through the 'Plugins' menu in WordPress.
|
90 |
-
1. In the WordPress 'Settings' menu select 'Post SMTP'.
|
91 |
-
1. Choose 'Start the Wizard' and follow the instructions.
|
92 |
-
|
93 |
-
## To manually configure Password Authentication (Intermediate users only)
|
94 |
-
|
95 |
-
1. Choose configure manually
|
96 |
-
1. In 'Transport', choose 'SMTP'
|
97 |
-
1. In 'Outgoing Mail Server Hostname', enter the SMTP Server's hostname
|
98 |
-
1. In 'Outgoing Mail Server Port', enter the SMTP Server's port
|
99 |
-
1. In 'Security' choose the appropriate type (a good guess is SMTPS for port 465, STARTTLS otherwise)
|
100 |
-
1. In 'Authentication', choose the authentication type (a good guess is 'Plain')
|
101 |
-
1. If your Authentication method is not 'None', enter your username (probably your email address) and password.
|
102 |
-
1. Choose the 'Message' tab.
|
103 |
-
1. In 'Envelope From Address' enter your email address. This MUST be the same address you login to webmail with.
|
104 |
-
1. In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
|
105 |
-
1. Choose the Save Changes button.
|
106 |
-
1. Send yourself a test email.
|
107 |
-
|
108 |
-
## To manually configure OAuth 2.0 Authentication (Advanced users only)
|
109 |
-
|
110 |
-
1. Choose configure manually
|
111 |
-
1. In 'Transport', choose 'SMTP'
|
112 |
-
1. In 'Outgoing Mail Server Hostname', enter the SMTP Server's hostname
|
113 |
-
1. In 'Outgoing Mail Server Port', enter the SMTP Server's port
|
114 |
-
1. In 'Security' choose the appropriate type (a good guess is SMTPS for port 465, StartTLS otherwise)
|
115 |
-
1. In 'Authentication' choose 'OAuth 2.0'
|
116 |
-
1. Post will give you a link to the Client ID maintenance page of your email service provider. Create a Client ID for your WordPress site.. [instructions for this are detailed in the FAQ](https://wordpress.org/plugins/post-smtp/faq/)
|
117 |
-
1. Copy your generated Client ID and Client secret into the plugin's Settings page.
|
118 |
-
1. Choose the 'Message' tab.
|
119 |
-
1. In 'Envelope From Address' enter your email address. This MUST be the same address you login to webmail with.
|
120 |
-
1. In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
|
121 |
-
1. Choose the Save Changes button.
|
122 |
-
1. Choose the 'Request OAuth2 Permission' link and follow the instructions.
|
123 |
-
1. Send yourself a test email.
|
124 |
-
|
125 |
-
> Post is developed on OS X with PHP 5.5.14 and Apache 2.4.9. Post is tested in a [Red Hat OpenShift](http://www.openshift.com/) environment with PHP 5.3.3 and Apache 2.2.15 with Gmail, Hotmail and Yahoo Mail (US). Post is tested with [mailtrap.io](http://mailtrap.io).
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
## Frequently Asked Questions
|
130 |
-
|
131 |
-
### What is OAuth 2.0?
|
132 |
-
|
133 |
-
A modern replacement for traditional password-based authentication. Post supports the OAuth 2.0 implementations of all three major e-mail providers: Gmail, Hotmail and Yahoo Mail.
|
134 |
-
|
135 |
-
### How does OAuth 2.0 work?
|
136 |
-
|
137 |
-
Post requests a limited access OAuth 2.0 token (valet key) to access the APIs (enter the house) and perform a specific service (handle Gmail, stay out of Google Docs) with no need for you to surrender your username and password credentials (master house key).
|
138 |
-
|
139 |
-
Once access is granted, Post commandeers the WordPress wp_mail() function to provide an incredibly stable mail sub-system.
|
140 |
-
|
141 |
-
### Can't I just tell Google to allow less secure apps and keep using my old password?
|
142 |
-
|
143 |
-
Google does have a setting to [allow less secure apps](https://support.google.com/accounts/answer/6010255) but this option is [not available](http://plugins.svn.wordpress.org/Post-smtp/assets/Screen%20Shot%202015-02-21%20at%208.52.13%20PM.png) if you're using *Google Apps* to manage a domain.
|
144 |
-
|
145 |
-
There are many reasons why OAuth 2.0 is better than any password-based mechanism:
|
146 |
-
|
147 |
-
* Post will never ask for your password, so your password can't be stolen
|
148 |
-
* If you change your password regularly, you will never have to update Post's configuration
|
149 |
-
* You have tighter control over the data Post has access to. For Google users it can never access your Calendar or Docs or YouTube; for Yahoo users it can never access your Flickr
|
150 |
-
* If your WordPress site gets hacked, you can revoke Post's email access without impacting any other application or website that has access to your account
|
151 |
-
|
152 |
-
> **[NEVER give out your Gmail, Microsoft or Yahoo password](http://blog.varonis.com/giving-away-your-passwords/)** to a 3rd-party or 3rd-party program that you don't fully trust.
|
153 |
-
|
154 |
-
### What is a Client ID?
|
155 |
-
To use OAuth, your website needs it's own Client ID. The Client ID is used to control authentication and authorization and is tied to the specific URL of your website. If you manage several websites, you will need a different Client ID for each one.
|
156 |
-
|
157 |
-
### How do I get a Google Client ID? (For Gmail users only!)
|
158 |
-
Go to [Configure Post SMTP with Gmail\Gsuite OAuth](https://postmansmtp.com/how-to-configure-post-smtp-with-gmailgsuite-using-oauth/)
|
159 |
-
|
160 |
-
### How do I get a Microsoft Client ID? (For Hotmail/Live/Outlook.com users only!)
|
161 |
-
1. Go to [Microsoft account Developer Center](https://account.live.com/developers/applications/index) and select 'Create application'.
|
162 |
-
1. In the 'Application name' field enter 'Post SMTP'. Select 'I accept.'
|
163 |
-
1. Select 'API Settings' from under 'Settings'.
|
164 |
-
1. In 'Redirect URL', enter the redirect URI given by Post (either from the wizard, or from the manual configuration page). Select Save.
|
165 |
-
1. Select 'App Settings' from under 'Settings'.
|
166 |
-
1. Enter the Client ID and Client Secret displayed here into Post's settings page.
|
167 |
-
|
168 |
-
### How do I get a Yahoo Client ID? (For Yahoo Mail users only!) =
|
169 |
-
1. Go to [Yahoo Developer Network](https://developer.yahoo.com/apps/) and select 'Create an App'.
|
170 |
-
1. In the 'Application Name' field enter 'Post SMTP'. For 'Application Type' choose 'Web Application'.
|
171 |
-
1. In 'Home Page URL', enter the 'Home Page URL' given by Post.
|
172 |
-
1. In 'Callback Domain', enter the 'Callback Domain' given by Post.
|
173 |
-
1. Under 'API Permissions' choose 'Mail'. Under 'Mail' choose 'Read/Write'
|
174 |
-
1. Click 'Create App'
|
175 |
-
1. Enter the Client ID and Client Secret displayed here into Post's settings page.
|
176 |
-
|
177 |
-
### How can I revoke Post's OAuth 2.0 access?
|
178 |
-
* If you have a Google Account, from the [Google Developer's Console](https://www.google.com/accounts/Logout?continue=https://console.developers.google.com) use the Delete button under the Client ID.
|
179 |
-
* If you have a Microsoft Live account, from the [Microsoft account Developer Center](https://account.live.com/developers/applications/index), select the Application and choose Delete Application.
|
180 |
-
* If you have a Yahoo Account, from the [Yahoo Developer Network My Apps](https://developer.yahoo.com/apps/), select the Application and choose Delete App.
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
## Grant OAuth permission error messages
|
185 |
-
|
186 |
-
Please note that the Client ID and Client Secret fields are NOT for your username and password. They are for OAuth Credentials only.
|
187 |
-
|
188 |
-
### Error authenticating with this Client ID. [Error executing wp_remote_post: The user has blocked requests via HTTP.]
|
189 |
-
|
190 |
-
Your WordPress site is configured with WP_HTTP_BLOCK_EXTERNAL to prevent outbound connections. Add a whitelist rule to wp-config.php:
|
191 |
-
> define('WP_ACCESSIBLE_HOSTS', 'www.googleapis.com, login.live.com, api.login.yahoo.com');
|
192 |
-
|
193 |
-
### Error authenticating with this Client ID. [Error executing wp_remote_post: Failed to connect to xxxx] =
|
194 |
-
|
195 |
-
There is a firewall on port 443 between you and the OAuth2 server. Open up the port for outbound connections.
|
196 |
-
|
197 |
-
### Error: redirect_uri_mismatch
|
198 |
-
|
199 |
-
* You did not enter the Redirect URI correctly, watch the [instructional video](https://vimeo.com/128589255)
|
200 |
-
* You used an IP address instead of a domain name (not allowed)
|
201 |
-
|
202 |
-
### Error: invalid_client ... no support email
|
203 |
-
|
204 |
-
You've [forgotten to choose an email address in the consent screen](https://wordpress.org/support/topic/status-Post-is-not-sending-mail-1?replies=7).
|
205 |
-
|
206 |
-
|
207 |
-
## SMTP Error Messages
|
208 |
-
|
209 |
-
### Communication Error [334] – make sure the Envelope From Email is the same account used to create the Client ID.
|
210 |
-
|
211 |
-
* This is almost always caused by being logged in to Google/Microsoft/Yahoo with a different user than the one Post is configured to send mail with. Logout and try again with the correct user
|
212 |
-
* Login to [Webmail](http://www.gmail.com) and see if there is an "Unusual Activity" warning waiting for your attention
|
213 |
-
|
214 |
-
### Could not open socket
|
215 |
-
|
216 |
-
* Your host may have installed a firewall between you and the server. Ask them to open the ports.
|
217 |
-
* Your may have tried to (incorrectly) use SSL over port 587. Check your encryption and port settings.
|
218 |
-
|
219 |
-
### Operation Timed out
|
220 |
-
|
221 |
-
* Your host may have poor connectivity to the mail server. Try doubling the Read Timeout.
|
222 |
-
* Your host may have installed a firewall (DROP packets) between you and the server. Ask them to open the ports.
|
223 |
-
* Your may have tried to (incorrectly) use TLS over port 465. Check your encryption and port settings.
|
224 |
-
|
225 |
-
### Connection refused
|
226 |
-
|
227 |
-
Your host has likely installed a firewall (REJECT packets) between you and the server. Ask them to open the ports.
|
228 |
-
|
229 |
-
### 503 Bad sequence of commands
|
230 |
-
|
231 |
-
You configured TLS security when you should have selected no security.
|
232 |
-
|
233 |
-
### XOAUTH2 authentication mechanism not supported
|
234 |
-
|
235 |
-
You may be on a Virtual Private Server that is [playing havoc with your communications](https://wordpress.org/support/topic/oh-bother-xoauth2-authentication-mechanism-not-supported?replies=9). Jump ship.
|
236 |
-
|
237 |
-
|
238 |
-
### Mail ends up in the Spam folder =
|
239 |
-
|
240 |
-
To avoid being flagged as spam, you need to prove your email isn't forged. On a custom domain, its up to YOU to set that up:
|
241 |
-
|
242 |
-
* Ensure you are using the correct SMTP server with authentication - the correct SMTP server is the one defined by your email service's SPF record
|
243 |
-
* If you use a custom domain name for email, add an [SPF record](http://www.openspf.org/Introduction) to your DNS zone file. The SPF is specific to your email provider, for example [Google](https://support.google.com/a/answer/33786)
|
244 |
-
* If you use a custom domain name for email, add a DKIM record to your DNS zone file and upload your Domain Key (a digital signature) to, for example [Google]((https://support.google.com/a/answer/174124?hl=en))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
postman-smtp.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Post SMTP
|
4 |
* Plugin URI: https://wordpress.org/plugins/post-smtp/
|
5 |
* Description: Email not reliable? Post SMTP is the first and only WordPress SMTP plugin to implement OAuth 2.0 for Gmail, Hotmail and Yahoo Mail. Setup is a breeze with the Configuration Wizard and integrated Port Tester. Enjoy worry-free delivery even if your password changes!
|
6 |
-
* Version: 2.0.
|
7 |
* Author: Yehuda Hassine
|
8 |
* Text Domain: post-smtp
|
9 |
* Author URI: https://postmansmtp.com
|
@@ -41,7 +41,7 @@
|
|
41 |
define( 'POST_BASE', __FILE__ );
|
42 |
define( 'POST_PATH', __DIR__ );
|
43 |
define( 'POST_URL', plugins_url('', POST_BASE ) );
|
44 |
-
define( 'POST_SMTP_VER', '2.0.
|
45 |
|
46 |
$postman_smtp_exist = in_array( 'postman-smtp/postman-smtp.php', (array) get_option( 'active_plugins', array() ) );
|
47 |
$required_php_version = version_compare( PHP_VERSION, '5.6.0', '<' );
|
3 |
* Plugin Name: Post SMTP
|
4 |
* Plugin URI: https://wordpress.org/plugins/post-smtp/
|
5 |
* Description: Email not reliable? Post SMTP is the first and only WordPress SMTP plugin to implement OAuth 2.0 for Gmail, Hotmail and Yahoo Mail. Setup is a breeze with the Configuration Wizard and integrated Port Tester. Enjoy worry-free delivery even if your password changes!
|
6 |
+
* Version: 2.0.2
|
7 |
* Author: Yehuda Hassine
|
8 |
* Text Domain: post-smtp
|
9 |
* Author URI: https://postmansmtp.com
|
41 |
define( 'POST_BASE', __FILE__ );
|
42 |
define( 'POST_PATH', __DIR__ );
|
43 |
define( 'POST_URL', plugins_url('', POST_BASE ) );
|
44 |
+
define( 'POST_SMTP_VER', '2.0.2' );
|
45 |
|
46 |
$postman_smtp_exist = in_array( 'postman-smtp/postman-smtp.php', (array) get_option( 'active_plugins', array() ) );
|
47 |
$required_php_version = version_compare( PHP_VERSION, '5.6.0', '<' );
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=yehuda@m
|
|
4 |
Tags: postman smtp, postman, smtp, email, mail, mailer, email log, oauth2, gmail, google apps, hotmail, yahoo, mandrill api, sendgrid api, elastic email, office365, mailgun
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 5.2
|
7 |
-
Stable tag: 2.0.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -12,10 +12,10 @@ Send, log and troubleshoot your Outgoing Email easily. Supports everything: SMTP
|
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
-
= Version 2.0 released -
|
16 |
-
[Read the detailes here](https://postmansmtp.com/post-smtp-2-0-
|
17 |
|
18 |
-
= The Only SMTP plugin with chrome Notifications =
|
19 |
Get notified if your emails are failing inside your Chrome browser. [Download here](https://chrome.google.com/webstore/detail/post-smtp-notifications/npklmbkpbknkmbohdbpikeidiaekjoch?hl=en-US)
|
20 |
|
21 |
= WordPress Mail SMTP Plugin =
|
@@ -97,7 +97,7 @@ Post SMTP (aka Postman SMTP) plugin was originally created by Jason Hendriks.
|
|
97 |
== Installation ==
|
98 |
|
99 |
> To send email reliably, you must use the SMTP server assigned to that email. If Post is unable to connect to the right SMTP server, you may have to ask your host to open the ports, or create a new email account managed by your host, or switch hosts!
|
100 |
-
>
|
101 |
> The Connectivity Test utility will tell you which ports are open and the actions available to you.
|
102 |
|
103 |
= Easy install and setup! (Recommended for all users) =
|
@@ -118,7 +118,7 @@ Post SMTP (aka Postman SMTP) plugin was originally created by Jason Hendriks.
|
|
118 |
1. In 'Envelope From Address' enter your email address. This MUST be the same address you login to webmail with.
|
119 |
1. In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
|
120 |
1. Choose the Save Changes button.
|
121 |
-
1. Send yourself a test email.
|
122 |
|
123 |
= To manually configure OAuth 2.0 Authentication (Advanced users only) =
|
124 |
|
@@ -135,13 +135,13 @@ Post SMTP (aka Postman SMTP) plugin was originally created by Jason Hendriks.
|
|
135 |
1. In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
|
136 |
1. Choose the Save Changes button.
|
137 |
1. Choose the 'Request OAuth2 Permission' link and follow the instructions.
|
138 |
-
1. Send yourself a test email.
|
139 |
|
140 |
> Post is developed on OS X with PHP 5.5.14 and Apache 2.4.9. Post is tested in a [Red Hat OpenShift](http://www.openshift.com/) environment with PHP 5.3.3 and Apache 2.2.15 with Gmail, Hotmail and Yahoo Mail (US). Post is tested with [mailtrap.io](http://mailtrap.io).
|
141 |
|
142 |
|
143 |
|
144 |
-
== Frequently Asked Questions ==
|
145 |
|
146 |
= Where is Postman SMTP? =
|
147 |
From 2015-11-08 more or less I can say that Jason the original author stoped maintain the plugin.
|
@@ -200,7 +200,7 @@ Go to [Configure Post SMTP with Gmail\Gsuite OAuth](https://postmansmtp.com/how-
|
|
200 |
= How can I revoke Post's OAuth 2.0 access? =
|
201 |
* If you have a Google Account, from the [Google Developer's Console](https://www.google.com/accounts/Logout?continue=https://console.developers.google.com) use the Delete button under the Client ID.
|
202 |
* If you have a Microsoft Live account, from the [Microsoft account Developer Center](https://account.live.com/developers/applications/index), select the Application and choose Delete Application.
|
203 |
-
* If you have a Yahoo Account, from the [Yahoo Developer Network My Apps](https://developer.yahoo.com/apps/), select the Application and choose Delete App.
|
204 |
|
205 |
|
206 |
|
@@ -274,7 +274,7 @@ To avoid being flagged as spam, you need to prove your email isn't forged. On a
|
|
274 |
1. WordPress Dashboard showing both the Post widget and At a Glance widget
|
275 |
1. Main Settings screen - shows Main Menu and current status (new installation)
|
276 |
1. Setup Wizard (step 1) - Import data from other plugins
|
277 |
-
1. Setup Wizard (step 4) - Connectivity Test
|
278 |
1. Manual Configuration - Account Settings: Password Authentication
|
279 |
1. Manual Configuration - Account Settings: OAuth 2.0 Authentication
|
280 |
1. Manual Configuration - Message Settings
|
@@ -289,6 +289,10 @@ To avoid being flagged as spam, you need to prove your email isn't forged. On a
|
|
289 |
|
290 |
== Changelog ==
|
291 |
|
|
|
|
|
|
|
|
|
292 |
= 2.0.1 - 2019-05-15
|
293 |
* New: Mailer Type - Added an option to send without overwrite the 'wp_mail' function, better compability to WordPress delivery. hopefully will be the default in the future.
|
294 |
* Updated: Sendgrid API was upgraded and rewritten to the new version.
|
4 |
Tags: postman smtp, postman, smtp, email, mail, mailer, email log, oauth2, gmail, google apps, hotmail, yahoo, mandrill api, sendgrid api, elastic email, office365, mailgun
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 5.2
|
7 |
+
Stable tag: 2.0.2
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
+
= Version 2.0.2 released - Sendgrid code fix and default delivery changes =
|
16 |
+
[Read the detailes here](https://postmansmtp.com/post-smtp-2-0-2-sendgrid-code-fix/)
|
17 |
|
18 |
+
= The Only SMTP plugin with chrome Notifications =
|
19 |
Get notified if your emails are failing inside your Chrome browser. [Download here](https://chrome.google.com/webstore/detail/post-smtp-notifications/npklmbkpbknkmbohdbpikeidiaekjoch?hl=en-US)
|
20 |
|
21 |
= WordPress Mail SMTP Plugin =
|
97 |
== Installation ==
|
98 |
|
99 |
> To send email reliably, you must use the SMTP server assigned to that email. If Post is unable to connect to the right SMTP server, you may have to ask your host to open the ports, or create a new email account managed by your host, or switch hosts!
|
100 |
+
>
|
101 |
> The Connectivity Test utility will tell you which ports are open and the actions available to you.
|
102 |
|
103 |
= Easy install and setup! (Recommended for all users) =
|
118 |
1. In 'Envelope From Address' enter your email address. This MUST be the same address you login to webmail with.
|
119 |
1. In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
|
120 |
1. Choose the Save Changes button.
|
121 |
+
1. Send yourself a test email.
|
122 |
|
123 |
= To manually configure OAuth 2.0 Authentication (Advanced users only) =
|
124 |
|
135 |
1. In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
|
136 |
1. Choose the Save Changes button.
|
137 |
1. Choose the 'Request OAuth2 Permission' link and follow the instructions.
|
138 |
+
1. Send yourself a test email.
|
139 |
|
140 |
> Post is developed on OS X with PHP 5.5.14 and Apache 2.4.9. Post is tested in a [Red Hat OpenShift](http://www.openshift.com/) environment with PHP 5.3.3 and Apache 2.2.15 with Gmail, Hotmail and Yahoo Mail (US). Post is tested with [mailtrap.io](http://mailtrap.io).
|
141 |
|
142 |
|
143 |
|
144 |
+
== Frequently Asked Questions ==
|
145 |
|
146 |
= Where is Postman SMTP? =
|
147 |
From 2015-11-08 more or less I can say that Jason the original author stoped maintain the plugin.
|
200 |
= How can I revoke Post's OAuth 2.0 access? =
|
201 |
* If you have a Google Account, from the [Google Developer's Console](https://www.google.com/accounts/Logout?continue=https://console.developers.google.com) use the Delete button under the Client ID.
|
202 |
* If you have a Microsoft Live account, from the [Microsoft account Developer Center](https://account.live.com/developers/applications/index), select the Application and choose Delete Application.
|
203 |
+
* If you have a Yahoo Account, from the [Yahoo Developer Network My Apps](https://developer.yahoo.com/apps/), select the Application and choose Delete App.
|
204 |
|
205 |
|
206 |
|
274 |
1. WordPress Dashboard showing both the Post widget and At a Glance widget
|
275 |
1. Main Settings screen - shows Main Menu and current status (new installation)
|
276 |
1. Setup Wizard (step 1) - Import data from other plugins
|
277 |
+
1. Setup Wizard (step 4) - Connectivity Test
|
278 |
1. Manual Configuration - Account Settings: Password Authentication
|
279 |
1. Manual Configuration - Account Settings: OAuth 2.0 Authentication
|
280 |
1. Manual Configuration - Message Settings
|
289 |
|
290 |
== Changelog ==
|
291 |
|
292 |
+
= 2.0.2 - 2019-05-19
|
293 |
+
* Fixed: Sendgrid code fix.
|
294 |
+
* Fixed: Default method (nothing configured) will use the default mail on the server and not SMTP.
|
295 |
+
|
296 |
= 2.0.1 - 2019-05-15
|
297 |
* New: Mailer Type - Added an option to send without overwrite the 'wp_mail' function, better compability to WordPress delivery. hopefully will be the default in the future.
|
298 |
* Updated: Sendgrid API was upgraded and rewritten to the new version.
|