Email Encoder Bundle – Protect Email Address - Version 2.1.3

Version Description

Download this release

Release Info

Developer ironikus
Plugin Icon 128x128 Email Encoder Bundle – Protect Email Address
Version 2.1.3
Comparing to
See all releases

Code changes from version 2.1.2 to 2.1.3

core/includes/classes/class-email-encoder-bundle-run.php CHANGED
@@ -171,7 +171,7 @@ class Email_Encoder_Run{
171
  $original_callback = $wp_registered_widgets[ $widget_id ]['_wo_original_callback'];
172
  $wp_registered_widgets[ $widget_id ]['callback'] = $original_callback;
173
 
174
- $widget_id_base = $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base;
175
 
176
  if ( is_callable( $original_callback ) ) {
177
  ob_start();
@@ -457,8 +457,13 @@ class Email_Encoder_Run{
457
  $extra_attrs = $atts['extra_attrs'];
458
  }
459
 
460
- if( empty( $atts['method'] ) ){
461
- $method = 'rot13';
 
 
 
 
 
462
  } else {
463
  $method = sanitize_title( $atts['method'] );
464
  }
@@ -490,6 +495,18 @@ class Email_Encoder_Run{
490
  case 'escape':
491
  $mailto = EEB()->validate->encode_escape( $mailto, $noscript );
492
  break;
 
 
 
 
 
 
 
 
 
 
 
 
493
  case 'enc_html':
494
  case 'encode':
495
  default:
171
  $original_callback = $wp_registered_widgets[ $widget_id ]['_wo_original_callback'];
172
  $wp_registered_widgets[ $widget_id ]['callback'] = $original_callback;
173
 
174
+ $widget_id_base = ( isset( $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base ) ) ? $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base : 0;
175
 
176
  if ( is_callable( $original_callback ) ) {
177
  ob_start();
457
  $extra_attrs = $atts['extra_attrs'];
458
  }
459
 
460
+ if( ! isset( $atts['method'] ) || empty( $atts['method'] ) ){
461
+ $protect_using = (string) EEB()->settings->get_setting( 'protect_using', true );
462
+ if( ! empty( $protect_using ) ){
463
+ $method = $protect_using;
464
+ } else {
465
+ $method = 'rot13'; //keep as fallback
466
+ }
467
  } else {
468
  $method = sanitize_title( $atts['method'] );
469
  }
495
  case 'escape':
496
  $mailto = EEB()->validate->encode_escape( $mailto, $noscript );
497
  break;
498
+ case 'with_javascript':
499
+ $mailto = EEB()->validate->dynamic_js_email_encoding( $mailto, $noscript );
500
+ break;
501
+ case 'without_javascript':
502
+ $mailto = EEB()->validate->encode_email_css( $mailto );
503
+ break;
504
+ case 'char_encode':
505
+ $mailto = EEB()->validate->filter_plain_emails( $mailto, null, 'char_encode' );
506
+ break;
507
+ case 'strong_method':
508
+ $mailto = EEB()->validate->filter_plain_emails( $mailto );
509
+ break;
510
  case 'enc_html':
511
  case 'encode':
512
  default:
core/includes/functions/template-tags.php CHANGED
@@ -37,6 +37,13 @@ if (!function_exists('eeb_mailto')):
37
  $class_name = ' ' . trim($extra_attrs);
38
  $class_name .= ' class="' . esc_attr( $custom_class ) . '"';
39
  $mailto = '<a href="mailto:' . $email . '"'. $class_name . '>' . $display . '</a>';
 
 
 
 
 
 
 
40
 
41
  switch( $method ){
42
  case 'enc_ascii':
@@ -47,6 +54,18 @@ if (!function_exists('eeb_mailto')):
47
  case 'escape':
48
  $mailto = EEB()->validate->encode_escape( $mailto, $display );
49
  break;
 
 
 
 
 
 
 
 
 
 
 
 
50
  case 'enc_html':
51
  case 'encode':
52
  default:
37
  $class_name = ' ' . trim($extra_attrs);
38
  $class_name .= ' class="' . esc_attr( $custom_class ) . '"';
39
  $mailto = '<a href="mailto:' . $email . '"'. $class_name . '>' . $display . '</a>';
40
+
41
+ if( empty( $method ) ){
42
+ $protect_using = (string) EEB()->settings->get_setting( 'protect_using', true );
43
+ if( ! empty( $protect_using ) ){
44
+ $method = $protect_using;
45
+ }
46
+ }
47
 
48
  switch( $method ){
49
  case 'enc_ascii':
54
  case 'escape':
55
  $mailto = EEB()->validate->encode_escape( $mailto, $display );
56
  break;
57
+ case 'with_javascript':
58
+ $mailto = EEB()->validate->dynamic_js_email_encoding( $mailto, $display );
59
+ break;
60
+ case 'without_javascript':
61
+ $mailto = EEB()->validate->encode_email_css( $mailto );
62
+ break;
63
+ case 'char_encode':
64
+ $mailto = EEB()->validate->filter_plain_emails( $mailto, null, 'char_encode' );
65
+ break;
66
+ case 'strong_method':
67
+ $mailto = EEB()->validate->filter_plain_emails( $mailto );
68
+ break;
69
  case 'enc_html':
70
  case 'encode':
71
  default:
email-encoder-bundle.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /**
3
  * Plugin Name: Email Encoder - Protect Email Addresses
4
- * Version: 2.1.2
5
  * Plugin URI: https://wordpress.org/plugins/email-encoder-bundle/
6
  * Description: Protect email addresses on your site and hide them from spambots. Easy to use & flexible.
7
  * Author: Ironikus
8
- * Author URI: https://ironikus.com/
9
  * License: Dual licensed under the MIT and GPL licenses
10
  * Text Domain: email-encoder-bundle
11
  *
@@ -22,7 +22,7 @@ if ( !defined( 'ABSPATH' ) ) exit;
22
  define( 'EEB_NAME', 'Email Encoder' );
23
 
24
  // Plugin version.
25
- define( 'EEB_VERSION', '2.1.2' );
26
 
27
  // Determines if the plugin is loaded
28
  define( 'EEB_SETUP', true );
1
  <?php
2
  /**
3
  * Plugin Name: Email Encoder - Protect Email Addresses
4
+ * Version: 2.1.3
5
  * Plugin URI: https://wordpress.org/plugins/email-encoder-bundle/
6
  * Description: Protect email addresses on your site and hide them from spambots. Easy to use & flexible.
7
  * Author: Ironikus
8
+ * Author URI: https://wpemailencoder.com/
9
  * License: Dual licensed under the MIT and GPL licenses
10
  * Text Domain: email-encoder-bundle
11
  *
22
  define( 'EEB_NAME', 'Email Encoder' );
23
 
24
  // Plugin version.
25
+ define( 'EEB_VERSION', '2.1.3' );
26
 
27
  // Determines if the plugin is loaded
28
  define( 'EEB_SETUP', true );
readme.txt CHANGED
@@ -1,19 +1,23 @@
1
- === Email Encoder - Protect Email Addresses ===
2
  Contributors: ironikus
3
  Tags: anti spam, protect, encode, encrypt, hide, antispam, phone number, spambot, secure, e-mail, email, mail
4
  Requires at least: 4.7
5
  Requires PHP: 5.1
6
- Tested up to: 5.8
7
- Stable tag: 2.1.2
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
 
 
 
 
10
 
11
  Protect email addresses and phone numbers on your site and hide them from spambots. Easy to use & flexible.
12
 
13
  == Description ==
14
 
15
  Full site protection for your email addresses from spam-bots, email harvesters and other robots. No configuration needed.
16
- Also supports [foggy.email](https://foggy.email/) and protects phone numbers or any other text using our integrated `[eeb_protect_content]` shortcode or href attribute encoding.
17
 
18
  = Features =
19
  * Full page protection for all of your emails
@@ -32,11 +36,6 @@ Also supports [foggy.email](https://foggy.email/) and protects phone numbers or
32
  * Also supports special chars, like é, â, ö, Chinese characters etcetera
33
  * Use the Encoder Form to manually create encoded scripts
34
 
35
- = Foggy Email Integration =
36
- This plugin is fully integrated with [foggy.email](https://foggy.email/) to protect your emails on the next level.
37
- Foggy Email allows you to create protected emails to hide your real email address. In combination with Email Encoder, it will create for each email on your website a protected email address to hide your real one.
38
- Example: me@myemail.com will be converted to hgulo@foggy.email - Your website visitor will see hgulo@foggy.email on your website instead your real email. Once they send an email to this address, it gets automatically forwarded to your inbox.
39
-
40
  = Compatibilities =
41
  * The plugin works with mostly any theme and plugin. Some special ones need special treatment. Down below you can learn more about that.
42
  * Compatible with the Maintenance plugin from WP Maintenance
@@ -44,7 +43,7 @@ Example: me@myemail.com will be converted to hgulo@foggy.email - Your website vi
44
  * Jetpack Image carousel is compatible as well
45
 
46
  = Free Website Check =
47
- We offer you a free tool to test if your website contains unprotected emails. You can use our website checker by [clicking here](https://ironikus.com/email-checker/)
48
 
49
  = Easy to use =
50
  After activating the plugin all email addresses on your website will be protected out-of-the-box.
@@ -52,7 +51,7 @@ We also offer custom shortcodes and template functions to protect phone numbers
52
 
53
  = Support =
54
  * Documentation - After plugin activation, check the help tab on the plugin options page
55
- * [Documentation on ironikus.com](https://ironikus.com/docs/article-categories/email-encoder/)
56
  * [FAQ](http://wordpress.org/extend/plugins/email-encoder-bundle/faq/)
57
 
58
  = Like this plugin? =
@@ -72,7 +71,7 @@ We also offer custom shortcodes and template functions to protect phone numbers
72
 
73
  You can test this in three different ways.
74
 
75
- The easiest (and most efficient) way is to use our website checker, which looks over your website and detects unprotected emails. It is completely free and you can [find it here](https://ironikus.com/email-checker/) on our website.
76
 
77
  The second possibility is to enable the plugin option (in the admin panel) called *"Security Check"*.
78
  When you are logged in and look on the page there will be a icon on the right side of each email address confirming it was successfully encoded. (This counts only for emails that are displayed within the body tag as HTML. Emails within data attributes or the header won't show this icon since otherwise the site breaks.)
@@ -86,11 +85,11 @@ Now your (real) source code will be shown. Your email address should not be show
86
 
87
  All email addresses are protected automatically by default, so it is not necessary to configure anything else.
88
 
89
- In case you wish to customize it, we also offer some neatsettings, shortcodes and template functions. Please check the settings page within your WordPress website or [our documentation](https://ironikus.com/docs/article-categories/email-encoder/)
90
 
91
  The visitors will see everything as normal, but the source behind it will now be encoded.
92
 
93
- For more information, please check out the [following page](https://ironikus.com/docs/knowledge-base/what-will-be-protected-2/)
94
 
95
  = How do I encode phone numbers or other text? =
96
 
@@ -126,6 +125,12 @@ Yes, since version 1.3.0 also special characters are supported.
126
 
127
  == Changelog ==
128
 
 
 
 
 
 
 
129
  = 2.1.2: July 30, 2021 =
130
  * Fix: Prevent notice on undefined post within the global object
131
  * Fix: Revalidate Display Text for the frontend encoder form (via [eeb_form] or eeb_form();) to prevent userbased cross site scripting
@@ -141,23 +146,19 @@ Yes, since version 1.3.0 also special characters are supported.
141
  * Feature: New advanced setting to automatically protect custom link attributes such as tel:, file:, ftp:, skype:, etc. (Protect custom href attributes)
142
  * Tweak: Adjust JS documentation
143
  * Tweak: Adjust readme file
144
- * Tweak: Allow a hard-reset on foggy.email aliases
145
- * Dev: New filter eeb/integrations/foggy_email/http_args for manipulating the http arguments send over to foggy.email
146
 
147
  = 2.0.9 =
148
  * Fix: Issue with not properly validated soft-encoded attribute tags on the dom attributes
149
  * Fix: Issue with not properly validated soft-encoded attributes on special softencoded tags for the content filter
150
  * Tweak: Optimized performance for soft attribute filtering
151
- * Tweak: Optimized layout for the foggy.email banner
152
- * Dev: Added new filter to allow customization of the mailto text: https://ironikus.com/docs/knowledge-base/filter-email-encoder-mailto-text/
153
 
154
  = 2.0.8 =
155
  * Feature: The shortcode [eeb_protect_content] now supports a new attribute called do_shortcode="yes" which allows you to execute all shortcodes within the given content area
156
  * Tweak: Add new link for the Email Checker (Allows you to check if all of your emails are being encoded)
157
- * Tweak: Add new Foggy Email note
158
  * Tweak: Optimize layout and texts
159
  * Fix: The documentation link on the settings page was not working
160
- * Dev: The eeb/frontend/shortcode/eeb_protect_content filter now contains a new variable called $original_content (https://ironikus.com/docs/knowledge-base/filter-eeb-content-shortcode/)
161
 
162
  = 2.0.7 =
163
  * Feature: Underline emails that are converted to an image (Cutsomizable)
@@ -166,15 +167,14 @@ Yes, since version 1.3.0 also special characters are supported.
166
  * Tweak: Softening the regex to recognize spaces before the closing tags
167
 
168
  = 2.0.6 =
169
- * Feature: Fully integrated with Foggy Email to protect your real email address: https://foggy.email/
170
  * Feature: We fully removed all external marketing advertisements! Enjoy our plugin without distrations! :)
171
  * Feature: Full support for Oxygen builder
172
  * Tweak: Optimize PHPDocs and comments
173
  * Tweak: Optimize is_post_excluded functionality
174
- * Dev: New filter: eeb/validate/filter_page_content - https://ironikus.com/docs/knowledge-base/filter-to-manipulate-raw-page-content/
175
- * Dev: New filter: eeb/validate/filter_content_content - https://ironikus.com/docs/knowledge-base/filter-to-manipulate-raw-hook-content/
176
- * Dev: New filter: eeb/validate/is_post_excluded - https://ironikus.com/docs/knowledge-base/filter-excluded-posts-list/
177
- * Dev: New filter: eeb/settings/pre_filter_fields - https://ironikus.com/docs/knowledge-base/pre-filter-email-encoder-settings/
178
 
179
  = 2.0.5 =
180
  * Feature: Soft-Encode all HTML tags + new settings item (This will prevent complex plugins from breaking)
@@ -220,18 +220,18 @@ Yes, since version 1.3.0 also special characters are supported.
220
  * Feature: Also protect every single shortcode content
221
  * Feature: Create images out of email addresses
222
  * Feature: Protect header section automatically
223
- * Feature: Added and refactored shortcodes. For a full list of shortcodes, please check this article: https://ironikus.com/docs/knowledge-base/available-shortcodes/
224
  * Feature: Setting to deactivate the Encoder Form completely
225
  * Feature: Choose converting plain emails to mailto links as an additional feature
226
  * Feature: Change filter apply from "wp" to "init" (This allows you to also grab some ajax values to parse them directy encoded)
227
- * Feature: Website checker to search your site for unprotected emails. Follow this URL for more information: https://ironikus.com/email-checker/
228
  * Tweak: Backward compatibility to the new plugin settings
229
  * Tweak: Completely performance optimized (We removed everything that is not necessary, included a better object caching and much more)
230
  * Tweak: Optimized filter combinations
231
  * Fix: The old logic broke some email encodings, especially with custom tags. We fixed all of them
232
  * Fix: We fixed tons of bugs from the previous version
233
  * Dev: Code rewritten on the newest WordPress standards
234
- * Dev: Tons of new WordPress filters and actions. For a full list, please check https://ironikus.com/docs/article-categories/email-encoder/
235
  * Deprecated: We removed the deprecated functions. Please make sure to update your custom logic to the newest standards.
236
 
237
  = 1.53 =
@@ -258,7 +258,7 @@ Yes, since version 1.3.0 also special characters are supported.
258
  = 1.5.2 =
259
  * Tweak: Add popup window for admin success message of hidden email
260
  * Fix: Fix bug for non-available antispambot() function
261
- * Ironikus takes over development (https://ironikus.com)
262
 
263
  = 1.51 =
264
  * 2019-03-25
1
+ === Email Encoder - Protect Email Addresses and Phone Numbers ===
2
  Contributors: ironikus
3
  Tags: anti spam, protect, encode, encrypt, hide, antispam, phone number, spambot, secure, e-mail, email, mail
4
  Requires at least: 4.7
5
  Requires PHP: 5.1
6
+ Tested up to: 5.9
7
+ Stable tag: 2.1.3
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
+ Author URI: https://wpemailencoder.com/
11
+ Plugin URI: https://wordpress.org/plugins/email-encoder-bundle/
12
+ Contributors: ironikus
13
+ Donate link: https://paypal.me/ironikus
14
 
15
  Protect email addresses and phone numbers on your site and hide them from spambots. Easy to use & flexible.
16
 
17
  == Description ==
18
 
19
  Full site protection for your email addresses from spam-bots, email harvesters and other robots. No configuration needed.
20
+ It also protects phone numbers or any other text using our integrated `[eeb_protect_content]` shortcode or href attribute encoding.
21
 
22
  = Features =
23
  * Full page protection for all of your emails
36
  * Also supports special chars, like é, â, ö, Chinese characters etcetera
37
  * Use the Encoder Form to manually create encoded scripts
38
 
 
 
 
 
 
39
  = Compatibilities =
40
  * The plugin works with mostly any theme and plugin. Some special ones need special treatment. Down below you can learn more about that.
41
  * Compatible with the Maintenance plugin from WP Maintenance
43
  * Jetpack Image carousel is compatible as well
44
 
45
  = Free Website Check =
46
+ We offer you a free tool to test if your website contains unprotected emails. You can use our website checker by [clicking here](https://wpemailencoder.com/email-protection-checker/)
47
 
48
  = Easy to use =
49
  After activating the plugin all email addresses on your website will be protected out-of-the-box.
51
 
52
  = Support =
53
  * Documentation - After plugin activation, check the help tab on the plugin options page
54
+ * [Documentation on wpemailencoder.com](https://wpemailencoder.com/)
55
  * [FAQ](http://wordpress.org/extend/plugins/email-encoder-bundle/faq/)
56
 
57
  = Like this plugin? =
71
 
72
  You can test this in three different ways.
73
 
74
+ The easiest (and most efficient) way is to use our website checker, which looks over your website and detects unprotected emails. It is completely free and you can [find it here](https://wpemailencoder.com/email-protection-checker/) on our website.
75
 
76
  The second possibility is to enable the plugin option (in the admin panel) called *"Security Check"*.
77
  When you are logged in and look on the page there will be a icon on the right side of each email address confirming it was successfully encoded. (This counts only for emails that are displayed within the body tag as HTML. Emails within data attributes or the header won't show this icon since otherwise the site breaks.)
85
 
86
  All email addresses are protected automatically by default, so it is not necessary to configure anything else.
87
 
88
+ In case you wish to customize it, we also offer some neatsettings, shortcodes and template functions. Please check the settings page within your WordPress website or [our documentation](https://wpemailencoder.com/)
89
 
90
  The visitors will see everything as normal, but the source behind it will now be encoded.
91
 
92
+ For more information, please check out the [following page](https://wpemailencoder.com/what-will-be-protected/)
93
 
94
  = How do I encode phone numbers or other text? =
95
 
125
 
126
  == Changelog ==
127
 
128
+ = 2.1.3: February 04, 2021 =
129
+ * Tweak: Email Encoder runs now on its own website: https://wpemailencoder.com/
130
+ * Tweak: The eeb_mailto function now supports the default encoding methods if no specific method is given
131
+ * Tweak optimized text and descriptions
132
+ * Fix: Prevent error with undefined $id_base property
133
+
134
  = 2.1.2: July 30, 2021 =
135
  * Fix: Prevent notice on undefined post within the global object
136
  * Fix: Revalidate Display Text for the frontend encoder form (via [eeb_form] or eeb_form();) to prevent userbased cross site scripting
146
  * Feature: New advanced setting to automatically protect custom link attributes such as tel:, file:, ftp:, skype:, etc. (Protect custom href attributes)
147
  * Tweak: Adjust JS documentation
148
  * Tweak: Adjust readme file
 
 
149
 
150
  = 2.0.9 =
151
  * Fix: Issue with not properly validated soft-encoded attribute tags on the dom attributes
152
  * Fix: Issue with not properly validated soft-encoded attributes on special softencoded tags for the content filter
153
  * Tweak: Optimized performance for soft attribute filtering
154
+ * Dev: Added new filter to allow customization of the mailto text: https://wpemailencoder.com/filter-email-encoder-mailto-text/
 
155
 
156
  = 2.0.8 =
157
  * Feature: The shortcode [eeb_protect_content] now supports a new attribute called do_shortcode="yes" which allows you to execute all shortcodes within the given content area
158
  * Tweak: Add new link for the Email Checker (Allows you to check if all of your emails are being encoded)
 
159
  * Tweak: Optimize layout and texts
160
  * Fix: The documentation link on the settings page was not working
161
+ * Dev: The eeb/frontend/shortcode/eeb_protect_content filter now contains a new variable called $original_content (https://wpemailencoder.com/filter-eeb_protect_content-shortcode/)
162
 
163
  = 2.0.7 =
164
  * Feature: Underline emails that are converted to an image (Cutsomizable)
167
  * Tweak: Softening the regex to recognize spaces before the closing tags
168
 
169
  = 2.0.6 =
 
170
  * Feature: We fully removed all external marketing advertisements! Enjoy our plugin without distrations! :)
171
  * Feature: Full support for Oxygen builder
172
  * Tweak: Optimize PHPDocs and comments
173
  * Tweak: Optimize is_post_excluded functionality
174
+ * Dev: New filter: eeb/validate/filter_page_content - https://wpemailencoder.com/filter-to-manipulate-raw-page-content/
175
+ * Dev: New filter: eeb/validate/filter_content_content - https://wpemailencoder.com/filter-to-manipulate-raw-hook-content/
176
+ * Dev: New filter: eeb/validate/is_post_excluded - https://wpemailencoder.com/filter-excluded-posts-list/
177
+ * Dev: New filter: eeb/settings/pre_filter_fields - https://wpemailencoder.com/pre-filter-email-encoder-settings/
178
 
179
  = 2.0.5 =
180
  * Feature: Soft-Encode all HTML tags + new settings item (This will prevent complex plugins from breaking)
220
  * Feature: Also protect every single shortcode content
221
  * Feature: Create images out of email addresses
222
  * Feature: Protect header section automatically
223
+ * Feature: Added and refactored shortcodes. For a full list of shortcodes, please check this article: https://wpemailencoder.com/available-shortcodes/
224
  * Feature: Setting to deactivate the Encoder Form completely
225
  * Feature: Choose converting plain emails to mailto links as an additional feature
226
  * Feature: Change filter apply from "wp" to "init" (This allows you to also grab some ajax values to parse them directy encoded)
227
+ * Feature: Website checker to search your site for unprotected emails. Follow this URL for more information: https://wpemailencoder.com/email-protection-checker/
228
  * Tweak: Backward compatibility to the new plugin settings
229
  * Tweak: Completely performance optimized (We removed everything that is not necessary, included a better object caching and much more)
230
  * Tweak: Optimized filter combinations
231
  * Fix: The old logic broke some email encodings, especially with custom tags. We fixed all of them
232
  * Fix: We fixed tons of bugs from the previous version
233
  * Dev: Code rewritten on the newest WordPress standards
234
+ * Dev: Tons of new WordPress filters and actions. For a full list, please check https://wpemailencoder.com/
235
  * Deprecated: We removed the deprecated functions. Please make sure to update your custom logic to the newest standards.
236
 
237
  = 1.53 =
258
  = 1.5.2 =
259
  * Tweak: Add popup window for admin success message of hidden email
260
  * Fix: Fix bug for non-available antispambot() function
261
+ * WP Webhooks takes over development (https://wp-webhooks.com)
262
 
263
  = 1.51 =
264
  * 2019-03-25