Version Description
- Added Welcome page on first install.
- Updated error messages.
- Updated debug code for better error handling.
Download this release
Release Info
Developer | dvinson |
Plugin | Popups by OptinMonster – Best WordPress Lead Generation Plugin |
Version | 1.1.4.2 |
Comparing to | |
See all releases |
Code changes from version 1.1.4 to 1.1.4.2
- OMAPI/Api.php +3 -1
- OMAPI/Content.php +1 -1
- OMAPI/Validate.php +8 -3
- OMAPI/Welcome.php +227 -0
- assets/css/images/logo-color-large.png +0 -0
- assets/css/images/logo-color-large@2x.png +0 -0
- assets/css/settings.css +13 -0
- optin-monster-wp-api.php +10 -3
- readme.txt +18 -9
OMAPI/Api.php
CHANGED
@@ -134,6 +134,8 @@ class OMAPI_Api {
|
|
134 |
$headers = array(
|
135 |
'Content-Type' => 'application/x-www-form-urlencoded',
|
136 |
'Content-Length' => strlen( $body ),
|
|
|
|
|
137 |
'OMAPI-Referer' => site_url(),
|
138 |
'OMAPI-Sender' => 'WordPress'
|
139 |
);
|
@@ -150,7 +152,7 @@ class OMAPI_Api {
|
|
150 |
$response = 'GET' == $this->method ? wp_remote_get( esc_url_raw( $this->url ) . '?' . $body, $data ) : wp_remote_post( esc_url_raw( $this->url ), $data );
|
151 |
$response_code = wp_remote_retrieve_response_code( $response );
|
152 |
$response_body = json_decode( wp_remote_retrieve_body( $response ) );
|
153 |
-
//
|
154 |
|
155 |
// Bail out early if there are any errors.
|
156 |
if ( is_wp_error( $response_body ) ) {
|
134 |
$headers = array(
|
135 |
'Content-Type' => 'application/x-www-form-urlencoded',
|
136 |
'Content-Length' => strlen( $body ),
|
137 |
+
'Cache-Control' => 'no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0',
|
138 |
+
'Pragma' => 'no-cache',
|
139 |
'OMAPI-Referer' => site_url(),
|
140 |
'OMAPI-Sender' => 'WordPress'
|
141 |
);
|
152 |
$response = 'GET' == $this->method ? wp_remote_get( esc_url_raw( $this->url ) . '?' . $body, $data ) : wp_remote_post( esc_url_raw( $this->url ), $data );
|
153 |
$response_code = wp_remote_retrieve_response_code( $response );
|
154 |
$response_body = json_decode( wp_remote_retrieve_body( $response ) );
|
155 |
+
// return new WP_Error( 'debug', '<pre>' . var_export( $response, true ) . '</pre>' );
|
156 |
|
157 |
// Bail out early if there are any errors.
|
158 |
if ( is_wp_error( $response_body ) ) {
|
OMAPI/Content.php
CHANGED
@@ -90,7 +90,7 @@ class OMAPI_Content {
|
|
90 |
public function form_start( $id, $panel ) {
|
91 |
|
92 |
?>
|
93 |
-
<form id="omapi-form-<?php echo sanitize_html_class( $id ); ?>" class="omapi-form" method="post" action="<?php echo esc_attr(
|
94 |
<?php wp_nonce_field( 'omapi_nonce_' . $id, 'omapi_nonce_' . $id ); ?>
|
95 |
<input type="hidden" name="omapi_panel" value="<?php echo $id; ?>" />
|
96 |
<input type="hidden" name="omapi_save" value="true" />
|
90 |
public function form_start( $id, $panel ) {
|
91 |
|
92 |
?>
|
93 |
+
<form id="omapi-form-<?php echo sanitize_html_class( $id ); ?>" class="omapi-form" method="post" action="<?php echo esc_attr( stripslashes( $_SERVER['REQUEST_URI'] ) ); ?>">
|
94 |
<?php wp_nonce_field( 'omapi_nonce_' . $id, 'omapi_nonce_' . $id ); ?>
|
95 |
<input type="hidden" name="omapi_panel" value="<?php echo $id; ?>" />
|
96 |
<input type="hidden" name="omapi_save" value="true" />
|
OMAPI/Validate.php
CHANGED
@@ -144,11 +144,16 @@ class OMAPI_Validate {
|
|
144 |
|
145 |
$option = $this->base->get_option();
|
146 |
if ( isset( $option['is_invalid'] ) && $option['is_invalid'] ) {
|
147 |
-
|
|
|
|
|
|
|
148 |
} elseif ( isset( $option['is_disabled'] ) && $option['is_disabled'] ) {
|
149 |
-
echo '<div class="error"><p>' . __( 'The subscription to this
|
|
|
150 |
} elseif ( isset( $option['is_expired'] ) && $option['is_expired'] ) {
|
151 |
-
echo '<div class="error"><p>' . __( 'The subscription to this OptinMonster account has expired. Please renew your subscription to use the OptinMonster API.', 'optin-monster-api' ) . '</p
|
|
|
152 |
}
|
153 |
|
154 |
}
|
144 |
|
145 |
$option = $this->base->get_option();
|
146 |
if ( isset( $option['is_invalid'] ) && $option['is_invalid'] ) {
|
147 |
+
if ( ! ( isset($_GET['page'] ) && $_GET['page'] == 'optin-monster-api-settings') && ! ( isset($_GET['page'] ) && $_GET['page'] == 'optin-monster-api-welcome') ){
|
148 |
+
echo '<div class="error"><p>' . __( 'There was an error verifying your OptinMonster API credentials. They are either missing or they are no longer valid.', 'optin-monster-api' ) . '</p>';
|
149 |
+
echo '<p><a href="' . esc_url_raw( admin_url( 'admin.php?page=optin-monster-api-settings' ) ) . '" class="button button-primary button-large omapi-new-optin" title="View API Settings" >View API Settings</a></p></div>';
|
150 |
+
}
|
151 |
} elseif ( isset( $option['is_disabled'] ) && $option['is_disabled'] ) {
|
152 |
+
echo '<div class="error"><p>' . __( 'The subscription to this OptinMonster account has been disabled, likely due to a refund or other administrator action. Please contact OptinMonster support to resolve this issue.', 'optin-monster-api' ) . '</p>';
|
153 |
+
echo '<p><a href="https://app.optinmonster.com/account/support/" class="button button-primary button-large omapi-new-optin" title="Contact OptinMonster Support" target="_blank">Contact Support</a></p></div>';
|
154 |
} elseif ( isset( $option['is_expired'] ) && $option['is_expired'] ) {
|
155 |
+
echo '<div class="error"><p>' . __( 'The subscription to this OptinMonster account has expired. Please renew your subscription to use the OptinMonster API.', 'optin-monster-api' ) . '</p>';
|
156 |
+
echo '<p><a href="https://app.optinmonster.com/account/billing/" class="button button-primary button-large omapi-new-optin" title="Renew Subscription" target="_blank">Renew Subscription</a></p></div>';
|
157 |
}
|
158 |
|
159 |
}
|
OMAPI/Welcome.php
ADDED
@@ -0,0 +1,227 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Welcome class.
|
4 |
+
*
|
5 |
+
* @since 1.1.4
|
6 |
+
*
|
7 |
+
* @package OMAPI
|
8 |
+
* @author Devin Vinson
|
9 |
+
*/
|
10 |
+
class OMAPI_Welcome {
|
11 |
+
|
12 |
+
/**
|
13 |
+
* Holds the class object.
|
14 |
+
*
|
15 |
+
* @since 1.1.4.2
|
16 |
+
*
|
17 |
+
* @var object
|
18 |
+
*/
|
19 |
+
public static $instance;
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Path to the file.
|
23 |
+
*
|
24 |
+
* @since 1.1.4.2
|
25 |
+
*
|
26 |
+
* @var string
|
27 |
+
*/
|
28 |
+
public $file = __FILE__;
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Holds the base class object.
|
32 |
+
*
|
33 |
+
* @since 1.1.4.2
|
34 |
+
*
|
35 |
+
* @var object
|
36 |
+
*/
|
37 |
+
public $base;
|
38 |
+
|
39 |
+
|
40 |
+
|
41 |
+
public $hook;
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Primary class constructor.
|
45 |
+
*
|
46 |
+
* @since 1.1.4.2
|
47 |
+
*/
|
48 |
+
public function __construct() {
|
49 |
+
|
50 |
+
// Set our object.
|
51 |
+
$this->set();
|
52 |
+
|
53 |
+
//Load the Welcome screen
|
54 |
+
add_action('admin_menu', array($this, 'register_welcome_page') );
|
55 |
+
|
56 |
+
//maybe redirect
|
57 |
+
add_action('admin_init', array( $this, 'maybe_welcome_redirect' ) );
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* Sets our object instance and base class instance.
|
62 |
+
*
|
63 |
+
* @since 1.1.4.2
|
64 |
+
*/
|
65 |
+
public function set() {
|
66 |
+
|
67 |
+
self::$instance = $this;
|
68 |
+
$this->base = OMAPI::get_instance();
|
69 |
+
$this->view = isset( $_GET['optin_monster_api_view'] ) ? stripslashes( $_GET['optin_monster_api_view'] ) : $this->base->get_view();
|
70 |
+
|
71 |
+
}
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Maybe Redirect new users to the welcome page after install.
|
75 |
+
*
|
76 |
+
* @since 1.1.4.2
|
77 |
+
*/
|
78 |
+
public function maybe_welcome_redirect() {
|
79 |
+
|
80 |
+
$options = $this->base->get_option();
|
81 |
+
|
82 |
+
//Check for the new option
|
83 |
+
if ( isset( $options['welcome']['status'] ) ){
|
84 |
+
|
85 |
+
//Check if they have been welcomed
|
86 |
+
if ( $options['welcome']['status'] === 'none' ) {
|
87 |
+
|
88 |
+
//Update the option
|
89 |
+
$options['welcome']['status'] = 'welcomed';
|
90 |
+
update_option('optin_monster_api', $options );
|
91 |
+
|
92 |
+
//If this was not a bulk activate send them to the page
|
93 |
+
if(!isset($_GET['activate-multi']))
|
94 |
+
{
|
95 |
+
wp_redirect('admin.php?page=optin-monster-api-welcome');
|
96 |
+
}
|
97 |
+
|
98 |
+
}
|
99 |
+
|
100 |
+
} else {
|
101 |
+
//welcome option didn't exist so must be pre-existing user updating
|
102 |
+
$options['welcome']['status'] = 'welcomed';
|
103 |
+
update_option('optin_monster_api', $options );
|
104 |
+
}
|
105 |
+
|
106 |
+
|
107 |
+
}
|
108 |
+
|
109 |
+
/**
|
110 |
+
* Loads the OptinMonster admin menu.
|
111 |
+
*
|
112 |
+
* @since 1.1.4.2
|
113 |
+
*/
|
114 |
+
public function register_welcome_page() {
|
115 |
+
|
116 |
+
$this->hook = add_submenu_page(
|
117 |
+
__( 'OptinMonster', 'optin-monster-api' ), //parent slug
|
118 |
+
__( 'Welcome to OptinMonster', 'optin-monster-api' ), //page title,
|
119 |
+
__( 'Welcome', 'optin-monster-api'),
|
120 |
+
apply_filters( 'optin_monster_api_menu_cap', 'manage_options' ), //cap
|
121 |
+
'optin-monster-api-welcome', //slug
|
122 |
+
array($this, 'callback_to_display_page') //callback
|
123 |
+
);
|
124 |
+
|
125 |
+
// Load settings page assets.
|
126 |
+
if ( $this->hook ) {
|
127 |
+
add_action( 'load-' . $this->hook, array( $this, 'assets' ) );
|
128 |
+
}
|
129 |
+
|
130 |
+
|
131 |
+
|
132 |
+
}
|
133 |
+
|
134 |
+
/**
|
135 |
+
* Outputs the OptinMonster settings page.
|
136 |
+
*
|
137 |
+
* @since 1.1.4.2
|
138 |
+
*/
|
139 |
+
public function callback_to_display_page() {
|
140 |
+
|
141 |
+
//Load options if needed
|
142 |
+
$options = $this->base->get_option();
|
143 |
+
|
144 |
+
?>
|
145 |
+
<div class="wrap omapi-page">
|
146 |
+
|
147 |
+
<div id="welcome-panel" class="welcome-panel">
|
148 |
+
|
149 |
+
<div class="welcome-panel-content">
|
150 |
+
<div class="logo"><h2>Welcome to OptinMonster</h2></div>
|
151 |
+
|
152 |
+
|
153 |
+
|
154 |
+
<div class="welcome-panel-column-container">
|
155 |
+
|
156 |
+
<p class="intro-description"><?php _e('Welcome to OptinMonster - the best plugin for growing your email list and getting more subscribers.','optin-monster-api') ?></p>
|
157 |
+
<p><?php _e('OptinMonster is a powerful conversion optimization tool that integrates with all web platforms including WordPress.','optin-monster-api') ?></p>
|
158 |
+
<p><?php _e('In order to take advantage of this plugin, you must have an OptinMonster account.','optin-monster-api') ?></p>
|
159 |
+
|
160 |
+
<h4><?php _e('Already have an account?','optin-monster-api') ?></h4>
|
161 |
+
<p><a class="button button-primary button-hero" href="<?php echo esc_url_raw( admin_url( 'admin.php?page=optin-monster-api-settings' ) ) ?>"><?php _e('Get Connected','optin-monster-api');?></a></p>
|
162 |
+
|
163 |
+
<h4><?php _e('New to OptinMonster?','optin-monster-api') ?></h4>
|
164 |
+
<p><a class="button button-primary button-hero" href="http://optinmonster.com/pricing/" target="_blank"><?php _e('Create Your Account','optin-monster-api') ?></a> or <a href="http://optinmonster.com/how-it-works/" target="_blank"><?php _e('See How it Works','optin-monster-api') ?></a>.</p>
|
165 |
+
|
166 |
+
|
167 |
+
|
168 |
+
|
169 |
+
</div>
|
170 |
+
</div>
|
171 |
+
|
172 |
+
</div>
|
173 |
+
|
174 |
+
|
175 |
+
</div>
|
176 |
+
<?php
|
177 |
+
|
178 |
+
}
|
179 |
+
|
180 |
+
/**
|
181 |
+
* Loads assets for the settings page.
|
182 |
+
*
|
183 |
+
* @since 1.1.4.2
|
184 |
+
*/
|
185 |
+
public function assets() {
|
186 |
+
|
187 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'styles' ) );
|
188 |
+
add_filter( 'admin_footer_text', array( $this, 'footer' ) );
|
189 |
+
|
190 |
+
}
|
191 |
+
|
192 |
+
/**
|
193 |
+
* Register and enqueue settings page specific CSS.
|
194 |
+
*
|
195 |
+
* @since 1.1.4.2
|
196 |
+
*/
|
197 |
+
public function styles() {
|
198 |
+
|
199 |
+
wp_register_style( $this->base->plugin_slug . '-settings', plugins_url( '/assets/css/settings.css', $this->base->file ), array(), $this->base->version );
|
200 |
+
wp_enqueue_style( $this->base->plugin_slug . '-settings' );
|
201 |
+
|
202 |
+
|
203 |
+
}
|
204 |
+
|
205 |
+
|
206 |
+
/**
|
207 |
+
* Customizes the footer text on the OptinMonster settings page.
|
208 |
+
*
|
209 |
+
* @since 1.0.0
|
210 |
+
*
|
211 |
+
* @param string $text The default admin footer text.
|
212 |
+
* @return string $text Amended admin footer text.
|
213 |
+
*/
|
214 |
+
public function footer( $text ) {
|
215 |
+
|
216 |
+
$new_text = sprintf( __( 'Thank you for using <a href="%1$s" target="_blank">OptinMonster</a>!', 'optin-monster-api' ),
|
217 |
+
'http://optinmonster.com'
|
218 |
+
);
|
219 |
+
return str_replace( '</span>', '', $text ) . ' | ' . $new_text . '</span>';
|
220 |
+
|
221 |
+
}
|
222 |
+
|
223 |
+
|
224 |
+
|
225 |
+
|
226 |
+
|
227 |
+
}
|
assets/css/images/logo-color-large.png
ADDED
Binary file
|
assets/css/images/logo-color-large@2x.png
ADDED
Binary file
|
assets/css/settings.css
CHANGED
@@ -37,6 +37,19 @@
|
|
37 |
.omapi-green {
|
38 |
color: green !important;
|
39 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
|
41 |
.omapi-page h2 span {
|
42 |
font-size: 13px;
|
37 |
.omapi-green {
|
38 |
color: green !important;
|
39 |
}
|
40 |
+
/* Welcome Panel Styles */
|
41 |
+
.omapi-page .logo h2 {
|
42 |
+
display: block;
|
43 |
+
text-indent: -9999px;
|
44 |
+
overflow: hidden;
|
45 |
+
background: url(images/logo-color-large@2x.png) no-repeat;
|
46 |
+
background-size: contain;
|
47 |
+
height: 64px;
|
48 |
+
width: 430px;
|
49 |
+
}
|
50 |
+
p.intro-description {
|
51 |
+
font-size: 16px;
|
52 |
+
}
|
53 |
|
54 |
.omapi-page h2 span {
|
55 |
font-size: 13px;
|
optin-monster-wp-api.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* Description: OptinMonster API plugin to connect your WordPress site to your OptinMonster forms.
|
6 |
* Author: Thomas Griffin
|
7 |
* Author URI: https://thomasgriffin.io
|
8 |
-
* Version: 1.1.4
|
9 |
* Text Domain: optin-monster-api
|
10 |
* Domain Path: languages
|
11 |
*
|
@@ -57,7 +57,7 @@ class OMAPI {
|
|
57 |
*
|
58 |
* @var string
|
59 |
*/
|
60 |
-
public $version = '1.1.4';
|
61 |
|
62 |
/**
|
63 |
* The name of the plugin.
|
@@ -204,6 +204,7 @@ class OMAPI {
|
|
204 |
$this->save = new OMAPI_Save();
|
205 |
$this->refresh = new OMAPI_Refresh();
|
206 |
$this->validate = new OMAPI_Validate();
|
|
|
207 |
|
208 |
// Fire a hook to say that the admin classes are loaded.
|
209 |
do_action( 'optin_monster_api_admin_loaded' );
|
@@ -400,7 +401,12 @@ class OMAPI {
|
|
400 |
'optins' => array(),
|
401 |
'is_expired' => false,
|
402 |
'is_disabled' => false,
|
403 |
-
'is_invalid' => false
|
|
|
|
|
|
|
|
|
|
|
404 |
);
|
405 |
return apply_filters( 'optin_monster_api_default_options', $options );
|
406 |
|
@@ -487,6 +493,7 @@ function optin_monster_api_activation_hook( $network_wide ) {
|
|
487 |
if ( ! $option || empty( $option ) ) {
|
488 |
update_option( 'optin_monster_api', OMAPI::default_options() );
|
489 |
}
|
|
|
490 |
}
|
491 |
|
492 |
}
|
5 |
* Description: OptinMonster API plugin to connect your WordPress site to your OptinMonster forms.
|
6 |
* Author: Thomas Griffin
|
7 |
* Author URI: https://thomasgriffin.io
|
8 |
+
* Version: 1.1.4.2
|
9 |
* Text Domain: optin-monster-api
|
10 |
* Domain Path: languages
|
11 |
*
|
57 |
*
|
58 |
* @var string
|
59 |
*/
|
60 |
+
public $version = '1.1.4.2';
|
61 |
|
62 |
/**
|
63 |
* The name of the plugin.
|
204 |
$this->save = new OMAPI_Save();
|
205 |
$this->refresh = new OMAPI_Refresh();
|
206 |
$this->validate = new OMAPI_Validate();
|
207 |
+
$this->welcome = new OMAPI_Welcome();
|
208 |
|
209 |
// Fire a hook to say that the admin classes are loaded.
|
210 |
do_action( 'optin_monster_api_admin_loaded' );
|
401 |
'optins' => array(),
|
402 |
'is_expired' => false,
|
403 |
'is_disabled' => false,
|
404 |
+
'is_invalid' => false,
|
405 |
+
'welcome' => array(
|
406 |
+
'status' => 'none', //none, welcomed
|
407 |
+
'review' => 'ask', //ask, asked, dismissed
|
408 |
+
'version' => '1141', //base to check against
|
409 |
+
)
|
410 |
);
|
411 |
return apply_filters( 'optin_monster_api_default_options', $options );
|
412 |
|
493 |
if ( ! $option || empty( $option ) ) {
|
494 |
update_option( 'optin_monster_api', OMAPI::default_options() );
|
495 |
}
|
496 |
+
|
497 |
}
|
498 |
|
499 |
}
|
readme.txt
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
Contributors: griffinjt, smub
|
3 |
Tags: wordpress popup, popup, lightbox popup, mailchimp, aweber, campaign monitor, constant contact, exit-intent, madmimi, infusionsoft, getresponse, hubspot, marketo, activecampaign, pardot, totalsend, emma, icontact, mailerlite, mailpoet, google analytics, pop over, optin forms, email list, subscribers, wordpress popup form, lightbox, wordpress popups, popups, lightbox popups, optin form, wordpress optin form, sidebar optin form, sidebar optin, sidebar form, wordpress overlay popup, wordpress popup plugin, popup plugin, wordpress lightbox optin, wordpress lightbox optin form, after post optin form, wordpress after post optin form, after post optin form plugin, lightbox popup plugin, wordpress popup solution, exit intent, exit-intent, optinmonster, optin monster, optin-monster, mobile popup, mobile popups, mobile optin forms, mobile optins, lightbox optins, wordpress mobile popup, wordpress mobile popups, wordpress mobile optin forms, wordpress lightbox optins, lead gen, lead generation, wordpress lead generation, lead generation wordpress, wordpress lead gen, fullscreen, welcome gate, interstitial
|
4 |
Requires at least: 3.5.1
|
5 |
-
Tested up to: 4.3
|
6 |
Stable tag: trunk
|
7 |
License: GNU General Public License v2.0 or later
|
8 |
|
@@ -10,9 +10,10 @@ OptinMonster helps you grow your email list by converting visitors into subscrib
|
|
10 |
|
11 |
== Description ==
|
12 |
|
13 |
-
|
|
|
14 |
|
15 |
-
OptinMonster comes with an easy to use form builder that allows you to create beautiful optin forms that are proven to convert. You can create various type of optins including WordPress
|
16 |
|
17 |
Using OptinMonster forms combined with our exit-intent technology, page-level targeting, and behavior automation, users have seen an instant boost in conversion rate, _even upwards of 785%!_
|
18 |
|
@@ -25,13 +26,13 @@ Let's take a look at how OptinMonster can help you get more email subscribers.
|
|
25 |
|
26 |
OptinMonster allows you to build high converting opt-in forms in minutes, not hours!
|
27 |
|
28 |
-
You can choose from 8 different type of optins including:
|
29 |
|
30 |
All of our templates are 100% responsive and mobile friendly.
|
31 |
|
32 |
= Easy Integration with All Email Marketing Services =
|
33 |
|
34 |
-
We started with the goal to make the most beginner friendly lead
|
35 |
|
36 |
MailChimp, AWeber, Infusionsoft, GetResponse, ConstantContact, CampaignMonitor, Hubspot, Marketo, ActiveCampaign, Pardot, TotalSend, Emma, iContact, MailerLite, Customer.io, MailPoet, and FeedBlitz.
|
37 |
|
@@ -96,10 +97,10 @@ Most people don't know what to do with analytics because they don't understand t
|
|
96 |
* Our signature Exit Intent™ technology to convert abandoning website visitors into subscribers and customers.
|
97 |
* Powerful A/B testing that helps you eliminate guess work and make data driven decisions on what works best.
|
98 |
* MonsterLinks™ 2-step optin technology **which is proven to boost conversions by as much as 785%!**
|
99 |
-
* Mobile specific
|
100 |
-
* Scroll triggered
|
101 |
-
* Timed
|
102 |
-
* Canvas
|
103 |
* MonsterEffects™ technology for eye-catching popup animations.
|
104 |
* Success messages and redirects
|
105 |
* Easy integration with over 19 different email marketing service providers
|
@@ -147,6 +148,14 @@ OptinMonster is the <a href="http://optinmonster.com" rel="friend" title="OptinM
|
|
147 |
|
148 |
== Changelog ==
|
149 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
150 |
= 1.1.4 =
|
151 |
* Fixed bug with adblock.
|
152 |
* Added new API script with easier updates.
|
2 |
Contributors: griffinjt, smub
|
3 |
Tags: wordpress popup, popup, lightbox popup, mailchimp, aweber, campaign monitor, constant contact, exit-intent, madmimi, infusionsoft, getresponse, hubspot, marketo, activecampaign, pardot, totalsend, emma, icontact, mailerlite, mailpoet, google analytics, pop over, optin forms, email list, subscribers, wordpress popup form, lightbox, wordpress popups, popups, lightbox popups, optin form, wordpress optin form, sidebar optin form, sidebar optin, sidebar form, wordpress overlay popup, wordpress popup plugin, popup plugin, wordpress lightbox optin, wordpress lightbox optin form, after post optin form, wordpress after post optin form, after post optin form plugin, lightbox popup plugin, wordpress popup solution, exit intent, exit-intent, optinmonster, optin monster, optin-monster, mobile popup, mobile popups, mobile optin forms, mobile optins, lightbox optins, wordpress mobile popup, wordpress mobile popups, wordpress mobile optin forms, wordpress lightbox optins, lead gen, lead generation, wordpress lead generation, lead generation wordpress, wordpress lead gen, fullscreen, welcome gate, interstitial
|
4 |
Requires at least: 3.5.1
|
5 |
+
Tested up to: 4.3.1
|
6 |
Stable tag: trunk
|
7 |
License: GNU General Public License v2.0 or later
|
8 |
|
10 |
|
11 |
== Description ==
|
12 |
|
13 |
+
= WordPress Popup Plugin =
|
14 |
+
Did you know that over 70% of website visitors who leave your website will never return? Why? Because most people find your blog, read, and leave (that's just a natural pattern). Wouldn't it be nice if you can convert some of those people to subscribe to your blog? That's where <a href="http://optinmonster.com" rel="friend" title="OptinMonster">OptinMonster</a> can help. OptinMonster helps you grow your email list and get more subscribers with popup and other types of high converting optin forms.
|
15 |
|
16 |
+
OptinMonster comes with an easy to use form builder that allows you to create beautiful optin forms that are proven to convert. You can create various type of optins including WordPress popup forms, floating header and footer bars, slide-ins also known as scroll triggered boxes, sidebar forms, after post forms, in-line forms, mobile-specific forms, welcome gates and more.
|
17 |
|
18 |
Using OptinMonster forms combined with our exit-intent technology, page-level targeting, and behavior automation, users have seen an instant boost in conversion rate, _even upwards of 785%!_
|
19 |
|
26 |
|
27 |
OptinMonster allows you to build high converting opt-in forms in minutes, not hours!
|
28 |
|
29 |
+
You can choose from 8 different type of optins including: popup forms, floating bars, slide-ins, sidebar forms, after-post forms, in-line forms, mobile-only popup forms, and Canvas.
|
30 |
|
31 |
All of our templates are 100% responsive and mobile friendly.
|
32 |
|
33 |
= Easy Integration with All Email Marketing Services =
|
34 |
|
35 |
+
We started with the goal to make the most beginner friendly lead generation plugin. That's why OptinMonster works out of the box with all popular email marketing service providers including but not limited to:
|
36 |
|
37 |
MailChimp, AWeber, Infusionsoft, GetResponse, ConstantContact, CampaignMonitor, Hubspot, Marketo, ActiveCampaign, Pardot, TotalSend, Emma, iContact, MailerLite, Customer.io, MailPoet, and FeedBlitz.
|
38 |
|
97 |
* Our signature Exit Intent™ technology to convert abandoning website visitors into subscribers and customers.
|
98 |
* Powerful A/B testing that helps you eliminate guess work and make data driven decisions on what works best.
|
99 |
* MonsterLinks™ 2-step optin technology **which is proven to boost conversions by as much as 785%!**
|
100 |
+
* Mobile specific popup forms that are specifically targeted towards mobile visitors.
|
101 |
+
* Scroll triggered popup and optin forms for enhanced conversion rates.
|
102 |
+
* Timed popup forms - display opt-ins after a certain time or on second pageview.
|
103 |
+
* Canvas popup forms - use Canvas to add facebook like box, WooCommerce products, or anything else that you like.
|
104 |
* MonsterEffects™ technology for eye-catching popup animations.
|
105 |
* Success messages and redirects
|
106 |
* Easy integration with over 19 different email marketing service providers
|
148 |
|
149 |
== Changelog ==
|
150 |
|
151 |
+
= 1.1.4.2 =
|
152 |
+
* Added Welcome page on first install.
|
153 |
+
* Updated error messages.
|
154 |
+
* Updated debug code for better error handling.
|
155 |
+
|
156 |
+
= 1.1.4.1 =
|
157 |
+
* Added No-Cache headers on API requests.
|
158 |
+
|
159 |
= 1.1.4 =
|
160 |
* Fixed bug with adblock.
|
161 |
* Added new API script with easier updates.
|