Version Description
Download this release
Release Info
Developer | Icegram |
Plugin | Email Subscribers & Newsletters |
Version | 4.3.9 |
Comparing to | |
See all releases |
Code changes from version 4.3.8 to 4.3.9
email-subscribers.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Email Subscribers & Newsletters
|
4 |
* Plugin URI: https://www.icegram.com/
|
5 |
* Description: Add subscription forms on website, send HTML newsletters & automatically notify subscribers about new blog posts once it is published.
|
6 |
-
* Version: 4.3.
|
7 |
* Author: Icegram
|
8 |
* Author URI: https://www.icegram.com/
|
9 |
* Requires at least: 3.9
|
@@ -111,7 +111,7 @@ if ( $is_premium ) {
|
|
111 |
/* ***************************** Initial Compatibility Work (End) ******************* */
|
112 |
|
113 |
if ( ! defined( 'ES_PLUGIN_VERSION' ) ) {
|
114 |
-
define( 'ES_PLUGIN_VERSION', '4.3.
|
115 |
}
|
116 |
|
117 |
// Plugin Folder Path.
|
3 |
* Plugin Name: Email Subscribers & Newsletters
|
4 |
* Plugin URI: https://www.icegram.com/
|
5 |
* Description: Add subscription forms on website, send HTML newsletters & automatically notify subscribers about new blog posts once it is published.
|
6 |
+
* Version: 4.3.9
|
7 |
* Author: Icegram
|
8 |
* Author URI: https://www.icegram.com/
|
9 |
* Requires at least: 3.9
|
111 |
/* ***************************** Initial Compatibility Work (End) ******************* */
|
112 |
|
113 |
if ( ! defined( 'ES_PLUGIN_VERSION' ) ) {
|
114 |
+
define( 'ES_PLUGIN_VERSION', '4.3.9' );
|
115 |
}
|
116 |
|
117 |
// Plugin Folder Path.
|
lite/includes/class-email-subscribers.php
CHANGED
@@ -79,6 +79,15 @@ if ( ! class_exists( 'Email_Subscribers' ) ) {
|
|
79 |
*/
|
80 |
public $cron;
|
81 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
/**
|
83 |
* ES_DB_Actions object
|
84 |
*
|
@@ -633,6 +642,7 @@ if ( ! class_exists( 'Email_Subscribers' ) ) {
|
|
633 |
'lite/includes/classes/class-es-subscription-throttling.php',
|
634 |
'lite/includes/classes/class-es-actions.php',
|
635 |
'lite/includes/classes/class-es-tracking.php',
|
|
|
636 |
|
637 |
// Core Functions
|
638 |
'lite/includes/es-core-functions.php',
|
@@ -941,6 +951,7 @@ if ( ! class_exists( 'Email_Subscribers' ) ) {
|
|
941 |
self::$instance->queue = new ES_Queue();
|
942 |
self::$instance->actions = new ES_Actions();
|
943 |
self::$instance->cron = new ES_Cron();
|
|
|
944 |
|
945 |
if ( is_admin() ) {
|
946 |
$ig_es_feedback_class = 'IG_Feedback_V_' . str_replace( '.', '_', IG_ES_FEEDBACK_TRACKER_VERSION );
|
79 |
*/
|
80 |
public $cron;
|
81 |
|
82 |
+
/**
|
83 |
+
* ES_Compatibility object
|
84 |
+
*
|
85 |
+
* @since 4.3.9
|
86 |
+
* @var object|ES_Compatibility
|
87 |
+
*
|
88 |
+
*/
|
89 |
+
public $compatibiloty;
|
90 |
+
|
91 |
/**
|
92 |
* ES_DB_Actions object
|
93 |
*
|
642 |
'lite/includes/classes/class-es-subscription-throttling.php',
|
643 |
'lite/includes/classes/class-es-actions.php',
|
644 |
'lite/includes/classes/class-es-tracking.php',
|
645 |
+
'lite/includes/classes/class-es-compatibility.php',
|
646 |
|
647 |
// Core Functions
|
648 |
'lite/includes/es-core-functions.php',
|
951 |
self::$instance->queue = new ES_Queue();
|
952 |
self::$instance->actions = new ES_Actions();
|
953 |
self::$instance->cron = new ES_Cron();
|
954 |
+
self::$instance->compatibiloty = new ES_Compatibility();
|
955 |
|
956 |
if ( is_admin() ) {
|
957 |
$ig_es_feedback_class = 'IG_Feedback_V_' . str_replace( '.', '_', IG_ES_FEEDBACK_TRACKER_VERSION );
|
lite/includes/classes/class-es-compatibility.php
ADDED
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Exit if accessed directly
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit;
|
5 |
+
}
|
6 |
+
|
7 |
+
if ( ! class_exists( 'ES_Compatibility' ) ) {
|
8 |
+
/**
|
9 |
+
* Make ES Compatible with other plugins
|
10 |
+
*
|
11 |
+
* Class ES_Compatibility
|
12 |
+
*
|
13 |
+
* @since 4.3.9
|
14 |
+
*/
|
15 |
+
class ES_Compatibility {
|
16 |
+
/**
|
17 |
+
* ES_Compatibility constructor.
|
18 |
+
*
|
19 |
+
* @since 4.3.9
|
20 |
+
*/
|
21 |
+
public function __construct() {
|
22 |
+
add_filter( 'wp_mail_smtp_providers_mailer_get_body', array( $this, 'wp_mail_smtp_modify_header' ), 10, 2 );
|
23 |
+
}
|
24 |
+
|
25 |
+
/**
|
26 |
+
* Outlook require X-Return-Path instead of Return-Path as a header
|
27 |
+
* So,we can handle it using 'wp_mail_smtp_providers_mailer_get_body'
|
28 |
+
* filter of WP Mail SMTP plugin.
|
29 |
+
*
|
30 |
+
* @param $body
|
31 |
+
* @param $mailer
|
32 |
+
*
|
33 |
+
* @return mixed
|
34 |
+
*
|
35 |
+
* @since 4.3.9
|
36 |
+
*/
|
37 |
+
public function wp_mail_smtp_modify_header( $body, $mailer ) {
|
38 |
+
|
39 |
+
if ( 'outlook' === $mailer ) {
|
40 |
+
$headers = $body['message']['internetMessageHeaders'];
|
41 |
+
foreach ( $headers as $key => $header ) {
|
42 |
+
if ( 'Return-Path' === $header['name'] ) {
|
43 |
+
$body['message']['internetMessageHeaders'][ $key ]['name'] = 'X-Return-Path';
|
44 |
+
}
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
return $body;
|
49 |
+
}
|
50 |
+
}
|
51 |
+
}
|
lite/includes/classes/class-es-import-subscribers.php
CHANGED
@@ -80,6 +80,7 @@ class ES_Import_Subscribers {
|
|
80 |
$existing_contacts = array();
|
81 |
if ( count( $existing_contacts_email_id_map ) > 0 ) {
|
82 |
$existing_contacts = array_keys( $existing_contacts_email_id_map );
|
|
|
83 |
}
|
84 |
|
85 |
$invalid_emails_count = $imported_subscribers_count = $existing_contacts_count = 0;
|
@@ -95,7 +96,7 @@ class ES_Import_Subscribers {
|
|
95 |
|
96 |
$data = array_combine( $headers, $data );
|
97 |
|
98 |
-
$email = isset( $data['Email'] ) ? sanitize_email( trim( $data['Email'] ) ) : '';
|
99 |
|
100 |
if ( empty( $email ) ) {
|
101 |
$invalid_emails_count ++;
|
80 |
$existing_contacts = array();
|
81 |
if ( count( $existing_contacts_email_id_map ) > 0 ) {
|
82 |
$existing_contacts = array_keys( $existing_contacts_email_id_map );
|
83 |
+
$existing_contacts = array_map( 'strtolower', $existing_contacts );
|
84 |
}
|
85 |
|
86 |
$invalid_emails_count = $imported_subscribers_count = $existing_contacts_count = 0;
|
96 |
|
97 |
$data = array_combine( $headers, $data );
|
98 |
|
99 |
+
$email = isset( $data['Email'] ) ? strtolower( sanitize_email( trim( $data['Email'] ) ) ) : '';
|
100 |
|
101 |
if ( empty( $email ) ) {
|
102 |
$invalid_emails_count ++;
|
readme.txt
CHANGED
@@ -5,7 +5,7 @@ Author URI: https://www.icegram.com/
|
|
5 |
Tags: subscription, newsletter, email marketing, post notification, email newsletter form, email signup, email widget, newsletter signup, subscribe, subscription form, bulk emails, signup form, list builder, lead generation, welcome email, contacts
|
6 |
Requires at least: 3.9
|
7 |
Tested up to: 5.3.2
|
8 |
-
Stable tag: 4.3.
|
9 |
License: GPLv3
|
10 |
License URI: http://www.gnu.org/licenses
|
11 |
|
@@ -299,6 +299,10 @@ Refer [here](https://www.icegram.com/documentation/es-faq/).
|
|
299 |
|
300 |
== Changelog ==
|
301 |
|
|
|
|
|
|
|
|
|
302 |
**4.3.8 (25.12.2019)**
|
303 |
* Fix: Include Javascript issue with localised WordPress
|
304 |
* Fix: Duplicate entries of contacts
|
5 |
Tags: subscription, newsletter, email marketing, post notification, email newsletter form, email signup, email widget, newsletter signup, subscribe, subscription form, bulk emails, signup form, list builder, lead generation, welcome email, contacts
|
6 |
Requires at least: 3.9
|
7 |
Tested up to: 5.3.2
|
8 |
+
Stable tag: 4.3.9
|
9 |
License: GPLv3
|
10 |
License URI: http://www.gnu.org/licenses
|
11 |
|
299 |
|
300 |
== Changelog ==
|
301 |
|
302 |
+
**4.3.9 (08.01.2020)**
|
303 |
+
* Update: Added compatibility with Outlook mailer of WP Mail SMTP plugin. (Thanks to [@kinderkeuken](https://profiles.wordpress.org/kinderkeuken/) for help us debugging)
|
304 |
+
* Fix: Duplicate email import issue.
|
305 |
+
|
306 |
**4.3.8 (25.12.2019)**
|
307 |
* Fix: Include Javascript issue with localised WordPress
|
308 |
* Fix: Duplicate entries of contacts
|