WD Instagram Feed – Instagram Gallery - Version 1.3.6

Version Description

Changed: Instagram Feed by 10Web Fixed: Minor bugs when saving feed and opening lightbox

Download this release

Release Info

Developer webdorado
Plugin Icon 128x128 WD Instagram Feed – Instagram Gallery
Version 1.3.6
Comparing to
See all releases

Code changes from version 1.3.5 to 1.3.6

Files changed (53) hide show
  1. admin-functions.php +1 -1
  2. admin/controllers/WDIControllerUninstall_wdi.php +4 -4
  3. admin/views/WDIViewFeeds_wdi.php +3 -3
  4. admin/views/WDIViewLicensing_wdi.php +2 -2
  5. admin/views/WDIViewSettings_wdi.php +2 -2
  6. admin/views/WDIViewThemes_wdi.php +1 -1
  7. admin/views/WDIViewUninstall_wdi.php +6 -6
  8. changelog.txt +4 -0
  9. framework/WDI_form_builder.php +1 -1
  10. frontend/views/WDIViewGalleryBox.php +8 -2
  11. readme.txt +793 -789
  12. templates/plugin-uninstalled.php +1 -1
  13. update/wdi_update.php +4 -0
  14. wd-instagram-feed.php +37 -36
  15. wd/README.md +4 -37
  16. wd/assets/css/img/close.svg +16 -16
  17. wd/assets/css/overview.css +414 -404
  18. wd/assets/css/subscribe.css +186 -90
  19. wd/assets/img/allow-and-continue.png +0 -0
  20. wd/assets/img/header.svg +1 -0
  21. wd/assets/img/how_it_works.png +0 -0
  22. wd/assets/img/plugins/business_elite.png +0 -0
  23. wd/assets/img/plugins/business_world.png +0 -0
  24. wd/assets/img/plugins/event-calendar-wd.png +0 -0
  25. wd/assets/img/plugins/form-maker.png +0 -0
  26. wd/assets/img/plugins/photo-gallery.png +0 -0
  27. wd/assets/img/plugins/portfolio_gallery.png +0 -0
  28. wd/assets/img/plugins/sauron.png +0 -0
  29. wd/assets/img/plugins/slider-wd.png +0 -0
  30. wd/assets/img/plugins/spider-event-calendar.png +0 -0
  31. wd/assets/img/plugins/wd-google-maps.png +0 -0
  32. wd/assets/img/plugins/wd-instagram-feed.png +0 -0
  33. wd/assets/img/slide-1366.jpg +0 -0
  34. wd/assets/img/sub_1.png +0 -0
  35. wd/assets/img/sub_2.png +0 -0
  36. wd/assets/img/sub_4.png +0 -0
  37. wd/assets/js/deactivate_popup.js +1 -1
  38. wd/assets/js/overview.js +13 -53
  39. wd/assets/js/subsribe.js +3 -2
  40. wd/config.php +20 -18
  41. wd/includes/api.php +2 -2
  42. wd/includes/deactivate.php +173 -166
  43. wd/includes/notices.php +1 -1
  44. wd/includes/overview.php +3 -234
  45. wd/includes/subscribe.php +120 -134
  46. wd/start.php +6 -4
  47. wd/templates/display_overview.php +120 -39
  48. wd/templates/display_overview_deals.php +0 -81
  49. wd/templates/display_overview_support.php +0 -59
  50. wd/templates/display_overview_user_guide.php +0 -46
  51. wd/templates/display_overview_welcome.php +0 -31
  52. wd/templates/display_subscribe.php +31 -31
  53. wd/wd.php +22 -17
admin-functions.php CHANGED
@@ -109,7 +109,7 @@ function wdi_install()
109
  $sql = "CREATE TABLE $table_name (
110
  id mediumint(9) NOT NULL AUTO_INCREMENT PRIMARY KEY,
111
  feed_name tinytext NOT NULL,
112
- feed_thumb varchar(255) NOT NULL,
113
  thumb_user varchar(30) NOT NULL,
114
  published varchar(1) NOT NULL,
115
  theme_id varchar(10) NOT NULL,
109
  $sql = "CREATE TABLE $table_name (
110
  id mediumint(9) NOT NULL AUTO_INCREMENT PRIMARY KEY,
111
  feed_name tinytext NOT NULL,
112
+ feed_thumb varchar(800) NOT NULL,
113
  thumb_user varchar(30) NOT NULL,
114
  published varchar(1) NOT NULL,
115
  theme_id varchar(10) NOT NULL,
admin/controllers/WDIControllerUninstall_wdi.php CHANGED
@@ -7,17 +7,17 @@ class WDIControllerUninstall_wdi{
7
  function __construct(){
8
 
9
  global $wdi_wd_plugin_options;
10
- if(!class_exists("DoradoWebConfig")){
11
  include_once (WDI_DIR . "/wd/config.php");
12
  }
13
 
14
- if(!class_exists("DoradoWebDeactivate")) {
15
  include_once(WDI_DIR . "/wd/includes/deactivate.php");
16
  }
17
- $config = new DoradoWebConfig();
18
 
19
  $config->set_options( $wdi_wd_plugin_options );
20
- $deactivate_reasons = new DoradoWebDeactivate($config);
21
  //$deactivate_reasons->add_deactivation_feedback_dialog_box();
22
  $deactivate_reasons->submit_and_deactivate();
23
 
7
  function __construct(){
8
 
9
  global $wdi_wd_plugin_options;
10
+ if(!class_exists("TenWebConfig")){
11
  include_once (WDI_DIR . "/wd/config.php");
12
  }
13
 
14
+ if(!class_exists("TenWebDeactivate")) {
15
  include_once(WDI_DIR . "/wd/includes/deactivate.php");
16
  }
17
+ $config = new TenWebConfig();
18
 
19
  $config->set_options( $wdi_wd_plugin_options );
20
+ $deactivate_reasons = new TenWebDeactivate($config);
21
  //$deactivate_reasons->add_deactivation_feedback_dialog_box();
22
  $deactivate_reasons->submit_and_deactivate();
23
 
admin/views/WDIViewFeeds_wdi.php CHANGED
@@ -58,7 +58,7 @@ class WDIViewFeeds_wdi
58
  <span class="wdi_help_bar_text">
59
  <?php _e('This section allows you to create, edit and delete Feeds.', "wd-instagram-feed"); ?>
60
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
61
- href="https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds.html"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
62
  </span>
63
  <div class="wdi_hb_buy_pro">
64
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
@@ -155,7 +155,7 @@ class WDIViewFeeds_wdi
155
  <span class="media-icon image-icon">
156
  <img title="<?php echo $row_data->feed_name; ?>"
157
  style="border: 1px solid #CCCCCC; max-width: 70px; max-height: 50px;"
158
- src="<?php echo $prev_img_url . '?date=' . date('Y-m-y H:i:s'); ?>">
159
  </span>
160
  <?php echo $row_data->feed_name; ?>
161
  </a>
@@ -525,7 +525,7 @@ public function genarateFeedViews()
525
  <span class="wdi_help_bar_text">
526
  <?php _e('Here You Can Change Feed Parameters.', "wd-instagram-feed"); ?>
527
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
528
- href="https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds.html"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
529
  </span>
530
  <div class="wdi_hb_buy_pro">
531
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
58
  <span class="wdi_help_bar_text">
59
  <?php _e('This section allows you to create, edit and delete Feeds.', "wd-instagram-feed"); ?>
60
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
61
+ href="https://docs.10web.io/docs/wd-instagram-feed/creating-feed/creating-instagram-feed.html"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
62
  </span>
63
  <div class="wdi_hb_buy_pro">
64
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
155
  <span class="media-icon image-icon">
156
  <img title="<?php echo $row_data->feed_name; ?>"
157
  style="border: 1px solid #CCCCCC; max-width: 70px; max-height: 50px;"
158
+ src="<?php echo $prev_img_url; ?>">
159
  </span>
160
  <?php echo $row_data->feed_name; ?>
161
  </a>
525
  <span class="wdi_help_bar_text">
526
  <?php _e('Here You Can Change Feed Parameters.', "wd-instagram-feed"); ?>
527
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
528
+ href="https://docs.10web.io/docs/wd-instagram-feed/creating-feed/creating-instagram-feed.html"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
529
  </span>
530
  <div class="wdi_hb_buy_pro">
531
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
admin/views/WDIViewLicensing_wdi.php CHANGED
@@ -127,8 +127,8 @@ class WDIViewLicensing_wdi {
127
  <div style="float: left; clear: both;">
128
  <p><?php _e("After purchasing the commercial version follow these steps:", 'wd-instagram-feed'); ?></p>
129
  <ol>
130
- <li><?php _e("Deactivate Instagram Feed WD plugin.", 'wd-instagram-feed'); ?></li>
131
- <li><?php _e("Delete Instagram Feed WD plugin.", 'wd-instagram-feed'); ?></li>
132
  <li><?php _e("Install the downloaded commercial version of the plugin.", 'wd-instagram-feed'); ?></li>
133
  </ol>
134
  </div>
127
  <div style="float: left; clear: both;">
128
  <p><?php _e("After purchasing the commercial version follow these steps:", 'wd-instagram-feed'); ?></p>
129
  <ol>
130
+ <li><?php _e("Deactivate Instagram Feed plugin.", 'wd-instagram-feed'); ?></li>
131
+ <li><?php _e("Delete Instagram Feed plugin.", 'wd-instagram-feed'); ?></li>
132
  <li><?php _e("Install the downloaded commercial version of the plugin.", 'wd-instagram-feed'); ?></li>
133
  </ol>
134
  </div>
admin/views/WDIViewSettings_wdi.php CHANGED
@@ -48,7 +48,7 @@ private $model;
48
  <span class="wdi_help_bar_text">
49
  <?php _e('This section allows you to set API parameters.', "wd-instagram-feed"); ?>
50
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
51
- href="https://web-dorado.com/wordpress-instagram-feed-wd/installation-and-configuration/getting-access-token.html"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
52
  </span>
53
  <div class="wdi_hb_buy_pro">
54
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
@@ -62,7 +62,7 @@ private $model;
62
  </div>
63
 
64
 
65
- <h1 id="settings_wdi_title"><?php _e('Instagram WD Settings', "wd-instagram-feed"); ?></h1>
66
  <form method="post" action="options.php" class="wdi_settings_form">
67
  <input type="hidden"id="wdi_user_id" name="<?php echo WDI_OPT.'[wdi_user_id]' ?>">
68
  <?php settings_fields('wdi_all_settings'); ?>
48
  <span class="wdi_help_bar_text">
49
  <?php _e('This section allows you to set API parameters.', "wd-instagram-feed"); ?>
50
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
51
+ href="https://docs.10web.io/docs/wd-instagram-feed/getting-access-token"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
52
  </span>
53
  <div class="wdi_hb_buy_pro">
54
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
62
  </div>
63
 
64
 
65
+ <h1 id="settings_wdi_title"><?php _e('Instagram Settings', "wd-instagram-feed"); ?></h1>
66
  <form method="post" action="options.php" class="wdi_settings_form">
67
  <input type="hidden"id="wdi_user_id" name="<?php echo WDI_OPT.'[wdi_user_id]' ?>">
68
  <?php settings_fields('wdi_all_settings'); ?>
admin/views/WDIViewThemes_wdi.php CHANGED
@@ -28,7 +28,7 @@ class WDIViewThemes_wdi {
28
  <span class="wdi_help_bar_text">
29
  <?php _e('This section allows you to create, edit and delete Themes.', "wd-instagram-feed"); ?>
30
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
31
- href="https://web-dorado.com/wordpress-instagram-feed-wd/editing-themes.html"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
32
  </span>
33
  <div class="wdi_hb_buy_pro">
34
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
28
  <span class="wdi_help_bar_text">
29
  <?php _e('This section allows you to create, edit and delete Themes.', "wd-instagram-feed"); ?>
30
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" class="wdi_hb_t_link" target="_blank"
31
+ href="https://docs.10web.io/docs/wd-instagram-feed/theme-options"><?php _e('Read More in User Guide', "wd-instagram-feed"); ?></a>
32
  </span>
33
  <div class="wdi_hb_buy_pro">
34
  <a class="wdi_support_link" href="https://wordpress.org/support/plugin/wd-instagram-feed" target="_blank">
admin/views/WDIViewUninstall_wdi.php CHANGED
@@ -23,10 +23,10 @@ class WDIViewUninstall_wdi
23
 
24
  <span class="uninstall-icon"></span>
25
  <h2 class="wdi_page_title">
26
- <?php _e('Uninstalling Instagram Feed WD', "wd-instagram-feed"); ?>
27
  </h2>
28
  <p
29
- style="color:red;font-size:15px"> <?php _e('Deactivating Instagram Feed WD plugin does not remove any data that may have been created. To completely remove this plugin, you can uninstall it here.', 'wd-instagram-feed') ?>
30
  <br>
31
  <?php _e('WARNING: Once uninstalled, this can\'t be undone. You should use a Database Backup plugin of WordPress to back up all the data first.', 'wd-instagram-feed') ?>
32
  </p>
@@ -85,7 +85,7 @@ class WDIViewUninstall_wdi
85
  ?>
86
  <span class="uninstall-icon"></span>
87
  <h2>
88
- <?php _e('Uninstalling Instagram Feed WD', "wd-instagram-feed"); ?>
89
  </h2>
90
  <!--<p style="color:green;font-size:15px"> <?php /*_e('Instagram Feed WD is uninstalled','wd-instagram-feed') */
91
  ?><a style="text-decoration:none;padding:3px;" href="<?php /*echo $deactivate_url */
@@ -93,7 +93,7 @@ class WDIViewUninstall_wdi
93
  ?> </a><?php /*_e('to deactivate it','wd-instagram-feed') */
94
  ?></p>-->
95
  <p><strong><a href="#" class="wdi_deactivate_link"
96
- data-uninstall="1"><?php _e("Click Here", "wd-instagram-feed"); ?></a><?php _e(" To Finish the Uninstallation and Instagram Feed WD will be Deactivated Automatically.", "wd-instagram-feed"); ?>
97
  </strong></p>
98
 
99
  <?php
@@ -106,7 +106,7 @@ class WDIViewUninstall_wdi
106
  ?>
107
  <span class="uninstall-icon"></span>
108
  <h2>
109
- <?php _e('Uninstalling Instagram Feed WD', "wd-instagram-feed"); ?>
110
  </h2>
111
  <p
112
  style="color:green;margin-top:10px;font-size:13px;"> <?php _e('The following Database Tables has been successfully deleted:', 'wd-instagram-feed') ?> </p>
@@ -131,7 +131,7 @@ class WDIViewUninstall_wdi
131
  ?> </a><?php /*_e('to deactivate it','wd-instagram-feed') */
132
  ?></p>-->
133
  <p><strong><a href="#" class="wdi_deactivate_link"
134
- data-uninstall="1"><?php _e("Click Here", "wd-instagram-feed"); ?></a><?php _e(" To Finish the Uninstallation and Instagram Feed WD will be Deactivated Automatically.", "wd-instagram-feed"); ?>
135
  </strong></p>
136
 
137
  <?php
23
 
24
  <span class="uninstall-icon"></span>
25
  <h2 class="wdi_page_title">
26
+ <?php _e('Uninstalling Instagram Feed', "wd-instagram-feed"); ?>
27
  </h2>
28
  <p
29
+ style="color:red;font-size:15px"> <?php _e('Deactivating Instagram Feed plugin does not remove any data that may have been created. To completely remove this plugin, you can uninstall it here.', 'wd-instagram-feed') ?>
30
  <br>
31
  <?php _e('WARNING: Once uninstalled, this can\'t be undone. You should use a Database Backup plugin of WordPress to back up all the data first.', 'wd-instagram-feed') ?>
32
  </p>
85
  ?>
86
  <span class="uninstall-icon"></span>
87
  <h2>
88
+ <?php _e('Uninstalling Instagram Feed', "wd-instagram-feed"); ?>
89
  </h2>
90
  <!--<p style="color:green;font-size:15px"> <?php /*_e('Instagram Feed WD is uninstalled','wd-instagram-feed') */
91
  ?><a style="text-decoration:none;padding:3px;" href="<?php /*echo $deactivate_url */
93
  ?> </a><?php /*_e('to deactivate it','wd-instagram-feed') */
94
  ?></p>-->
95
  <p><strong><a href="#" class="wdi_deactivate_link"
96
+ data-uninstall="1"><?php _e("Click Here", "wd-instagram-feed"); ?></a><?php _e(" To Finish the Uninstallation and Instagram Feed will be Deactivated Automatically.", "wd-instagram-feed"); ?>
97
  </strong></p>
98
 
99
  <?php
106
  ?>
107
  <span class="uninstall-icon"></span>
108
  <h2>
109
+ <?php _e('Uninstalling Instagram Feed', "wd-instagram-feed"); ?>
110
  </h2>
111
  <p
112
  style="color:green;margin-top:10px;font-size:13px;"> <?php _e('The following Database Tables has been successfully deleted:', 'wd-instagram-feed') ?> </p>
131
  ?> </a><?php /*_e('to deactivate it','wd-instagram-feed') */
132
  ?></p>-->
133
  <p><strong><a href="#" class="wdi_deactivate_link"
134
+ data-uninstall="1"><?php _e("Click Here", "wd-instagram-feed"); ?></a><?php _e(" To Finish the Uninstallation and Instagram Feed will be Deactivated Automatically.", "wd-instagram-feed"); ?>
135
  </strong></p>
136
 
137
  <?php
changelog.txt CHANGED
@@ -1,3 +1,7 @@
 
 
 
 
1
  = 1.3.5 =
2
  Changed: Deactivation popup
3
 
1
+ = 1.3.6 =
2
+ Changed: Instagram Feed by 10Web
3
+ Fixed: Minor bugs when saving feed and opening lightbox
4
+
5
  = 1.3.5 =
6
  Changed: Deactivation popup
7
 
framework/WDI_form_builder.php CHANGED
@@ -501,7 +501,7 @@ public function __construct() {
501
  </div>
502
  <div class="wdi_howto_content">
503
  <h2>Widget</h2>
504
- <h4>Add Instagram Feed WD Widget to your site:</h4>
505
  <img src="<?php echo WDI_URL.'/images/how_to_publish_widget.png'; ?>">
506
  </div>
507
  <script>function wdi_select_focus_element(obj) {obj.focus();obj.select();}</script>
501
  </div>
502
  <div class="wdi_howto_content">
503
  <h2>Widget</h2>
504
+ <h4>Add Instagram Feed Widget to your site:</h4>
505
  <img src="<?php echo WDI_URL.'/images/how_to_publish_widget.png'; ?>">
506
  </div>
507
  <script>function wdi_select_focus_element(obj) {obj.focus();obj.select();}</script>
frontend/views/WDIViewGalleryBox.php CHANGED
@@ -305,7 +305,11 @@ class WDIViewGalleryBox {
305
  if ($image_row->id == $current_image_id) {
306
  $current_image_alt = $image_row->alt;
307
  $current_image_user_name = $image_row->username;
308
- $current_image_user_pic = $image_row->profile_picture;
 
 
 
 
309
  $current_image_hit_count = $image_row->hit_count;
310
  $current_image_description = str_replace('#',' #',str_replace(array("\r\n", "\n", "\r"), esc_html('<br />'), $image_row->description));
311
  $current_image_url = $image_row->image_url;
@@ -497,7 +501,9 @@ continue;
497
  <div class="wdi_image_title">
498
  <div class="wdi_title" onclick="window.open('//instagram.com/<?php echo $current_image_user_name; ?>','_blank')">
499
  <div class="wdi_header_text"><?php echo $current_image_user_name;?></div>
500
- <div class="wdi_users_img_wrap"><img src="<?php echo $current_image_user_pic;?>" alt=""></div>
 
 
501
  </div>
502
  </div>
503
  <div class="wdi_image_description"><?php echo esc_html($current_image_description); ?></div>
305
  if ($image_row->id == $current_image_id) {
306
  $current_image_alt = $image_row->alt;
307
  $current_image_user_name = $image_row->username;
308
+ if(isset($image_row->profile_picture)){
309
+ $current_image_user_pic = $image_row->profile_picture;
310
+ }else{
311
+ $current_image_user_pic = '';
312
+ }
313
  $current_image_hit_count = $image_row->hit_count;
314
  $current_image_description = str_replace('#',' #',str_replace(array("\r\n", "\n", "\r"), esc_html('<br />'), $image_row->description));
315
  $current_image_url = $image_row->image_url;
501
  <div class="wdi_image_title">
502
  <div class="wdi_title" onclick="window.open('//instagram.com/<?php echo $current_image_user_name; ?>','_blank')">
503
  <div class="wdi_header_text"><?php echo $current_image_user_name;?></div>
504
+ <?php if(!empty($current_image_user_pic)): ?>
505
+ <div class="wdi_users_img_wrap"><img src="<?php echo $current_image_user_pic;?>" alt=""></div>
506
+ <?php endif;?>
507
  </div>
508
  </div>
509
  <div class="wdi_image_description"><?php echo esc_html($current_image_description); ?></div>
readme.txt CHANGED
@@ -1,789 +1,793 @@
1
- === WD Instagram Feed - Instagram Gallery ===
2
- Contributors: webdorado,10web,progmastery
3
- Tags: custom instagram feed, feed, instagram, hashtag, Instagram feed, instagram gallery, instagram posts, Instagram images, Instagram photos, lightbox, photos,instagram account
4
- Requires at least: 3.9
5
- Requires PHP: 5.2
6
- Tested up to: 4.9
7
- Stable tag: 1.3.5
8
- License: GPLv2 or later
9
- License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
-
11
- WD Instagram Feed is a user-friendly plugin to display user or hashtag-based Instagram feeds as a responsive customizable gallery.
12
-
13
- == Description ==
14
-
15
- https://www.youtube.com/watch?v=KU4LJFxw0BY
16
-
17
- = Useful Links: =
18
- [Special Offer for all Premium Plugins](https://web-dorado.com/wordpress-plugins-bundle.html)
19
- [WordPress WD Instagram Feed ](https://web-dorado.com/products/wordpress-instagram-feed-wd.html)
20
- [Demo](http://wpdemo.web-dorado.com/instagram-wd/)
21
- [User Guide](https://web-dorado.com/wordpress-instagram-feed-wd/installation-and-configuration/installation.html)
22
-
23
-
24
- WD Instagram Feed is a user-friendly WordPress plugin that can help you bring Instagram feeds with the media of your Instagram account to any of your posts and pages. It will take couple of minutes to set up and customize to your needs. WD Instagram Feed's settings and features will allow you to take full control over how to display the feeds and the content on your website.
25
-
26
- WD Instagram Feed is a perfect fit for bloggers, photography websites, travel and food blogs and for WordPress users that want to spice up their posts with the latest images and videos from their Instagram profiles. The plugin is responsive and scales perfectly to screens of all sizes, providing better user experience across the board.
27
-
28
-
29
- == Benefits ==
30
- * **Increase user engagement** - Engagement on Instagram is higher than on any other social platform. Keep your visitors engaged and significantly increase surfing time and visitor retention on your website.
31
- * **Increase brand/blog awareness** - Let your site visitors get into conversation and connect with your blog or brand. Keep your visitors tuned and increase your blog's/brand's awareness.
32
- * **Save your time** Keep your posts authentic with content from your Instagram account without any manual work involved. Your feeds will be fresh and up to date and synced automatically.
33
- * **Add appeal to your website** - Stunning display views, custom styling features and image lightbox effects will bring vibrancy to your posts and pages, and add to your website's overall look and feel.
34
- * **Control** - Take pure charge of what content to display and how to display it with an extensive list of content and display settings. Specify the number of photos you display on the page and choose what happens when a visitor clicks on an image from the feed. Custom styled display views and filtered Instagram content will be a great addition to any post you publish.
35
- * **Minimal effort** Set the plugin up and have it up and running in no time and with minimal efforts. Out of box solution that's user-friendly and simple in use.
36
- * **Support** - The team behind WD Instagram Feed provides timely and effective support to all its users. We keep standards high and response time low.
37
- * **Resource efficient** - WordPress WD Instagram Feed plugin loads the images pretty fast as no feed data is stored in the database. All the images, videos, captions and comments are retrieved directly from the Instagram in the front-end.
38
-
39
-
40
-
41
- == What's in it ==
42
-
43
- = CUSTOMIZABLE LAYOUTS =
44
- Display the feeds in one of the available layouts Thumbnail, Image Browser, Masonry (Premium version), Blog Style(Premium version). Whether you want to have small sized image thumbnails or larger images displayed you'll find the right layout for that. Customize layouts to get exactly what you need and display the metadata that's most relevant for your niche.
45
-
46
- = INSTAGRAM GALLERY =
47
- Create Instagram galleries on your website by embedding entire timelines to your posts using a shortcode or the plugin's Instagram widget on your sidebar.
48
-
49
- = INDIVIDUAL AND MIXED FEEDS =
50
- You can choose to show a single feed on your pages and posts, but you can make things more interesting and create mixed feeds (Premium version). With single feeds you can show posts from your Instagram account and single hashtag. Mixed feeds, on the other hand, can contain your Instagram account and multiple hashtags. A front end filter is available for mixed feeds (Premium version).
51
-
52
- = FILTERED FEEDS =
53
- Use Conditional Filters of the WD Instagram Feed plugin to display or skip certain content from the feeds by setting up a filter logic and condition types. Add custom condition types if necessary and fine-tune your feeds. Conditional Filters option is available for Premium version only.
54
-
55
- = INSTAGRAM WIDGET =
56
- Want to show Instagram feeds on your website sidebar? Do it quick and easy with the help of the Instagram Feed Widget.
57
-
58
- = LIGHTBOX =
59
- WD Instagram Feed features a powerful lightbox. It provides support for HTML5 video, 15 transition effects (Premium version), filmstrip (Premium version) and carousel features. The lightbox works great with Instagram touch as well.
60
-
61
- = SCROLL AND PAGINATION =
62
- The plugin comes with a classic pagination with next and previous buttons. You can also choose the infinite scroll option (Premium version) to bring better user experience. This allows to view more images when scrolling the page down. You can set the the number of images you want to show per page.
63
-
64
- = THEMES =
65
- Choose from the two default themes offered by the plugin or create multifarious themes (Premium version) by customizing the colors, sizes and display styles. WD Instagram Feed allows you to have separate layout settings for each theme with custom settings for header, user data and pagination.
66
-
67
- = SETTINGS/CUSTOMIZATION =
68
-
69
- *Some customizations described here are available in Premium version. Please refer to feature summary for additional info.*
70
-
71
- WD Instagram Feed comes with extensive customization options for the feeds, layouts, themes and content display. Every new feed you add to your website has its own settings for the feed and for the lightbox that pops up when people click on an image or video. Upon clicking on the image you can choose to redirect people to Instagram, open the image in the lightbox, or chose the custom redirect option. There are various image sorting options available based on the date, likes, comments, and on random basis. Media loading options include load more button, infinite Instagram scrolling, or classic pagination with next and previous buttons. You can enable "Follow on Instagram" button from the feed settings and let your visitors follow the displayed Instagram accounts directly from your site. The number of photos you display on the page or post can be specified from the feed settings, as well as the number of the loading images.
72
-
73
-
74
- [Premium version adds](https://web-dorado.com/products/wordpress-instagram-feed-wd.html)
75
-
76
- * Masonry Layout feeds
77
- * Blog Style Layout feeds
78
- * Image metadata (Instagram tag,image caption, comments, like) display
79
- * Mixed and multiple feeds (Instagram account posts with multiple hashtags)
80
- * Fully Customizable Themes
81
- * Vertical/horizontal filmstrip in lightbox
82
- * HTML5 Video Support in Lightbox
83
- * Blog Style and Image Browser views for displaying Instagram videos
84
- * 15 Lightbox transition effects
85
- * Social sharing buttons (Facebook, Twitter, Google+, LinkedIn and Pinterest)
86
- * Infinite scroll for the feed (Similar to Instagram standard)
87
- * Instagram Comments display in Lightbox
88
- * Instagram Hashtag filtering options
89
- * Conditional Filters
90
-
91
- ###IMPORTANT:
92
- If you think you found a bug in WD Instagram Feed or wonder how to add Instagram to your website, or how to get Instagram plugin up and running, please check out [Support Forum](https://wordpress.org/support/plugin/wd-instagram-feed). Additional information on how to download Instagram plugin to your website you can find in our user manual If you do not find a solution in the forum, do not hesitate to [click here to contact us](https://web-dorado.com/support/contact-us.html).
93
-
94
- == Installation ==
95
-
96
- #### Thank you for your interest in WD Instagram Feed.
97
-
98
- Here are two ways of installing WD Instagram Feed: via WordPress backend and via FTP. Let's discuss each case individually:
99
-
100
- **Installing via WordPress**
101
-
102
- Login to the WordPress Administrator Panel.
103
- Go to Plugins > Add New > Upload.
104
- Click Choose file button and select the zip folder of WD Instagram Feed plugin and press Install now button.
105
- Click Activate button.
106
-
107
- **Installing via FTP**
108
-
109
- Login to your hosting space via an FTP software, e.g. FileZilla.
110
- Unzip the downloaded WD Instagram Feed plugin folder without making any changes to the folder.
111
- Upload the Instagram plugin into the following location wp-content>wp-plugins.
112
- Login to the WordPress Administrator Panel.
113
- Activate WD Instagram Feed by going to Plugins and pressing Activate button.
114
-
115
- **Creating an Instagram Feed**
116
-
117
- Creating a responsive Instagram feed is simple and easy with this user-friendly Instagram importer plugin. Go to **WD Instagram Feed > Feeds** and press **Add New.** Here you can choose Instagram feed layout and manage lightbox options. From the lightbox options you can enable filmstrip, slideshow, and take full control how custom feed images, image galleries, pictures, Instagram gallery, and videos of this social network are displayed within the lightbox.
118
-
119
- You can enable autoplay to play photos and Instagram group images similar to an image slider. To get an Instagram slider appearance in the lightbox you'll need to adjust the lightbox and image display settings. Lightbox works great with Instagram touch. The feed will be automatically updated once users share Instagram new images. The feeds support new Instagram carousel feature, and display the images of the responsive carousel.
120
-
121
- Create an Instagram feed based on one of the available layouts - Thumbnail, Masonry, Blog Style, Image Browser.
122
-
123
-
124
-
125
- == Frequently Asked Questions ==
126
-
127
- = What can I achieve using Instagram Feed plugin? =
128
-
129
- WordPress Instagram Feed is a user-friendly plugin with enhanced functionality, which lets you create and showcase Instagram feeds on your WordPress website. You can build **multiple feeds** with the media of **your Instagram account** or **hashtag** by completing just a few simple steps.
130
-
131
- You will need a couple of minutes to incorporate **Instagram API** to your website. The plugin will automatically create a feed from your Instagram profile. Additionally, you can build Instagram feeds and show posts of your username, as well as **hashtags.**
132
-
133
- Customize the features of the feeds by configuring advanced settings of Instagram Feed WD plugin. Its user-friendly tools and features allow you fully personalize your feeds, set up conditional filters for feed username and hashtags, modify **image lightbox** settings and more.
134
-
135
- Control the appearance and layout of your Instagram feed using 4 outstanding **layout types** and **theme options** of Instagram Feed WD plugin. You can publish the feeds with one of the following layouts:
136
-
137
- * Thumbnails,
138
- * Masonry,
139
- * Blog Style,
140
- * Image Browser.
141
-
142
- Furthermore, its **lightbox** feature allows you to also display the images as a beautiful image slider in a popup. The themes of Instagram Feed WD plugin let you modify each and every attribute of the feeds.
143
-
144
- With Instagram Feed WD plugin, you can showcase photos and videos, share wonderful food and travel blog pictures of Instagram with your website visitors. In case you use Instagram for e-commerce, this is the best Instagram plugin to engage your social network followers to your website.
145
-
146
- The plugin is designed with mobile-friendly layout, letting you provide great user experience on any screen size or device.
147
-
148
- = How can I get my Instagram Access Token? =
149
-
150
- To begin creating feeds with WordPress Instagram Feed plugin, you need to configure Instagram app for website and get **Instagram Access Token** first. This is a very simple process. Visit **Instagram Feed > Settings** page from WordPress administrative dashboard to start the setup.
151
-
152
- Press **Sign in with Instagram** button. In case you are logged in to [Instagram.com](https://www.instagram.com/) from your web browser, **Access Token** and **Username** fields will be automatically filled in. Otherwise, if there are no logged in users, a popup will appear letting you sign in.
153
-
154
- To use a different Instagram account, simply press **Reset access token and username** button. Afterwards, you can sign out from Instagram.com, and get access token for another Instagram user by logging in again.
155
-
156
- This is all you need to do, to be able to embed Instagram gallery to your WordPress website. You can then display your Instagram photos and videos as a responsive carousel, as widgets on the sidebar or footer of your site, and more.
157
-
158
- As soon as you sign in to Instagram and get Access Token, a sample feed is created with your account and placed on a **private page** of your WordPress website. You can view your Instagram image gallery by clicking on **View your feed** button, or modify its settings and appearance by pressing **Edit your feed.** The feed will also appear on **Instagram Feed WD > Feeds** page.
159
-
160
- Note, that this feed is not visible to website visitors, unless you edit its page and make it **public.**
161
-
162
- = How to embed Instagram media to my WordPress site? =
163
-
164
- To begin creating your first feed, navigate to **Feeds** page of Instagram Feed plugin. This page of our Instagram HTML plugin contains a list of all your feeds created with the plugin. You will see the feed of your Instagram timeline appearing on this list.
165
-
166
- Press **Add New** button to start building your feed and import Instagram posts to your WordPress website.
167
-
168
- Firstly, make sure to set a **Feed Title** for your feed. Then, let's configure the mandatory settings which are necessary for displaying the feed. Click on **Media** bar to expand these options.
169
-
170
- Use **Feed Media** drop-down box to choose the content of your Instagram feed. **Feed Usernames and Hashtags** option lets you input your Instagram username and display feeds containing images and videos of your account. You can also add **hashtags** and showcase your posts with those hashtags.
171
-
172
- Write the usernames without the **@** sign, however for hashtags, you do need to add **#** at the beginning.
173
-
174
- While using this Instagram media importer tool, make sure to specify one username or hashtag at a time, and press **Add** button each time.
175
-
176
- You can customize the **sorting** of the media on your feed using the following settings.
177
-
178
- **Sort Media By** allows you to choose the **parameter,** based on which the photos and videos on your Instagram feed will be ordered. You can select one of the following:
179
-
180
- * Date,
181
- * Likes,
182
- * Comments,
183
- * Random.
184
-
185
- **Sorting Order** option lets you specify the **direction** of ordering the Instagram media on your feed. It can have one of the following two values:
186
-
187
- * Ascending,
188
- * Descending.
189
-
190
- **Media** section of feed settings also allows you to change the action which takes place after users click on an image. With **Action OnClick** option, Instagram Feed WD plugin provides 4 functions for this:
191
-
192
- * **Open Lightbox.** Clicking on a post will open a popup box with the large version of the image or video, letting you navigate through the rest of your feed media just like a slider.
193
- * **Redirect To Instagram.** This option will redirect users to the same post on Instagram when they click on an item in the feed.
194
- * **Custom Redirect.** Select this option and specify a link in Redirect URL input box. Users will be taken to this page after clicking on a post in the feed.
195
- * **Do Nothing.** Clicking on posts of the feed will not trigger any functions.
196
-
197
- = Can I display more than one Instagram feeds on my website? =
198
-
199
- Yes, you can add as many Instagram feeds as you want to your website and show them on posts and pages.
200
-
201
- Add the Instagram feeds to posts and pages by using the **shortcode** provided or choosing from the list by clicking on the Instagram Feed WD button.
202
-
203
- = What layouts can I use to showcase my Instagram feed? =
204
-
205
- Instagram Feed plugin provides 4 beautiful layouts, which you can use to showcase the photos and videos on your Instagram feeds. Each of them can be fully personalized to fit the style of your website.
206
-
207
- Use **Select Layout** option and choose the appearance:
208
-
209
- * Thumbnails,
210
- * Masonry,
211
- * Blog Style,
212
- * Image Browser.
213
-
214
- Let's go through all 4 layouts and help you choose the one that suits your site the best.
215
-
216
- **Thumbnails Layout**
217
-
218
- **Thumbnails Layout** of Instagram Feed WD plugin provides an equally aligned beautiful Instagram grid, consisting of the thumbnail images of the media on your feed. All thumbnails on this layout are set to have the same dimensions, and you can assign the width and height you like.
219
-
220
- **Masonry Layout**
221
-
222
- Just like Thumbnails, **Masonry Layout** is also built with the thumbnail images of Instagram posts. However, its Instagram grid is not aligned equally. The thumbnail images are created as the exact miniatures of their large versions (i.e. the dimensions of thumbnails and large posts are proportional).
223
-
224
- **Blog Style Layout**
225
-
226
- **Blog Style Layout** is a perfect choice if you want to post a media file on Instagram and repost the content to WordPress website as a photo blog. The images are displayed with larger dimensions, than on Thumbnails and Masonry Layouts.
227
-
228
- You can enable captions, descriptions, and hashtags of the media and show them below the posts on your feed.
229
-
230
- **Image Browser Layout**
231
-
232
- Just like Blog Style, **Image Browser Layout** of Instagram Feed WD plugin also displays the posts with larger dimensions. However, this layout shows a single large image with navigation buttons, similar to a slideshow. You can navigate through the posts by clicking on **Next** and **Previous** buttons.
233
-
234
- = How can I personalize the features of my Instagram feed? =
235
-
236
- Instagram Feed social plugin comes with a number of advanced customization options, which you can use to change the functionality and features of your feeds. You can modify the feed as far as:
237
-
238
- * changing its **pagination** and **loading,**
239
- * defining the number of displayed and newly loaded posts,
240
- * personalizing the settings of all 4 layouts,
241
- * controlling the **sort order** of the media on your Instagram feed,
242
- * choosing the attributes to showcase with the feed,
243
-
244
- and much more.
245
-
246
- To begin configuring these options, edit your feed and open **Feed Settings** tab. Scroll down a bit to find the following two sections:
247
-
248
- * Layout and Pagination,
249
- * Advanced.
250
-
251
- Let's go through each section and discuss every option individually.
252
-
253
- **Layout and Pagination**
254
-
255
- **New Media Loading.** Select the method to use while loading more images and videos on your Instagram feed. You can choose one of the following options:
256
-
257
- * Pagination,
258
- * Load More Button,
259
- * Infinite Scroll,
260
- * None.
261
-
262
- **Number of Columns.** Set the number of columns which will be used to align Instagram media in **Thumbnails** and **Masonry** feeds.
263
-
264
- **Number of Images/Videos.** Specify the number of Instagram media to display when the feed is loaded initially.
265
-
266
- **Number of New Media.** Set the number of posts which will be added to the feed, after the user clicks on **Load More** button or triggers **Infinite Scroll.**
267
-
268
- **Combine and Sort Again After Loading More.** If this option is enabled, both newly loaded and existing media are mixed then resorted together according to **Sort Media By** setting.
269
-
270
- **Make Layout Not Responsive.** When this option is selected, the layout of the feed does not convert to single-column display on small screens. The feed width is shrunk, but the number of columns stays the same.
271
-
272
- **Number of Media for Initial Preload.** Specify the number of posts to preload, when an Instagram feed is first loaded. This option helps to load a few posts at once, then navigate through the media smoothly. Note, that this setting applies to **Image Browser** feeds only.
273
-
274
- **Number of Media for Pagination Preload.** Set the number of posts to preload, while the user navigates through the media by clicking on **Next** or **Previous** buttons. Note, that this option is applicable to **Image Browser** layout only.
275
-
276
- **Advanced**
277
-
278
- **Theme.** Select the theme which will be used to style the appearance of your Instagram feed. You can edit the theme or create a new one from **Instagram Feed WD > Themes** page.
279
-
280
- **Feed Media Resolution.** Choose the resolution of the media on your Instagram feed. You can select one of the following options:
281
-
282
- * Optimal,
283
- * Standard (640 pixels),
284
- * Low (320 pixels),
285
- * Thumbnail (150 pixels).
286
-
287
- In case **Optimal** is selected, the dimensions of the loaded media are calculated according to the width of feed container. This provides fast loading and no stretching images.
288
-
289
- **Featured Image.** Set the featured image of the header section of your Instagram feed. The image is pulled from the **user profile** or **hashtag** you select.
290
-
291
- **Show Feed Header.** Activate this option to display a header on your Instagram feed. It includes **Feed Title** and **Featured Image** you specified.
292
-
293
- **Show User Data.** If this option is enabled, additional details from the selected accounts and hashtags will be displayed on your Instagram feed. You can activate:
294
-
295
- * **Follow On Instagram** button,
296
- * Number of **Posts** and **Followers** of Instagram account/hashtag,
297
- * **User Bio** of your Instagram account.
298
-
299
- **Show Media Caption.** Enable this setting to display descriptions of Instagram photos or videos below them, fully or partially.
300
-
301
- **Show Full Description.** Activate this setting to show the full captions of Instagram media. Note that this option only applies to feeds with **Masonry** layout.
302
-
303
- **Show Number of Likes.** Mark this option as checked to display the number of likes on each Instagram post.
304
-
305
- **Show Number of Comments.** Display the number of comments on Instagram photos or videos with your feed.
306
-
307
- **Show Username On Image Thumb.** Activating this setting will let you show your Instagram account username on the images or videos of your feed.
308
-
309
- = Is it possible to modify the settings of Instagram lightbox? =
310
-
311
- Instagram Feed plugin comes with a popup box, which appears when users click on a photo or a video in the feed. It lets them display the larger versions of Instagram media, as well as play videos and navigate through the posts.
312
-
313
- To run the lightbox by clicking on the media, make sure **Action OnClick** option of **Feed Settings** tab is set to **Open Lightbox.**
314
-
315
- Just like other attributes of Instagram feeds, **Lightbox Settings** can be personalized as well. Edit your feed, then navigate to **Lightbox Settings** tab. Here you will find all the tools which help you tweak the features of the lightbox.
316
-
317
- The user-friendly lightbox options are divided into the following two main sections:
318
-
319
- * General Settings,
320
- * Advanced Settings.
321
-
322
- Let's discuss these two sections and discover the benefits of the options they provide.
323
-
324
- **General**
325
-
326
- **General** section of Lightbox Settings mainly provides options to modify the dimensions and effects on the popup box. You are able to make the following changes:
327
-
328
- * set the dimensions of the lightbox,
329
- * configure autoplay and choose from 14 amazing animation effects,
330
- * activate full-width lightbox,
331
-
332
- and more.
333
-
334
- **Advanced**
335
-
336
- With **Advanced** section of Lightbox settings, you have full control of what's shown with the popup pox of Instagram feed images and videos. It takes just a few steps to get the appearance of the lightbox exactly as you wish to have it.
337
-
338
- Lightbox Advanced options allow you to:
339
-
340
- * add a filmstrip to the lightbox, containing the thumbnails of Instagram posts,
341
- * customize the navigation on the lightbox, adding **Next** and **Previous** buttons,
342
- * activate image **captions** and display them on the image,
343
- * enable **right-click protection,** and thus disallow right-click on images and videos,
344
- * place **share, fullscreen, download** and other control buttons,
345
- * add **comments section** to the lightbox,
346
-
347
- and much more.
348
-
349
- = Can I create mixed Instagram feeds my Instagram account and multiple hashtags? =
350
-
351
- This option is available in **Premium** version. There, you can create mixed Instagram feeds with your Instagram account and several hashtags. You can even create the combination of both.
352
-
353
- = I see an invalid access Token error. What should I do? =
354
-
355
- If you are seeing this alert message on your Instagram Feed WD plugin, please note, that Instagram access tokens expire from time to time. Therefore you need to get new from your Instagram account again.
356
-
357
- Please sign in to your Instagram account and get a new token. Add it to **Instagram Feed WD > Settings** page.
358
-
359
- If the token will still cause "Invalid access token" error, revoke access for the plugin [here](www.instagram.com/accounts/manage_access/) and sign in again from **Settings** page.
360
-
361
- = I would like to display only the Instagram posts which have certain hashtags. How can this be done? =
362
-
363
- *You can definitely do this with premium version!*
364
-
365
- In case you wish to showcase Instagram feeds with additional, more definitive filters, **Conditional Filters** feature of Instagram Feed plugin will help you with it. This functionality allows you to show images of your Instagram account with a specific hashtag, skip images which belong to certain hashtags, and more.
366
-
367
- To begin creating additional filters for your Instagram feed, edit it and navigate to **Conditional Filters** tab. Use **Enable Conditional Filters** to activate the necessary tools.
368
-
369
- **Feeds to Filter** option shows the basis for conditional filters. These are the username and hashtags you have added to your Instagram feed. The filters will search among the posts of the username and hashtags, and pull those which fulfill the specified condition.
370
-
371
- Now let's configure the condition itself. First, you need to choose the logical operator of the condition using **Filter Logic** setting. Select one of the following 3 operators:
372
-
373
- * AND: Shows Instagram posts that belong to **all sources** of filtering.
374
- * OR: Shows Instagram media which belong to **at least one of the sources** of filtering.
375
- * NOR: Hides Instagram posts which belong to **at least one of the sources** of filtering.
376
-
377
- Afterwards, use **Add Condition** option to specify the parameter for the condition, which can be one of the following.
378
-
379
- * **Hashtag.** If you wish to filter your accout feed with a certain hashtag, you can use this option.
380
- * **Mention.** This option can be used for feeds both with hashtags and username, i.e. you can display posts where another user is mentioned.
381
- * **Description.** Just like Mentions, Description can be used both with hashtags and username. You can specify a single keyword or a phrase, which is used in descriptions of your Instagram posts.
382
- * **Instagram Media Link.** You are able to filter using the shareable link of Instagram media. Simply provide the full URL of the post, as the following example: https://www.instagram.com/p/Be6H6G9lmCQ/
383
-
384
- Afterwards, select the **Condition Type** for the filter, which corresponds to the parameter you are adding. For instance, in case you are adding #liveauthentic hashtag, the **Condition Type** needs to be set as **Hashtag** as well.
385
-
386
- Lastly, click **Add Condition** button, and the parameters you have added will be visible below **Result** section. Make sure to press **Save** after you finish configuring the filters.
387
-
388
- With **Result** option, you will see all of the added filters which will be applied to your Instagram feed.This feature is widely used on Instagram for eCommerce websites, as it serves like an Instagram feed with analytics.
389
-
390
- = How can I publish the Instagram Feed on my website? =
391
-
392
- Using WordPress Instagram feed plugin, you can publish your feeds with the following 3 different methods:
393
-
394
- * on a WordPress **page** or **post,**
395
- * as a **widget,**
396
- * on a **custom template** with a **PHP function.**
397
-
398
- A quick guide for this is provided with **How To Publish Feed** tab above your Instagram feed. Let's go through the necessary steps of each publishing method, and help you choose the one that fits your site the best.
399
-
400
- **Publishing the Feed on Pages or Posts**
401
-
402
- To publish Instagram feeds with this method, add or edit the page or post from WordPress administrative dashboard of your website. Click on **Add Instagram Feed** button from the top of the post editor. Afterwards, select the feed you wish to publish and press **Insert.**
403
-
404
- The **shortcode** of Instagram Feed WD plugin will be added to the content of your page/post.
405
-
406
- Alternatively, you can copy the shortcode from **Instagram Feed WD > Feeds** dashboard, under **Shortcode** column, and paste it into the content of your WordPress page/post.
407
-
408
- **Publishing Instagram Feed as a Widget**
409
-
410
- Navigate to **Appearance > Widgets** page from WordPress administrative dashboard to begin configuring your Instagram feed widget. Firstly, search for **Instagram Feed WD Widget** and drag it to the widget area, where you wish to display your feed.
411
-
412
- Provide a **Title** for your Instagram Feed, then choose the feed to publish using **Feed** drop-down box. Make sure to specify **Number of Columns,** as well as **Number of images** to show on your Instagram feed.
413
-
414
- Also, you can activate the following attributes and display them with your feed:
415
-
416
- * post **descriptions,**
417
- * **likes** and **comments,**
418
- * **Load More** button.
419
-
420
- **Publishing with PHP function**
421
-
422
- It is also possible to publish Instagram feeds on **custom PHP templates** using their **PHP functions.** To do this, simply copy the PHP function of your feed from **Instagram Feed WD > Feeds** page, then paste it to the necessary section of your custom template.
423
-
424
- = Is it possible to change the Instagram Feed themes to match my website? =
425
-
426
- *This is possible in Premium version.*
427
-
428
- Instagram Feed plugin provides a variety of user-friendly styling options, which let you customize the appearance and features of your Instagram feed even further. You can access these tools from **Instagram Feed WD > Themes** page.
429
-
430
- By default, Instagram Feed WD plugin comes with 2 themes:
431
-
432
- * Instagram,
433
- * Elegant.
434
-
435
- You can modify and use them on your feeds, or create a new theme with your own configurations. To select a default theme for your Instagram feeds, click on the star icon next to the corresponding entry.
436
-
437
- Each theme is divided into 2 main sections.
438
-
439
- **Customizing Feed**
440
-
441
- These theme settings allow you to modify global styling of your feeds, such as their width, text font, pagination attributes and more. This toolbox consists of the following sub-sections:
442
-
443
- * **General.** Configure the main parameters of the feed with these options, e.g. **feed container width** and **background color.**
444
- * **Header.** Edit header parameters, its text **font styles, image size, padding** and other attributes.
445
- * **User Data.** Set the appearance of user information section above the feeds, such as **text font size,** and the styling of **follow button** and **user bio.**
446
- * **Pagination.** Modify the styles of **Load More** button, as well as the font size, margins, and alignment of **Pagination** buttons.
447
- * **Thumbnails, Masonry, Blog Style** and **Image Browser.** Use the options on these tabs to modify default styles of layouts provided by Instagram Feed WD plugin. You can edit the border and padding of **photo wrapper,** text color and font of **post caption, comments** and **likes,** transparency of **image overlay,** and more.
448
-
449
- **Customizing Lightbox**
450
-
451
- You can customize each attribute of Instagram Feed WD lightbox using the tools in this section. They will help you change **lightbox background, control button** styles, **filmstrip** position and alignment, and more. Navigate through the following sub-sections to change the options:
452
-
453
- * General,
454
- * Control Buttons,
455
- * Close Button,
456
- * Navigation Buttons,
457
- * Filmstrip,
458
- * Info,
459
- * Comments.
460
-
461
- = Where can I change the settings of Instagram Feed plugin? =
462
-
463
- **Advanced Options** of Instagram Feed WD plugin allow you to modify a few global parameters, that apply to all feeds. Go to **Instagram Feed WD > Settings** page and click on **Advanced Options** bar to expand this toolbox.
464
-
465
- With **Minimal role to add and manage Feeds or Themes** option, you can select the WordPress user role which will have access to Instagram Feed WD plugin. The user roles of higher levels will also be able to modify and manage the feeds.
466
-
467
- **Custom CSS** lets you write your own CSS code for your Instagram feeds. This is handy, in case you need to make specific changes regarding the styling of your feed. Whereas with **Custom Javascript** you are able to apply additional scripts.
468
-
469
- For instance, let's consider you have a feed with **Thumbnails Layout,** and besides displaying the feed, you wish to expand captions for some posts. You can achieve this the following way.
470
-
471
- Firstly, you need to assign custom **wdi_feed_loaded** event of the plugin to the container of the Instagram feed, then set callback function for this event.
472
-
473
- Here is an example of a script, which expands captions of posts with 0, 1, 2, 3 indexes:
474
-
475
- `jQuery('#wdi_feed_0').on('wdi_feed_loaded',function(){
476
- jQuery('.wdi_photo_title').eq(0).trigger('click');
477
- jQuery('.wdi_photo_title').eq(1).trigger('click');
478
- jQuery('.wdi_photo_title').eq(2).trigger('click');
479
- jQuery('.wdi_photo_title').eq(3).trigger('click');
480
- });`
481
-
482
- Make sure to **Save** Changes after you finish modifying Advanced Options.
483
-
484
- **Uninstalling Instagram Feed WD Plugin**
485
-
486
- In case you wish to completely remove Instagram Feed WD plugin, you can **Uninstall** it using **Instagram Feed WD > Uninstall** menu item. However, it is important to note, that uninstalling the plugin will delete all feeds, reset all options to their defaults, and remove other data on the plugin.
487
-
488
- Please make sure you don't have any important information before you proceed.
489
-
490
-
491
- == Screenshots ==
492
-
493
- 1. WordPress WD Instagram Feed - Thumbnail layout
494
- 2. WordPress WD Instagram Feed - Image browser layout
495
- 3. WordPress WD Instagram Feed - Lightbox
496
- 4. WordPress WD Instagram Feed - Edit Instagram Feed
497
- 5. WordPress WD Instagram Feed - Theme Settings
498
-
499
- == Changelog ==
500
-
501
- = 1.3.5 =
502
- Changed: Deactivation popup
503
-
504
- = 1.3.4 =
505
- New: Display website link in header along with bio
506
-
507
- = 1.3.3 =
508
- New: Cache debugging tools
509
- New: WD library updated
510
- New: GDPR compliance help
511
-
512
- = 1.3.2 =
513
- New: Signing up with multiple accounts
514
- Fixed: Settings page layout when language is not English
515
-
516
- = 1.3.1 =
517
- Fixed: Security issues. Reported by Karan Saini https://www.karansaini.com/
518
-
519
- = 1.3.0 =
520
- New: Caching of Instagram data. API rate limits do not constrain feed loading anymore.
521
- New: Compatibility with Gutenberg editor.
522
- Improved: It is possible now to manually edit access token.
523
- Changed: Plugin will output a warning when an incompatible version of Font-Awesome is loaded (SVG generated by JS)
524
- Fixed: Error when PHP filter extension is not enabled.
525
- Fixed: PHP warning in feed editor page appearing sometimes.
526
-
527
- = 1.2.19 =
528
- Fixed: Loading more images
529
-
530
- = 1.2.18 =
531
- Important: Instagram shut down its API partially without any warning. See [changelog](https://www.instagram.com/developer/endpoints/media/). It is not allowed anymore to display photos from other Instagram accounts which are not your own.
532
- Sorry.
533
-
534
- = 1.2.17 =
535
- Fixed: Video play issue on mac safari
536
- Changed: Uninstall moved to settings page
537
-
538
- = 1.2.16 =
539
- New: Instagram slideshow is supported in popup
540
- New: UX of feeds and themes admin screen, it is now similar to posts list screen
541
- New: Inline actions for feeds and themes in admin list view
542
- Improved: Theme styles are generated as CSS files, not inline styles. Faster page loading and better styles caching
543
- Improved: Popup is faster now and less data is being sent via AJAX
544
-
545
- = 1.2.15 =
546
- Added: "How to publish feed" tab in feeds editor screen
547
- Added: Closeable metaboxes in feeds editor screen
548
- Added: Feed preview button in feeds editor screen
549
- Changed: Save, apply and cancel buttons in feed and theme editor screens
550
- Changed: Feed and theme title input design
551
- Fixed: Minor bugs and conflicts with some themes
552
- Improved: Shortcode popup design
553
- Removed: Update submenu (Premium)
554
-
555
- = 1.2.14 =
556
- Fixed: Conflict with Page Builder by SiteOrigin
557
-
558
- = 1.2.13 =
559
- Fixed: Conflict with Divi
560
-
561
- = 1.2.12 =
562
- New: Customize feed media resolution. Choose between optimal or custom resolutions, fast loading and higher quality.
563
- Improved: Redesigned feed and theme editor screens.
564
- Improved: More user-friendly names and descriptions of feed settings.
565
- Improved: UX when access token is expired or have not been obtained yet.
566
- Improved: UX when there are JS errors on front-end.
567
- Fixed: Minor: do not include custom scroll bar JS if feed does not have popup.
568
-
569
- = 1.2.11 =
570
- Changed: Scripts and styles are minified by default
571
- Changed: Font-Awesome has been updated to version 4.7.0 and loaded from CDN
572
- Changed: Pagination buttons are smaller now in default theme
573
- Changed: Deactivation popup.
574
-
575
- = 1.2.10 =
576
- Fixed: CSS XSS vulnerability in lightbox
577
-
578
- = 1.2.9 =
579
- Changed: Web-Dorado links
580
-
581
- = 1.2.8 =
582
- Changed: Allow more users and hashtags in feed settings
583
-
584
- = 1.2.7 =
585
- Changed: Show notification to install Backup WD plugin only on plugin pages
586
-
587
- = 1.2.6 =
588
- Change: Introduction of Backup WD plugin
589
-
590
- = 1.2.5 =
591
- Change: "create_function" is not used anymore
592
-
593
- = 1.2.4 =
594
- Fixed: WD Instagram Feed compatibility issue with Better WordPress Minify plugin, thanks to @amityweb for bug report
595
-
596
- = 1.2.3 =
597
- Change: WD library updated to version 1.0.11
598
- Fixed: Error message when editing feed and token is expired
599
-
600
- = 1.2.2 =
601
- New: Redirection to custom URL
602
-
603
- = 1.2.1 =
604
- New: Option to disable loading of new images in feed
605
-
606
- = 1.2.0 =
607
- New: Default feed
608
- Fixed: Infinite scroll triggering (PRO)
609
- Fixed: "No media in feed" message on mobile masonry feed
610
- Fixed: Minor style conflicts with some themes
611
-
612
- = 1.1.30 =
613
- Changed: Frontend styles optimized, loads faster now
614
-
615
- = 1.1.29 =
616
- Fixed: Display only published feeds in feeds selector popup for shortcode
617
- Changed: UX improvement - no error message when user first inserts a widget then creates feeds
618
-
619
- = 1.1.28 =
620
- Fixed: Conflict with some themes
621
-
622
- = 1.1.27 =
623
- Fixed: Overriding window.onload function
624
- Changed: Some strings on frontend are translatable now
625
-
626
- = 1.1.26 =
627
- Fixed: Conflict with Beaver Builder
628
- Fixed: Frontend error messages in old Chrome and Safari browsers
629
- Changed: Translations hosted on WordPress.org
630
-
631
- = 1.1.25 =
632
- New: UX improvements: when authorizing and editing feeds
633
- Changed: JavaScript error notices on frontend
634
- Fixed: Updates page restored (PRO)
635
- Fixed: Deactivation popup in uninstall page (PRO)
636
- Fixed: Subscribe after uninstall
637
-
638
- = 1.1.24 =
639
- Added: Overview page
640
- Changed: Deactivation
641
-
642
- = 1.1.23 =
643
- Fixed: cropping of "landscape" images in thumbnails layout
644
-
645
- = 1.1.22 =
646
- New: message displayed on frontend if feed has no media
647
- Fixed: JS errors for media with Instagram's new "Slideshow" feature. This feature is not supported by Instagram's API yet.
648
- Changed: Errors by plugin and Instagram API are alerted in frontend only for admins, otherwise output the message to the Web Console
649
- Changed: Custom attribute "wdi_media_user" added to media containers in frontend. Useful for adding different event listeners, e.g. custom redirects for every user's media.
650
- Changed: Minor style conflicts fixed
651
-
652
- = 1.1.21 =
653
- New: Three new plugins added to featured plugins list: Ad Manager WD, Youtube WD and Staff Team WD
654
- Fixed: Colors and opacities of share buttons in lightbox (PRO)
655
-
656
- = 1.1.20 =
657
- New: Instagram feed displayed in AJAX-loaded content. AJAX request callback needs to call wp_footer() in the end.
658
-
659
- = 1.1.19 =
660
- Fixed: Strange bug in Instagram API when user feed pagination is null, causing JS errors in frontend
661
-
662
- = 1.1.18 =
663
- Fixed: Frontend filter colors (PRO)
664
- Changed: Featured plugins, brand new Mailchimp Forms WD plugin added
665
-
666
- = 1.1.17 =
667
- New: Option in feed settings to show small size images and low-bandwidth videos when viewed in mobile devices
668
- Fixed: Escaping in custom JS
669
- Change: WP 4.7 compatibility - language of frontend content in AJAX response
670
-
671
- = 1.1.16 =
672
- Fixed: Unicode "paragraph separator" symbol in media caption crashes lightbox
673
- Fixed: Javascript error in admin feed page and styling issue in lightbox because of some non-standard themes
674
-
675
- = 1.1.15 =
676
- New: Show hashtag media number in header
677
- Fixed: Scripts dependency on underscore.js
678
- Fixed: Compatibility issues with Yoast SEO
679
-
680
- = 1.1.14 =
681
- Fixed: Single user bio not shown
682
- Changed: Plugin logo
683
- Changed: Featured plugins logos
684
-
685
- = 1.1.13 =
686
- Fixed: Changes in database after plugin version update via FTP or AJAX requests with silent activation
687
-
688
- = 1.1.12 =
689
- New: Feed based on liked media (Pro)
690
- Fixed: Hidden media in last page
691
- Fixed: Minor issues
692
-
693
- = 1.1.11 =
694
- Added: Setting to show media descriptions in widget mode (PRO)
695
- Fixed: Untranslatable strings in widget editor
696
- Change: Featured plugins list
697
-
698
- = 1.1.10 =
699
- Added: New text in uninstall page
700
- Fixed: Video not centering issue on blogstyle
701
- Added: Swedish translations
702
-
703
- = 1.1.9 =
704
- New: Option to set minimal user role for adding and managing feeds and themes
705
- Fixed: Masonry feed thumbnails overlay opacity (Pro)
706
-
707
- = 1.1.8 =
708
- Changed: Font-Awesome updated to version 4.6.3
709
-
710
- = 1.1.7 =
711
- New: Featured themes admin page
712
- Fixed: Javascript error in hashtag feed
713
-
714
- = 1.1.6 =
715
- Change: Added compatibility with "All in one SEO pack" and other plugins running shortcodes in page head
716
-
717
- = 1.1.5 =
718
- Fixed: Javascript error on Firefox and Safari
719
-
720
- = 1.1.4 =
721
- Fixed: Error handling in case of wrong access_token
722
- Fixed: Image description not opening after pagination (Pro)
723
- Fixed: Do not show load more button if feed media are finished
724
- Fixed: Infinite scroll triggering bug (Pro)
725
-
726
- = 1.1.3 =
727
- New: French translation (Thanks to Guillaume Barjou)
728
- New: English US and UK translation files. Edit them to change default strings
729
- Fixed: Image sizes and overwflows in thumbnails layout
730
- Fixed: Lightbox filmstrip thumb styles (Pro)
731
-
732
-
733
- = 1.1.2 =
734
- Fixed: Bug when saving theme data to some MySQL 5.6 databases
735
- Changed: Pagination of hashtag feeds restored
736
- Changed: Check and get user id on frontend if empty for some unknown reason
737
-
738
- = 1.1.1 =
739
- Fixed: Bug when duplicating feeds
740
-
741
- = 1.1.0 =
742
- **IMPORTANT: Instagram changed the API. You need to get a new access token by using "Sign in with Instagram" button on the Settings page in order to keep your WD Instagram Feed plugin functioning after June 1.**
743
- new: Instagram new API
744
- new: Spanish translation (Thanks to Alexandro Lacadena Gomez)
745
-
746
- = 1.0.10 =
747
- Temporarily disable pagination in hashtag based feeds
748
- Changed: Russian Translations ( Thanks to Alex Petrin )
749
-
750
- = 1.0.9 =
751
- Added: Option for displaying image loading buttons in widgets
752
- Added: Permission for authors displaying instagram feeds on posts
753
-
754
- = 1.0.8 =
755
- Fixed: Infinite Scroll bug
756
- Changed: Show videos play button when redirect is enabled
757
-
758
- = 1.0.7 =
759
- ADD: Image Hover Effects (Pro)
760
-
761
- = 1.0.6 =
762
- New: Conditional Filters (Pro)
763
- New: Option for displaying username in masonry/thumbnails view (Pro)
764
- Fixed: Minor bugs
765
- New: Russian translation (Thanks to Ruslan Tertyshny).
766
-
767
- = 1.0.5 =
768
- New: New year promo
769
-
770
- = 1.0.4 =
771
- Fixed: Bug in layout
772
-
773
- = 1.0.3 =
774
- Fixed: PHP function in feeds list
775
-
776
- = 1.0.2 =
777
- Fixed: PHP error after plugin update
778
-
779
- = 1.0.1 =
780
- Fixed: PHP 5.3 compatibility
781
- Fixed: Video redirect bug
782
- Changed: User info styles
783
-
784
- = 1.0.0 =
785
- Initial version
786
-
787
-
788
-
789
-
 
 
 
 
1
+ === 10Web Instagram Feed - Instagram Gallery ===
2
+ Contributors: webdorado,10web,progmastery
3
+ Tags: custom instagram feed, feed, instagram, hashtag, Instagram feed, instagram gallery, instagram posts, Instagram images, Instagram photos, lightbox, photos,instagram account
4
+ Requires at least: 3.9
5
+ Requires PHP: 5.2
6
+ Tested up to: 4.9
7
+ Stable tag: 1.3.6
8
+ License: GPLv2 or later
9
+ License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
+
11
+ 10Web Instagram Feed is a user-friendly plugin to display user or hashtag-based Instagram feeds as a responsive customizable gallery.
12
+
13
+ == Description ==
14
+
15
+ https://www.youtube.com/watch?v=CgZNya0HZCQ
16
+
17
+ = Useful Links: =
18
+ [Special Offer for all Premium Plugins](https://10web.io/pricing/)
19
+ [WordPress 10Web Instagram Feed ](https://10web.io/plugins/wordpress-instagram-feed/)
20
+ [Demo](https://demo.10web.io/instagram-feed/)
21
+ [User Guide](https://docs.10web.io/docs/wd-instagram-feed/)
22
+ [Support Forum](https://wordpress.org/plugins/wd-instagram-feed/)
23
+
24
+
25
+ 10Web Instagram Feed is a user-friendly WordPress plugin that can help you bring Instagram feeds with the media of your Instagram account to any of your posts and pages. It will take couple of minutes to set up and customize to your needs. 10Web Instagram Feed's settings and features will allow you to take full control over how to display the feeds and the content on your website.
26
+
27
+ 10Web Instagram Feed is a perfect fit for bloggers, photography websites, travel and food blogs and for WordPress users that want to spice up their posts with the latest images and videos from their Instagram profiles. The plugin is responsive and scales perfectly to screens of all sizes, providing better user experience across the board.
28
+
29
+
30
+ == Benefits ==
31
+ * **Increase user engagement** - Engagement on Instagram is higher than on any other social platform. Keep your visitors engaged and significantly increase surfing time and visitor retention on your website.
32
+ * **Increase brand/blog awareness** - Let your site visitors get into conversation and connect with your blog or brand. Keep your visitors tuned and increase your blog's/brand's awareness.
33
+ * **Save your time** Keep your posts authentic with content from your Instagram account without any manual work involved. Your feeds will be fresh and up to date and synced automatically.
34
+ * **Add appeal to your website** - Stunning display views, custom styling features and image lightbox effects will bring vibrancy to your posts and pages, and add to your website's overall look and feel.
35
+ * **Control** - Take pure charge of what content to display and how to display it with an extensive list of content and display settings. Specify the number of photos you display on the page and choose what happens when a visitor clicks on an image from the feed. Custom styled display views and filtered Instagram content will be a great addition to any post you publish.
36
+ * **Minimal effort** Set the plugin up and have it up and running in no time and with minimal efforts. Out of box solution that's user-friendly and simple in use.
37
+ * **Support** - The team behind 10Web Instagram Feed provides timely and effective support to all its users. We keep standards high and response time low.
38
+ * **Resource efficient** - WordPress 10Web Instagram Feed plugin loads the images pretty fast as no feed data is stored in the database. All the images, videos, captions and comments are retrieved directly from the Instagram in the front-end.
39
+
40
+
41
+
42
+ == What's in it ==
43
+
44
+ = CUSTOMIZABLE LAYOUTS =
45
+ Display the feeds in one of the available layouts Thumbnail, Image Browser, Masonry (Premium version), Blog Style(Premium version). Whether you want to have small sized image thumbnails or larger images displayed you'll find the right layout for that. Customize layouts to get exactly what you need and display the metadata that's most relevant for your niche.
46
+
47
+ = INSTAGRAM GALLERY =
48
+ Create Instagram galleries on your website by embedding entire timelines to your posts using a shortcode or the plugin's Instagram widget on your sidebar.
49
+
50
+ = INDIVIDUAL AND MIXED FEEDS =
51
+ You can choose to show a single feed on your pages and posts, but you can make things more interesting and create mixed feeds (Premium version). With single feeds you can show posts from your Instagram account and single hashtag. Mixed feeds, on the other hand, can contain your Instagram account and multiple hashtags. A front end filter is available for mixed feeds (Premium version).
52
+
53
+ = FILTERED FEEDS =
54
+ Use Conditional Filters of the 10Web Instagram Feed plugin to display or skip certain content from the feeds by setting up a filter logic and condition types. Add custom condition types if necessary and fine-tune your feeds. Conditional Filters option is available for Premium version only.
55
+
56
+ = INSTAGRAM WIDGET =
57
+ Want to show Instagram feeds on your website sidebar? Do it quick and easy with the help of the Instagram Feed Widget.
58
+
59
+ = LIGHTBOX =
60
+ 10Web Instagram Feed features a powerful lightbox. It provides support for HTML5 video, 15 transition effects (Premium version), filmstrip (Premium version) and carousel features. The lightbox works great with Instagram touch as well.
61
+
62
+ = SCROLL AND PAGINATION =
63
+ The plugin comes with a classic pagination with next and previous buttons. You can also choose the infinite scroll option (Premium version) to bring better user experience. This allows to view more images when scrolling the page down. You can set the the number of images you want to show per page.
64
+
65
+ = THEMES =
66
+ Choose from the two default themes offered by the plugin or create multifarious themes (Premium version) by customizing the colors, sizes and display styles. 10Web Instagram Feed allows you to have separate layout settings for each theme with custom settings for header, user data and pagination.
67
+
68
+ = SETTINGS/CUSTOMIZATION =
69
+
70
+ *Some customizations described here are available in Premium version. Please refer to feature summary for additional info.*
71
+
72
+ 10Web Instagram Feed comes with extensive customization options for the feeds, layouts, themes and content display. Every new feed you add to your website has its own settings for the feed and for the lightbox that pops up when people click on an image or video. Upon clicking on the image you can choose to redirect people to Instagram, open the image in the lightbox, or chose the custom redirect option. There are various image sorting options available based on the date, likes, comments, and on random basis. Media loading options include load more button, infinite Instagram scrolling, or classic pagination with next and previous buttons. You can enable "Follow on Instagram" button from the feed settings and let your visitors follow the displayed Instagram accounts directly from your site. The number of photos you display on the page or post can be specified from the feed settings, as well as the number of the loading images.
73
+
74
+
75
+ [Premium version adds](https://10web.io/plugins/wordpress-instagram-feed/)
76
+
77
+ * Masonry Layout feeds
78
+ * Blog Style Layout feeds
79
+ * Image metadata (Instagram tag,image caption, comments, like) display
80
+ * Mixed and multiple feeds (Instagram account posts with multiple hashtags)
81
+ * Fully Customizable Themes
82
+ * Vertical/horizontal filmstrip in lightbox
83
+ * HTML5 Video Support in Lightbox
84
+ * Blog Style and Image Browser views for displaying Instagram videos
85
+ * 15 Lightbox transition effects
86
+ * Social sharing buttons (Facebook, Twitter, Google+, LinkedIn and Pinterest)
87
+ * Infinite scroll for the feed (Similar to Instagram standard)
88
+ * Instagram Comments display in Lightbox
89
+ * Instagram Hashtag filtering options
90
+ * Conditional Filters
91
+
92
+ ###IMPORTANT:
93
+ If you think you found a bug in 10Web Instagram Feed or wonder how to add Instagram to your website, or how to get Instagram plugin up and running, please check out [Support Forum](https://wordpress.org/support/plugin/wd-instagram-feed). Additional information on how to download Instagram plugin to your website you can find in our user manual If you do not find a solution in the forum, do not hesitate to [click here to contact us](https://10web.io/contact-us/).
94
+
95
+ == Installation ==
96
+
97
+ #### Thank you for your interest in 10Web Instagram Feed.
98
+
99
+ Here are two ways of installing 10Web Instagram Feed: via WordPress backend and via FTP. Let's discuss each case individually:
100
+
101
+ **Installing via WordPress**
102
+
103
+ Login to the WordPress Administrator Panel.
104
+ Go to Plugins > Add New > Upload.
105
+ Click Choose file button and select the zip folder of 10Web Instagram Feed plugin and press Install now button.
106
+ Click Activate button.
107
+
108
+ **Installing via FTP**
109
+
110
+ Login to your hosting space via an FTP software, e.g. FileZilla.
111
+ Unzip the downloaded 10Web Instagram Feed plugin folder without making any changes to the folder.
112
+ Upload the Instagram plugin into the following location wp-content>wp-plugins.
113
+ Login to the WordPress Administrator Panel.
114
+ Activate 10Web Instagram Feed by going to Plugins and pressing Activate button.
115
+
116
+ **Creating an Instagram Feed**
117
+
118
+ Creating a responsive Instagram feed is simple and easy with this user-friendly Instagram importer plugin. Go to **10Web Instagram Feed > Feeds** and press **Add New.** Here you can choose Instagram feed layout and manage lightbox options. From the lightbox options you can enable filmstrip, slideshow, and take full control how custom feed images, image galleries, pictures, Instagram gallery, and videos of this social network are displayed within the lightbox.
119
+
120
+ You can enable autoplay to play photos and Instagram group images similar to an image slider. To get an Instagram slider appearance in the lightbox you'll need to adjust the lightbox and image display settings. Lightbox works great with Instagram touch. The feed will be automatically updated once users share Instagram new images. The feeds support new Instagram carousel feature, and display the images of the responsive carousel.
121
+
122
+ Create an Instagram feed based on one of the available layouts - Thumbnail, Masonry, Blog Style, Image Browser.
123
+
124
+
125
+
126
+ == Frequently Asked Questions ==
127
+
128
+ = What can I achieve using Instagram Feed plugin? =
129
+
130
+ WordPress Instagram Feed is a user-friendly plugin with enhanced functionality, which lets you create and showcase Instagram feeds on your WordPress website. You can build **multiple feeds** with the media of **your Instagram account** or **hashtag** by completing just a few simple steps.
131
+
132
+ You will need a couple of minutes to incorporate **Instagram API** to your website. The plugin will automatically create a feed from your Instagram profile. Additionally, you can build Instagram feeds and show posts of your username, as well as **hashtags.**
133
+
134
+ Customize the features of the feeds by configuring advanced settings of Instagram Feed plugin. Its user-friendly tools and features allow you fully personalize your feeds, set up conditional filters for feed username and hashtags, modify **image lightbox** settings and more.
135
+
136
+ Control the appearance and layout of your Instagram feed using 4 outstanding **layout types** and **theme options** of Instagram Feed plugin. You can publish the feeds with one of the following layouts:
137
+
138
+ * Thumbnails,
139
+ * Masonry,
140
+ * Blog Style,
141
+ * Image Browser.
142
+
143
+ Furthermore, its **lightbox** feature allows you to also display the images as a beautiful image slider in a popup. The themes of Instagram Feed plugin let you modify each and every attribute of the feeds.
144
+
145
+ With Instagram Feed plugin, you can showcase photos and videos, share wonderful food and travel blog pictures of Instagram with your website visitors. In case you use Instagram for e-commerce, this is the best Instagram plugin to engage your social network followers to your website.
146
+
147
+ The plugin is designed with mobile-friendly layout, letting you provide great user experience on any screen size or device.
148
+
149
+ = How can I get my Instagram Access Token? =
150
+
151
+ To begin creating feeds with WordPress Instagram Feed plugin, you need to configure Instagram app for website and get **Instagram Access Token** first. This is a very simple process. Visit **Instagram Feed > Settings** page from WordPress administrative dashboard to start the setup.
152
+
153
+ Press **Sign in with Instagram** button. In case you are logged in to [Instagram.com](https://www.instagram.com/) from your web browser, **Access Token** and **Username** fields will be automatically filled in. Otherwise, if there are no logged in users, a popup will appear letting you sign in.
154
+
155
+ To use a different Instagram account, simply press **Reset access token and username** button. Afterwards, you can sign out from Instagram.com, and get access token for another Instagram user by logging in again.
156
+
157
+ This is all you need to do, to be able to embed Instagram gallery to your WordPress website. You can then display your Instagram photos and videos as a responsive carousel, as widgets on the sidebar or footer of your site, and more.
158
+
159
+ As soon as you sign in to Instagram and get Access Token, a sample feed is created with your account and placed on a **private page** of your WordPress website. You can view your Instagram image gallery by clicking on **View your feed** button, or modify its settings and appearance by pressing **Edit your feed.** The feed will also appear on **Instagram Feed > Feeds** page.
160
+
161
+ Note, that this feed is not visible to website visitors, unless you edit its page and make it **public.**
162
+
163
+ = How to embed Instagram media to my WordPress site? =
164
+
165
+ To begin creating your first feed, navigate to **Feeds** page of Instagram Feed plugin. This page of our Instagram HTML plugin contains a list of all your feeds created with the plugin. You will see the feed of your Instagram timeline appearing on this list.
166
+
167
+ Press **Add New** button to start building your feed and import Instagram posts to your WordPress website.
168
+
169
+ Firstly, make sure to set a **Feed Title** for your feed. Then, let's configure the mandatory settings which are necessary for displaying the feed. Click on **Media** bar to expand these options.
170
+
171
+ Use **Feed Media** drop-down box to choose the content of your Instagram feed. **Feed Usernames and Hashtags** option lets you input your Instagram username and display feeds containing images and videos of your account. You can also add **hashtags** and showcase your posts with those hashtags.
172
+
173
+ Write the usernames without the **@** sign, however for hashtags, you do need to add **#** at the beginning.
174
+
175
+ While using this Instagram media importer tool, make sure to specify one username or hashtag at a time, and press **Add** button each time.
176
+
177
+ You can customize the **sorting** of the media on your feed using the following settings.
178
+
179
+ **Sort Media By** allows you to choose the **parameter,** based on which the photos and videos on your Instagram feed will be ordered. You can select one of the following:
180
+
181
+ * Date,
182
+ * Likes,
183
+ * Comments,
184
+ * Random.
185
+
186
+ **Sorting Order** option lets you specify the **direction** of ordering the Instagram media on your feed. It can have one of the following two values:
187
+
188
+ * Ascending,
189
+ * Descending.
190
+
191
+ **Media** section of feed settings also allows you to change the action which takes place after users click on an image. With **Action OnClick** option, Instagram Feed plugin provides 4 functions for this:
192
+
193
+ * **Open Lightbox.** Clicking on a post will open a popup box with the large version of the image or video, letting you navigate through the rest of your feed media just like a slider.
194
+ * **Redirect To Instagram.** This option will redirect users to the same post on Instagram when they click on an item in the feed.
195
+ * **Custom Redirect.** Select this option and specify a link in Redirect URL input box. Users will be taken to this page after clicking on a post in the feed.
196
+ * **Do Nothing.** Clicking on posts of the feed will not trigger any functions.
197
+
198
+ = Can I display more than one Instagram feeds on my website? =
199
+
200
+ Yes, you can add as many Instagram feeds as you want to your website and show them on posts and pages.
201
+
202
+ Add the Instagram feeds to posts and pages by using the **shortcode** provided or choosing from the list by clicking on the Instagram Feed button.
203
+
204
+ = What layouts can I use to showcase my Instagram feed? =
205
+
206
+ Instagram Feed plugin provides 4 beautiful layouts, which you can use to showcase the photos and videos on your Instagram feeds. Each of them can be fully personalized to fit the style of your website.
207
+
208
+ Use **Select Layout** option and choose the appearance:
209
+
210
+ * Thumbnails,
211
+ * Masonry,
212
+ * Blog Style,
213
+ * Image Browser.
214
+
215
+ Let's go through all 4 layouts and help you choose the one that suits your site the best.
216
+
217
+ **Thumbnails Layout**
218
+
219
+ **Thumbnails Layout** of Instagram Feed plugin provides an equally aligned beautiful Instagram grid, consisting of the thumbnail images of the media on your feed. All thumbnails on this layout are set to have the same dimensions, and you can assign the width and height you like.
220
+
221
+ **Masonry Layout**
222
+
223
+ Just like Thumbnails, **Masonry Layout** is also built with the thumbnail images of Instagram posts. However, its Instagram grid is not aligned equally. The thumbnail images are created as the exact miniatures of their large versions (i.e. the dimensions of thumbnails and large posts are proportional).
224
+
225
+ **Blog Style Layout**
226
+
227
+ **Blog Style Layout** is a perfect choice if you want to post a media file on Instagram and repost the content to WordPress website as a photo blog. The images are displayed with larger dimensions, than on Thumbnails and Masonry Layouts.
228
+
229
+ You can enable captions, descriptions, and hashtags of the media and show them below the posts on your feed.
230
+
231
+ **Image Browser Layout**
232
+
233
+ Just like Blog Style, **Image Browser Layout** of Instagram Feed plugin also displays the posts with larger dimensions. However, this layout shows a single large image with navigation buttons, similar to a slideshow. You can navigate through the posts by clicking on **Next** and **Previous** buttons.
234
+
235
+ = How can I personalize the features of my Instagram feed? =
236
+
237
+ Instagram Feed social plugin comes with a number of advanced customization options, which you can use to change the functionality and features of your feeds. You can modify the feed as far as:
238
+
239
+ * changing its **pagination** and **loading,**
240
+ * defining the number of displayed and newly loaded posts,
241
+ * personalizing the settings of all 4 layouts,
242
+ * controlling the **sort order** of the media on your Instagram feed,
243
+ * choosing the attributes to showcase with the feed,
244
+
245
+ and much more.
246
+
247
+ To begin configuring these options, edit your feed and open **Feed Settings** tab. Scroll down a bit to find the following two sections:
248
+
249
+ * Layout and Pagination,
250
+ * Advanced.
251
+
252
+ Let's go through each section and discuss every option individually.
253
+
254
+ **Layout and Pagination**
255
+
256
+ **New Media Loading.** Select the method to use while loading more images and videos on your Instagram feed. You can choose one of the following options:
257
+
258
+ * Pagination,
259
+ * Load More Button,
260
+ * Infinite Scroll,
261
+ * None.
262
+
263
+ **Number of Columns.** Set the number of columns which will be used to align Instagram media in **Thumbnails** and **Masonry** feeds.
264
+
265
+ **Number of Images/Videos.** Specify the number of Instagram media to display when the feed is loaded initially.
266
+
267
+ **Number of New Media.** Set the number of posts which will be added to the feed, after the user clicks on **Load More** button or triggers **Infinite Scroll.**
268
+
269
+ **Combine and Sort Again After Loading More.** If this option is enabled, both newly loaded and existing media are mixed then resorted together according to **Sort Media By** setting.
270
+
271
+ **Make Layout Not Responsive.** When this option is selected, the layout of the feed does not convert to single-column display on small screens. The feed width is shrunk, but the number of columns stays the same.
272
+
273
+ **Number of Media for Initial Preload.** Specify the number of posts to preload, when an Instagram feed is first loaded. This option helps to load a few posts at once, then navigate through the media smoothly. Note, that this setting applies to **Image Browser** feeds only.
274
+
275
+ **Number of Media for Pagination Preload.** Set the number of posts to preload, while the user navigates through the media by clicking on **Next** or **Previous** buttons. Note, that this option is applicable to **Image Browser** layout only.
276
+
277
+ **Advanced**
278
+
279
+ **Theme.** Select the theme which will be used to style the appearance of your Instagram feed. You can edit the theme or create a new one from **Instagram Feed > Themes** page.
280
+
281
+ **Feed Media Resolution.** Choose the resolution of the media on your Instagram feed. You can select one of the following options:
282
+
283
+ * Optimal,
284
+ * Standard (640 pixels),
285
+ * Low (320 pixels),
286
+ * Thumbnail (150 pixels).
287
+
288
+ In case **Optimal** is selected, the dimensions of the loaded media are calculated according to the width of feed container. This provides fast loading and no stretching images.
289
+
290
+ **Featured Image.** Set the featured image of the header section of your Instagram feed. The image is pulled from the **user profile** or **hashtag** you select.
291
+
292
+ **Show Feed Header.** Activate this option to display a header on your Instagram feed. It includes **Feed Title** and **Featured Image** you specified.
293
+
294
+ **Show User Data.** If this option is enabled, additional details from the selected accounts and hashtags will be displayed on your Instagram feed. You can activate:
295
+
296
+ * **Follow On Instagram** button,
297
+ * Number of **Posts** and **Followers** of Instagram account/hashtag,
298
+ * **User Bio** of your Instagram account.
299
+
300
+ **Show Media Caption.** Enable this setting to display descriptions of Instagram photos or videos below them, fully or partially.
301
+
302
+ **Show Full Description.** Activate this setting to show the full captions of Instagram media. Note that this option only applies to feeds with **Masonry** layout.
303
+
304
+ **Show Number of Likes.** Mark this option as checked to display the number of likes on each Instagram post.
305
+
306
+ **Show Number of Comments.** Display the number of comments on Instagram photos or videos with your feed.
307
+
308
+ **Show Username On Image Thumb.** Activating this setting will let you show your Instagram account username on the images or videos of your feed.
309
+
310
+ = Is it possible to modify the settings of Instagram lightbox? =
311
+
312
+ Instagram Feed plugin comes with a popup box, which appears when users click on a photo or a video in the feed. It lets them display the larger versions of Instagram media, as well as play videos and navigate through the posts.
313
+
314
+ To run the lightbox by clicking on the media, make sure **Action OnClick** option of **Feed Settings** tab is set to **Open Lightbox.**
315
+
316
+ Just like other attributes of Instagram feeds, **Lightbox Settings** can be personalized as well. Edit your feed, then navigate to **Lightbox Settings** tab. Here you will find all the tools which help you tweak the features of the lightbox.
317
+
318
+ The user-friendly lightbox options are divided into the following two main sections:
319
+
320
+ * General Settings,
321
+ * Advanced Settings.
322
+
323
+ Let's discuss these two sections and discover the benefits of the options they provide.
324
+
325
+ **General**
326
+
327
+ **General** section of Lightbox Settings mainly provides options to modify the dimensions and effects on the popup box. You are able to make the following changes:
328
+
329
+ * set the dimensions of the lightbox,
330
+ * configure autoplay and choose from 14 amazing animation effects,
331
+ * activate full-width lightbox,
332
+
333
+ and more.
334
+
335
+ **Advanced**
336
+
337
+ With **Advanced** section of Lightbox settings, you have full control of what's shown with the popup pox of Instagram feed images and videos. It takes just a few steps to get the appearance of the lightbox exactly as you wish to have it.
338
+
339
+ Lightbox Advanced options allow you to:
340
+
341
+ * add a filmstrip to the lightbox, containing the thumbnails of Instagram posts,
342
+ * customize the navigation on the lightbox, adding **Next** and **Previous** buttons,
343
+ * activate image **captions** and display them on the image,
344
+ * enable **right-click protection,** and thus disallow right-click on images and videos,
345
+ * place **share, fullscreen, download** and other control buttons,
346
+ * add **comments section** to the lightbox,
347
+
348
+ and much more.
349
+
350
+ = Can I create mixed Instagram feeds my Instagram account and multiple hashtags? =
351
+
352
+ This option is available in **Premium** version. There, you can create mixed Instagram feeds with your Instagram account and several hashtags. You can even create the combination of both.
353
+
354
+ = I see an invalid access Token error. What should I do? =
355
+
356
+ If you are seeing this alert message on your Instagram Feed plugin, please note, that Instagram access tokens expire from time to time. Therefore you need to get new from your Instagram account again.
357
+
358
+ Please sign in to your Instagram account and get a new token. Add it to **Instagram Feed > Settings** page.
359
+
360
+ If the token will still cause "Invalid access token" error, revoke access for the plugin [here](www.instagram.com/accounts/manage_access/) and sign in again from **Settings** page.
361
+
362
+ = I would like to display only the Instagram posts which have certain hashtags. How can this be done? =
363
+
364
+ *You can definitely do this with premium version!*
365
+
366
+ In case you wish to showcase Instagram feeds with additional, more definitive filters, **Conditional Filters** feature of Instagram Feed plugin will help you with it. This functionality allows you to show images of your Instagram account with a specific hashtag, skip images which belong to certain hashtags, and more.
367
+
368
+ To begin creating additional filters for your Instagram feed, edit it and navigate to **Conditional Filters** tab. Use **Enable Conditional Filters** to activate the necessary tools.
369
+
370
+ **Feeds to Filter** option shows the basis for conditional filters. These are the username and hashtags you have added to your Instagram feed. The filters will search among the posts of the username and hashtags, and pull those which fulfill the specified condition.
371
+
372
+ Now let's configure the condition itself. First, you need to choose the logical operator of the condition using **Filter Logic** setting. Select one of the following 3 operators:
373
+
374
+ * AND: Shows Instagram posts that belong to **all sources** of filtering.
375
+ * OR: Shows Instagram media which belong to **at least one of the sources** of filtering.
376
+ * NOR: Hides Instagram posts which belong to **at least one of the sources** of filtering.
377
+
378
+ Afterwards, use **Add Condition** option to specify the parameter for the condition, which can be one of the following.
379
+
380
+ * **Hashtag.** If you wish to filter your accout feed with a certain hashtag, you can use this option.
381
+ * **Mention.** This option can be used for feeds both with hashtags and username, i.e. you can display posts where another user is mentioned.
382
+ * **Description.** Just like Mentions, Description can be used both with hashtags and username. You can specify a single keyword or a phrase, which is used in descriptions of your Instagram posts.
383
+ * **Instagram Media Link.** You are able to filter using the shareable link of Instagram media. Simply provide the full URL of the post, as the following example: https://www.instagram.com/p/Be6H6G9lmCQ/
384
+
385
+ Afterwards, select the **Condition Type** for the filter, which corresponds to the parameter you are adding. For instance, in case you are adding #liveauthentic hashtag, the **Condition Type** needs to be set as **Hashtag** as well.
386
+
387
+ Lastly, click **Add Condition** button, and the parameters you have added will be visible below **Result** section. Make sure to press **Save** after you finish configuring the filters.
388
+
389
+ With **Result** option, you will see all of the added filters which will be applied to your Instagram feed.This feature is widely used on Instagram for eCommerce websites, as it serves like an Instagram feed with analytics.
390
+
391
+ = How can I publish the Instagram Feed on my website? =
392
+
393
+ Using WordPress Instagram feed plugin, you can publish your feeds with the following 3 different methods:
394
+
395
+ * on a WordPress **page** or **post,**
396
+ * as a **widget,**
397
+ * on a **custom template** with a **PHP function.**
398
+
399
+ A quick guide for this is provided with **How To Publish Feed** tab above your Instagram feed. Let's go through the necessary steps of each publishing method, and help you choose the one that fits your site the best.
400
+
401
+ **Publishing the Feed on Pages or Posts**
402
+
403
+ To publish Instagram feeds with this method, add or edit the page or post from WordPress administrative dashboard of your website. Click on **Add Instagram Feed** button from the top of the post editor. Afterwards, select the feed you wish to publish and press **Insert.**
404
+
405
+ The **shortcode** of Instagram Feed plugin will be added to the content of your page/post.
406
+
407
+ Alternatively, you can copy the shortcode from **Instagram Feed > Feeds** dashboard, under **Shortcode** column, and paste it into the content of your WordPress page/post.
408
+
409
+ **Publishing Instagram Feed as a Widget**
410
+
411
+ Navigate to **Appearance > Widgets** page from WordPress administrative dashboard to begin configuring your Instagram feed widget. Firstly, search for **Instagram Feed Widget** and drag it to the widget area, where you wish to display your feed.
412
+
413
+ Provide a **Title** for your Instagram Feed, then choose the feed to publish using **Feed** drop-down box. Make sure to specify **Number of Columns,** as well as **Number of images** to show on your Instagram feed.
414
+
415
+ Also, you can activate the following attributes and display them with your feed:
416
+
417
+ * post **descriptions,**
418
+ * **likes** and **comments,**
419
+ * **Load More** button.
420
+
421
+ **Publishing with PHP function**
422
+
423
+ It is also possible to publish Instagram feeds on **custom PHP templates** using their **PHP functions.** To do this, simply copy the PHP function of your feed from **Instagram Feed > Feeds** page, then paste it to the necessary section of your custom template.
424
+
425
+ = Is it possible to change the Instagram Feed themes to match my website? =
426
+
427
+ *This is possible in Premium version.*
428
+
429
+ Instagram Feed plugin provides a variety of user-friendly styling options, which let you customize the appearance and features of your Instagram feed even further. You can access these tools from **Instagram Feed > Themes** page.
430
+
431
+ By default, Instagram Feed plugin comes with 2 themes:
432
+
433
+ * Instagram,
434
+ * Elegant.
435
+
436
+ You can modify and use them on your feeds, or create a new theme with your own configurations. To select a default theme for your Instagram feeds, click on the star icon next to the corresponding entry.
437
+
438
+ Each theme is divided into 2 main sections.
439
+
440
+ **Customizing Feed**
441
+
442
+ These theme settings allow you to modify global styling of your feeds, such as their width, text font, pagination attributes and more. This toolbox consists of the following sub-sections:
443
+
444
+ * **General.** Configure the main parameters of the feed with these options, e.g. **feed container width** and **background color.**
445
+ * **Header.** Edit header parameters, its text **font styles, image size, padding** and other attributes.
446
+ * **User Data.** Set the appearance of user information section above the feeds, such as **text font size,** and the styling of **follow button** and **user bio.**
447
+ * **Pagination.** Modify the styles of **Load More** button, as well as the font size, margins, and alignment of **Pagination** buttons.
448
+ * **Thumbnails, Masonry, Blog Style** and **Image Browser.** Use the options on these tabs to modify default styles of layouts provided by Instagram Feed plugin. You can edit the border and padding of **photo wrapper,** text color and font of **post caption, comments** and **likes,** transparency of **image overlay,** and more.
449
+
450
+ **Customizing Lightbox**
451
+
452
+ You can customize each attribute of Instagram Feed lightbox using the tools in this section. They will help you change **lightbox background, control button** styles, **filmstrip** position and alignment, and more. Navigate through the following sub-sections to change the options:
453
+
454
+ * General,
455
+ * Control Buttons,
456
+ * Close Button,
457
+ * Navigation Buttons,
458
+ * Filmstrip,
459
+ * Info,
460
+ * Comments.
461
+
462
+ = Where can I change the settings of Instagram Feed plugin? =
463
+
464
+ **Advanced Options** of Instagram Feed plugin allow you to modify a few global parameters, that apply to all feeds. Go to **Instagram Feed > Settings** page and click on **Advanced Options** bar to expand this toolbox.
465
+
466
+ With **Minimal role to add and manage Feeds or Themes** option, you can select the WordPress user role which will have access to Instagram Feed plugin. The user roles of higher levels will also be able to modify and manage the feeds.
467
+
468
+ **Custom CSS** lets you write your own CSS code for your Instagram feeds. This is handy, in case you need to make specific changes regarding the styling of your feed. Whereas with **Custom Javascript** you are able to apply additional scripts.
469
+
470
+ For instance, let's consider you have a feed with **Thumbnails Layout,** and besides displaying the feed, you wish to expand captions for some posts. You can achieve this the following way.
471
+
472
+ Firstly, you need to assign custom **wdi_feed_loaded** event of the plugin to the container of the Instagram feed, then set callback function for this event.
473
+
474
+ Here is an example of a script, which expands captions of posts with 0, 1, 2, 3 indexes:
475
+
476
+ `jQuery('#wdi_feed_0').on('wdi_feed_loaded',function(){
477
+ jQuery('.wdi_photo_title').eq(0).trigger('click');
478
+ jQuery('.wdi_photo_title').eq(1).trigger('click');
479
+ jQuery('.wdi_photo_title').eq(2).trigger('click');
480
+ jQuery('.wdi_photo_title').eq(3).trigger('click');
481
+ });`
482
+
483
+ Make sure to **Save** Changes after you finish modifying Advanced Options.
484
+
485
+ **Uninstalling Instagram Feed Plugin**
486
+
487
+ In case you wish to completely remove Instagram Feed plugin, you can **Uninstall** it using **Instagram Feed > Uninstall** menu item. However, it is important to note, that uninstalling the plugin will delete all feeds, reset all options to their defaults, and remove other data on the plugin.
488
+
489
+ Please make sure you don't have any important information before you proceed.
490
+
491
+
492
+ == Screenshots ==
493
+
494
+ 1. WordPress 10Web Instagram Feed - Thumbnail layout
495
+ 2. WordPress 10Web Instagram Feed - Image browser layout
496
+ 3. WordPress 10Web Instagram Feed - Lightbox
497
+ 4. WordPress 10Web Instagram Feed - Edit Instagram Feed
498
+ 5. WordPress 10Web Instagram Feed - Theme Settings
499
+
500
+ == Privacy Policy ==
501
+ 10Web Instagram Feed plugin uses Instagram API on website front end. You have to authorize the plugin via sign in to get data from Instagram on your behalf. The plugin does not send any user’s data to Instagram. All the data received from Instagram via API is cached in WordPress database for some short customizable period to provide front end optimization. You can delete or update cached data. Instagram saves some cookies in browsers of website visitors via API data. These cookies are mostly used for security purposes. They are regulated under terms of Instagram’s privacy policy https://instagram.com/legal/privacy. The plugin asks for your consent to collect site administrator’s email address and site URL to offer customer support, deals and discounts on premium products and more.
502
+
503
+ == Changelog ==
504
+
505
+ = 1.3.6 =
506
+ Changed: Instagram Feed by 10Web
507
+ Fixed: Minor bugs when saving feed and opening lightbox
508
+
509
+ = 1.3.5 =
510
+ Changed: Deactivation popup
511
+
512
+ = 1.3.4 =
513
+ New: Display website link in header along with bio
514
+
515
+ = 1.3.3 =
516
+ New: Cache debugging tools
517
+ New: WD library updated
518
+ New: GDPR compliance help
519
+
520
+ = 1.3.2 =
521
+ New: Signing up with multiple accounts
522
+ Fixed: Settings page layout when language is not English
523
+
524
+ = 1.3.1 =
525
+ Fixed: Security issues. Reported by Karan Saini https://www.karansaini.com/
526
+
527
+ = 1.3.0 =
528
+ New: Caching of Instagram data. API rate limits do not constrain feed loading anymore.
529
+ New: Compatibility with Gutenberg editor.
530
+ Improved: It is possible now to manually edit access token.
531
+ Changed: Plugin will output a warning when an incompatible version of Font-Awesome is loaded (SVG generated by JS)
532
+ Fixed: Error when PHP filter extension is not enabled.
533
+ Fixed: PHP warning in feed editor page appearing sometimes.
534
+
535
+ = 1.2.19 =
536
+ Fixed: Loading more images
537
+
538
+ = 1.2.18 =
539
+ Important: Instagram shut down its API partially without any warning. See [changelog](https://www.instagram.com/developer/endpoints/media/). It is not allowed anymore to display photos from other Instagram accounts which are not your own.
540
+ Sorry.
541
+
542
+ = 1.2.17 =
543
+ Fixed: Video play issue on mac safari
544
+ Changed: Uninstall moved to settings page
545
+
546
+ = 1.2.16 =
547
+ New: Instagram slideshow is supported in popup
548
+ New: UX of feeds and themes admin screen, it is now similar to posts list screen
549
+ New: Inline actions for feeds and themes in admin list view
550
+ Improved: Theme styles are generated as CSS files, not inline styles. Faster page loading and better styles caching
551
+ Improved: Popup is faster now and less data is being sent via AJAX
552
+
553
+ = 1.2.15 =
554
+ Added: "How to publish feed" tab in feeds editor screen
555
+ Added: Closeable metaboxes in feeds editor screen
556
+ Added: Feed preview button in feeds editor screen
557
+ Changed: Save, apply and cancel buttons in feed and theme editor screens
558
+ Changed: Feed and theme title input design
559
+ Fixed: Minor bugs and conflicts with some themes
560
+ Improved: Shortcode popup design
561
+ Removed: Update submenu (Premium)
562
+
563
+ = 1.2.14 =
564
+ Fixed: Conflict with Page Builder by SiteOrigin
565
+
566
+ = 1.2.13 =
567
+ Fixed: Conflict with Divi
568
+
569
+ = 1.2.12 =
570
+ New: Customize feed media resolution. Choose between optimal or custom resolutions, fast loading and higher quality.
571
+ Improved: Redesigned feed and theme editor screens.
572
+ Improved: More user-friendly names and descriptions of feed settings.
573
+ Improved: UX when access token is expired or have not been obtained yet.
574
+ Improved: UX when there are JS errors on front-end.
575
+ Fixed: Minor: do not include custom scroll bar JS if feed does not have popup.
576
+
577
+ = 1.2.11 =
578
+ Changed: Scripts and styles are minified by default
579
+ Changed: Font-Awesome has been updated to version 4.7.0 and loaded from CDN
580
+ Changed: Pagination buttons are smaller now in default theme
581
+ Changed: Deactivation popup.
582
+
583
+ = 1.2.10 =
584
+ Fixed: CSS XSS vulnerability in lightbox
585
+
586
+ = 1.2.9 =
587
+ Changed: Web-Dorado links
588
+
589
+ = 1.2.8 =
590
+ Changed: Allow more users and hashtags in feed settings
591
+
592
+ = 1.2.7 =
593
+ Changed: Show notification to install Backup WD plugin only on plugin pages
594
+
595
+ = 1.2.6 =
596
+ Change: Introduction of Backup WD plugin
597
+
598
+ = 1.2.5 =
599
+ Change: "create_function" is not used anymore
600
+
601
+ = 1.2.4 =
602
+ Fixed: 10Web Instagram Feed compatibility issue with Better WordPress Minify plugin, thanks to @amityweb for bug report
603
+
604
+ = 1.2.3 =
605
+ Change: WD library updated to version 1.0.11
606
+ Fixed: Error message when editing feed and token is expired
607
+
608
+ = 1.2.2 =
609
+ New: Redirection to custom URL
610
+
611
+ = 1.2.1 =
612
+ New: Option to disable loading of new images in feed
613
+
614
+ = 1.2.0 =
615
+ New: Default feed
616
+ Fixed: Infinite scroll triggering (PRO)
617
+ Fixed: "No media in feed" message on mobile masonry feed
618
+ Fixed: Minor style conflicts with some themes
619
+
620
+ = 1.1.30 =
621
+ Changed: Frontend styles optimized, loads faster now
622
+
623
+ = 1.1.29 =
624
+ Fixed: Display only published feeds in feeds selector popup for shortcode
625
+ Changed: UX improvement - no error message when user first inserts a widget then creates feeds
626
+
627
+ = 1.1.28 =
628
+ Fixed: Conflict with some themes
629
+
630
+ = 1.1.27 =
631
+ Fixed: Overriding window.onload function
632
+ Changed: Some strings on frontend are translatable now
633
+
634
+ = 1.1.26 =
635
+ Fixed: Conflict with Beaver Builder
636
+ Fixed: Frontend error messages in old Chrome and Safari browsers
637
+ Changed: Translations hosted on WordPress.org
638
+
639
+ = 1.1.25 =
640
+ New: UX improvements: when authorizing and editing feeds
641
+ Changed: JavaScript error notices on frontend
642
+ Fixed: Updates page restored (PRO)
643
+ Fixed: Deactivation popup in uninstall page (PRO)
644
+ Fixed: Subscribe after uninstall
645
+
646
+ = 1.1.24 =
647
+ Added: Overview page
648
+ Changed: Deactivation
649
+
650
+ = 1.1.23 =
651
+ Fixed: cropping of "landscape" images in thumbnails layout
652
+
653
+ = 1.1.22 =
654
+ New: message displayed on frontend if feed has no media
655
+ Fixed: JS errors for media with Instagram's new "Slideshow" feature. This feature is not supported by Instagram's API yet.
656
+ Changed: Errors by plugin and Instagram API are alerted in frontend only for admins, otherwise output the message to the Web Console
657
+ Changed: Custom attribute "wdi_media_user" added to media containers in frontend. Useful for adding different event listeners, e.g. custom redirects for every user's media.
658
+ Changed: Minor style conflicts fixed
659
+
660
+ = 1.1.21 =
661
+ New: Three new plugins added to featured plugins list: Ad Manager WD, Youtube WD and Staff Team WD
662
+ Fixed: Colors and opacities of share buttons in lightbox (PRO)
663
+
664
+ = 1.1.20 =
665
+ New: Instagram feed displayed in AJAX-loaded content. AJAX request callback needs to call wp_footer() in the end.
666
+
667
+ = 1.1.19 =
668
+ Fixed: Strange bug in Instagram API when user feed pagination is null, causing JS errors in frontend
669
+
670
+ = 1.1.18 =
671
+ Fixed: Frontend filter colors (PRO)
672
+ Changed: Featured plugins, brand new Mailchimp Forms WD plugin added
673
+
674
+ = 1.1.17 =
675
+ New: Option in feed settings to show small size images and low-bandwidth videos when viewed in mobile devices
676
+ Fixed: Escaping in custom JS
677
+ Change: WP 4.7 compatibility - language of frontend content in AJAX response
678
+
679
+ = 1.1.16 =
680
+ Fixed: Unicode "paragraph separator" symbol in media caption crashes lightbox
681
+ Fixed: Javascript error in admin feed page and styling issue in lightbox because of some non-standard themes
682
+
683
+ = 1.1.15 =
684
+ New: Show hashtag media number in header
685
+ Fixed: Scripts dependency on underscore.js
686
+ Fixed: Compatibility issues with Yoast SEO
687
+
688
+ = 1.1.14 =
689
+ Fixed: Single user bio not shown
690
+ Changed: Plugin logo
691
+ Changed: Featured plugins logos
692
+
693
+ = 1.1.13 =
694
+ Fixed: Changes in database after plugin version update via FTP or AJAX requests with silent activation
695
+
696
+ = 1.1.12 =
697
+ New: Feed based on liked media (Pro)
698
+ Fixed: Hidden media in last page
699
+ Fixed: Minor issues
700
+
701
+ = 1.1.11 =
702
+ Added: Setting to show media descriptions in widget mode (PRO)
703
+ Fixed: Untranslatable strings in widget editor
704
+ Change: Featured plugins list
705
+
706
+ = 1.1.10 =
707
+ Added: New text in uninstall page
708
+ Fixed: Video not centering issue on blogstyle
709
+ Added: Swedish translations
710
+
711
+ = 1.1.9 =
712
+ New: Option to set minimal user role for adding and managing feeds and themes
713
+ Fixed: Masonry feed thumbnails overlay opacity (Pro)
714
+
715
+ = 1.1.8 =
716
+ Changed: Font-Awesome updated to version 4.6.3
717
+
718
+ = 1.1.7 =
719
+ New: Featured themes admin page
720
+ Fixed: Javascript error in hashtag feed
721
+
722
+ = 1.1.6 =
723
+ Change: Added compatibility with "All in one SEO pack" and other plugins running shortcodes in page head
724
+
725
+ = 1.1.5 =
726
+ Fixed: Javascript error on Firefox and Safari
727
+
728
+ = 1.1.4 =
729
+ Fixed: Error handling in case of wrong access_token
730
+ Fixed: Image description not opening after pagination (Pro)
731
+ Fixed: Do not show load more button if feed media are finished
732
+ Fixed: Infinite scroll triggering bug (Pro)
733
+
734
+ = 1.1.3 =
735
+ New: French translation (Thanks to Guillaume Barjou)
736
+ New: English US and UK translation files. Edit them to change default strings
737
+ Fixed: Image sizes and overwflows in thumbnails layout
738
+ Fixed: Lightbox filmstrip thumb styles (Pro)
739
+
740
+
741
+ = 1.1.2 =
742
+ Fixed: Bug when saving theme data to some MySQL 5.6 databases
743
+ Changed: Pagination of hashtag feeds restored
744
+ Changed: Check and get user id on frontend if empty for some unknown reason
745
+
746
+ = 1.1.1 =
747
+ Fixed: Bug when duplicating feeds
748
+
749
+ = 1.1.0 =
750
+ **IMPORTANT: Instagram changed the API. You need to get a new access token by using "Sign in with Instagram" button on the Settings page in order to keep your 10Web Instagram Feed plugin functioning after June 1.**
751
+ new: Instagram new API
752
+ new: Spanish translation (Thanks to Alexandro Lacadena Gomez)
753
+
754
+ = 1.0.10 =
755
+ Temporarily disable pagination in hashtag based feeds
756
+ Changed: Russian Translations ( Thanks to Alex Petrin )
757
+
758
+ = 1.0.9 =
759
+ Added: Option for displaying image loading buttons in widgets
760
+ Added: Permission for authors displaying instagram feeds on posts
761
+
762
+ = 1.0.8 =
763
+ Fixed: Infinite Scroll bug
764
+ Changed: Show videos play button when redirect is enabled
765
+
766
+ = 1.0.7 =
767
+ ADD: Image Hover Effects (Pro)
768
+
769
+ = 1.0.6 =
770
+ New: Conditional Filters (Pro)
771
+ New: Option for displaying username in masonry/thumbnails view (Pro)
772
+ Fixed: Minor bugs
773
+ New: Russian translation (Thanks to Ruslan Tertyshny).
774
+
775
+ = 1.0.5 =
776
+ New: New year promo
777
+
778
+ = 1.0.4 =
779
+ Fixed: Bug in layout
780
+
781
+ = 1.0.3 =
782
+ Fixed: PHP function in feeds list
783
+
784
+ = 1.0.2 =
785
+ Fixed: PHP error after plugin update
786
+
787
+ = 1.0.1 =
788
+ Fixed: PHP 5.3 compatibility
789
+ Fixed: Video redirect bug
790
+ Changed: User info styles
791
+
792
+ = 1.0.0 =
793
+ Initial version
templates/plugin-uninstalled.php CHANGED
@@ -25,7 +25,7 @@
25
 
26
  </style>
27
  <div class="wdi_plugin_uninstalled">
28
- <p>Dear <span><?php echo (wp_get_current_user()->user_firstname!='') ? wp_get_current_user()->user_firstname .' '. wp_get_current_user()->user_lastname : wp_get_current_user()->user_login?></span> <?php _e('you have uninstalled','wd-instagram-feed') ?> <span>Instagram Feed WD </span><?php _e('plugin,if you want to use it again simply deactivate and activate it again','wd-instagram-feed') ?>
29
  <span class="wdi_regards">Best regards Web-Dorado Team.</span></p>
30
  <a href="<?php echo $deactivate_url?>">Deactivate Plugin</a>
31
  <p id="wdi_redirect"></p>
25
 
26
  </style>
27
  <div class="wdi_plugin_uninstalled">
28
+ <p>Dear <span><?php echo (wp_get_current_user()->user_firstname!='') ? wp_get_current_user()->user_firstname .' '. wp_get_current_user()->user_lastname : wp_get_current_user()->user_login?></span> <?php _e('you have uninstalled','wd-instagram-feed') ?> <span>Instagram Feed </span><?php _e('plugin,if you want to use it again simply deactivate and activate it again','wd-instagram-feed') ?>
29
  <span class="wdi_regards">Best regards Web-Dorado Team.</span></p>
30
  <a href="<?php echo $deactivate_url?>">Deactivate Plugin</a>
31
  <p id="wdi_redirect"></p>
update/wdi_update.php CHANGED
@@ -96,6 +96,10 @@ function wdi_update_diff($new_v, $old_v = 0.0){
96
  }
97
 
98
 
 
 
 
 
99
 
100
 
101
  }
96
  }
97
 
98
 
99
+ if(version_compare($old_v, "3.6", '<')){
100
+ $wpdb->query("ALTER TABLE " . $wpdb->prefix . WDI_FEED_TABLE . " MODIFY COLUMN feed_thumb varchar(800) NOT NULL");
101
+ }
102
+
103
 
104
 
105
  }
wd-instagram-feed.php CHANGED
@@ -1,13 +1,12 @@
1
  <?php
2
  /*
3
- Plugin Name: WD Instagram Feed
4
- Plugin URI: https://web-dorado.com/products/wordpress-instagram-feed-wd.html
5
- Description: WD Instagram Feed is a user-friendly tool for displaying user or hashtag-based feeds on your website. You can create feeds with one of the available layouts. It allows displaying image metadata, open up images in lightbox, download them and even share in social networking websites.
6
- Version: 1.3.5
7
- Author: WebDorado
8
- Author URI: https://web-dorado.com/wordpress-plugins-bundle.html
9
  License: GPLv2 or later
10
- Text Domain: wd-instagram-feed
11
  */
12
 
13
  //define constants
@@ -21,7 +20,7 @@ define("WDI_META", "_".WDI_VAR."_meta");
21
  //define("wdi",'wdi');
22
  define('WDI_FEED_TABLE','wdi_feeds');
23
  define('WDI_THEME_TABLE','wdi_themes');
24
- define('WDI_VERSION','1.3.5');
25
  define('WDI_IS_PRO','false');
26
  $wdi_minify = ((isset($_GET['wdi_no_minify']) && $_GET['wdi_no_minify'] == "true") ? false : true);
27
  define('WDI_MINIFY', $wdi_minify);
@@ -388,13 +387,13 @@ function WDI_instagram_menu() {
388
  if((!isset($wdi_options['wdi_access_token']) || empty($wdi_options['wdi_access_token'])) && $wdi_uninstall) {
389
  if( get_option( "wdi_subscribe_done" ) == 1 ) {
390
  $parent_slug = "wdi_feeds";
391
- $settings_page = add_menu_page(__('Instagram Feed WD', "wd-instagram-feed"), 'Instagram Feed WD', $min_feeds_capability, 'wdi_settings', 'WDI_instagram_settings_page', $menu_icon);
392
  add_submenu_page("wdi_settings", __('Settings', "wd-instagram-feed"), __('Settings', "wd-instagram-feed"), 'manage_options', 'wdi_settings', 'WDI_instagram_settings_page');
393
  }
394
  }else{
395
  if( get_option( "wdi_subscribe_done" ) == 1 ){
396
  $parent_slug = "wdi_feeds";
397
- $settings_page = add_menu_page(__('Instagram Feed WD', "wd-instagram-feed"), 'Instagram Feed WD', $min_feeds_capability, 'wdi_feeds', 'WDI_instagram_feeds_page', $menu_icon);
398
  }
399
 
400
 
@@ -755,18 +754,18 @@ function wdi_wd_lib_init(){
755
 
756
  if(!isset($_REQUEST['ajax']) && is_admin()){
757
 
758
- if( !class_exists("DoradoWeb") ){
759
  require_once(WDI_DIR . '/wd/start.php');
760
  }
761
  global $wdi_wd_plugin_options;
762
  $wdi_wd_plugin_options = array (
763
  "prefix" => "wdi",
764
- "wd_plugin_id" => 121,
765
- "plugin_title" => "Instagram WD",
766
  "plugin_wordpress_slug" => "wd-instagram-feed",
767
  "plugin_dir" => WDI_DIR,
768
  "plugin_main_file" => __FILE__,
769
- "description" => __("The most advanced and user-friendly Instagram plugin. Instagram Feed WD plugin allows you to display image feeds from single or multiple Instagram accounts on a WordPress site.", 'wd-instagram-feed'),
770
  // from web-dorado.com
771
  "plugin_features" => array(
772
  0 => array(
@@ -775,7 +774,7 @@ function wdi_wd_lib_init(){
775
  ),
776
  1 => array(
777
  "title" => __("SEO Friendly", "wd-instagram-feed"),
778
- "description" => __("Instagram Feed WD uses clean coding and latest SEO techniques necessary to keep your pages and posts SEO-optimized.", "wd-instagram-feed"),
779
  ),
780
  2 => array(
781
  "title" => __("4 Fully Customizable Layouts", "wd-instagram-feed"),
@@ -798,62 +797,62 @@ function wdi_wd_lib_init(){
798
  "titles" => array(
799
  array(
800
  "title" => __("Getting Instagram Access Token", "wd-instagram-feed"),
801
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/installation-and-configuration/getting-access-token.html"
802
  )
803
  )
804
  ),
805
  1 => array(
806
  "main_title" => __("Creating an Instagram Feed", "wd-instagram-feed"),
807
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds.html",
808
  "titles" => array(
809
  array(
810
  "title" => __("Thumbnails and Masonry Layouts", "wd-instagram-feed"),
811
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds/thumbnails-and-masonry-layouts.html",
812
  ),
813
  array(
814
  "title" => __("Blog Style Layout", "wd-instagram-feed"),
815
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds/blog-style-layout.html",
816
  ),
817
  array(
818
  "title" => __("Image Browser", "wd-instagram-feed"),
819
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds/image-browser.html",
820
  ),
821
  array(
822
  "title" => __("Lightbox Settings", "wd-instagram-feed"),
823
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds/lightbox-settings.html",
824
  ),
825
  array(
826
  "title" => __("Conditional Filters", "wd-instagram-feed"),
827
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/creating-feeds/conditional-filters.html",
828
  ),
829
  )
830
  ),
831
  2 => array(
832
  "main_title" => __("Publishing Instagram Feed", "wd-instagram-feed"),
833
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/publishing-feed.html",
834
  "titles" => array(
835
  array(
836
  "title" => __("Publishing in a Page/Post", "wd-instagram-feed"),
837
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/publishing-feed/page-post.html",
838
  ),
839
  array(
840
  "title" => __("Publishing as a Widget", "wd-instagram-feed"),
841
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/publishing-feed/widget.html",
842
  ),
843
  array(
844
  "title" => __("Publishing by PHP function", "wd-instagram-feed"),
845
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/publishing-feed/php-function.html",
846
  ),
847
  )
848
  ),
849
  3 => array(
850
  "main_title" => __("Styling with Themes", "wd-instagram-feed"),
851
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/editing-themes.html",
852
  "titles" => array()
853
  ),
854
  4 => array(
855
  "main_title" => __("Advanced customizing options", "wd-instagram-feed"),
856
- "url" => "https://web-dorado.com/wordpress-instagram-feed-wd/advanced-customizing-options.html",
857
  "titles" => array()
858
  ),
859
  ),
@@ -862,17 +861,19 @@ function wdi_wd_lib_init(){
862
  "plugin_wd_url" => "https://web-dorado.com/products/wordpress-instagram-feed-wd.html",
863
  "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/instagram-wd/?_ga=1.208438225.212018776.1470817467",
864
  "plugin_wd_addons_link" => "",
865
- "after_subscribe" => "admin.php?page=overview_wdi", // this can be plagin overview page or set up page
866
  "plugin_wizard_link" => "",
867
- "plugin_menu_title" => "Instagram Feed WD",
868
  "plugin_menu_icon" => WDI_URL . '/images/menu_icon.png',
869
  "deactivate" => true,
870
  "subscribe" => true,
871
- "custom_post" => $parent_slug, // if true => edit.php?post_type=contact
872
- "menu_capability" => wdi_get_create_feeds_cap()
 
 
873
  );
874
 
875
- dorado_web_init($wdi_wd_plugin_options);
876
 
877
  }
878
 
@@ -918,7 +919,7 @@ if (!function_exists('wdi_wd_bp_install_notice')) {
918
  <div class="notice notice-info" id="wd_bp_notice_cont">
919
  <p>
920
  <img id="wd_bp_logo_notice" src="<?php echo $wd_bp_plugin_url . '/images/seo_logo.png'; ?>">
921
- <?php _e("Instagram Feed WD advises: Optimize your web pages for search engines with the", $prefix) ?>
922
  <a href="https://wordpress.org/plugins/seo-by-10web/" title="<?php _e("More details", $prefix) ?>"
923
  target="_blank"><?php _e("FREE SEO", $prefix) ?></a>
924
  <?php _e("plugin.", $prefix) ?>
@@ -1012,12 +1013,12 @@ function wdi_filter_var_notice(){
1012
 
1013
  add_filter('wp_get_default_privacy_policy_content', 'wdi_privacy_policy');
1014
  function wdi_privacy_policy($content){
1015
- $title = __('Instagram Feed WD', "wd-instagram-feed");
1016
 
1017
  $pp_link = '<a target="_blank" href="https://instagram.com/legal/privacy">' . __('Privacy Policy', "wd-instagram-feed") . '</a>';
1018
  $text = __('Use this suggested text to inform visitors about privacy:', "wd-instagram-feed");
1019
  $text .= "<br/>";
1020
- $text .= sprintf(__('"Instagram Feed WD plugin uses Instagram API on website front end. All the data received from Instagram via API is cached in WordPress database for some short period to provide front end optimization. You may request us to delete your Instagram data if it is accidentally cached in our website database with hashtag feed data. Instagram saves some cookies in browsers of website visitors via API data. These cookies are mostly used for security purposes. They are regulated under terms of Instagram’s %s."', "wd-instagram-feed"), $pp_link);
1021
  $text .= "<br/>";
1022
  $text .= __('Web-Dorado Disclaimer: The above text is for informational purposes only and is not a legal advice. You must not rely on it as an alternative to legal advice. You should contact your legal counsel to obtain advice with respect to your particular case.', "wd-instagram-feed");
1023
  $pp_text = '<h3>' . $title . '</h3>' . '<p class="wp-policy-help">' . $text . '</p>';
1
  <?php
2
  /*
3
+ Plugin Name: Instagram Feed by 10Web
4
+ Plugin URI: https://10web.io/plugins/wordpress-instagram-feed/
5
+ Description: Instagram Feed by 10Web is a user-friendly tool for displaying user or hashtag-based feeds on your website. You can create feeds with one of the available layouts. It allows displaying image metadata, open up images in lightbox, download them and even share in social networking websites.
6
+ Version: 1.3.6
7
+ Author: 10Web
8
+ Author URI: https://10Web.io
9
  License: GPLv2 or later
 
10
  */
11
 
12
  //define constants
20
  //define("wdi",'wdi');
21
  define('WDI_FEED_TABLE','wdi_feeds');
22
  define('WDI_THEME_TABLE','wdi_themes');
23
+ define('WDI_VERSION','1.3.6');
24
  define('WDI_IS_PRO','false');
25
  $wdi_minify = ((isset($_GET['wdi_no_minify']) && $_GET['wdi_no_minify'] == "true") ? false : true);
26
  define('WDI_MINIFY', $wdi_minify);
387
  if((!isset($wdi_options['wdi_access_token']) || empty($wdi_options['wdi_access_token'])) && $wdi_uninstall) {
388
  if( get_option( "wdi_subscribe_done" ) == 1 ) {
389
  $parent_slug = "wdi_feeds";
390
+ $settings_page = add_menu_page(__('Instagram Feed', "wd-instagram-feed"), 'Instagram Feed', $min_feeds_capability, 'wdi_settings', 'WDI_instagram_settings_page', $menu_icon);
391
  add_submenu_page("wdi_settings", __('Settings', "wd-instagram-feed"), __('Settings', "wd-instagram-feed"), 'manage_options', 'wdi_settings', 'WDI_instagram_settings_page');
392
  }
393
  }else{
394
  if( get_option( "wdi_subscribe_done" ) == 1 ){
395
  $parent_slug = "wdi_feeds";
396
+ $settings_page = add_menu_page(__('Instagram Feed', "wd-instagram-feed"), 'Instagram Feed', $min_feeds_capability, 'wdi_feeds', 'WDI_instagram_feeds_page', $menu_icon);
397
  }
398
 
399
 
754
 
755
  if(!isset($_REQUEST['ajax']) && is_admin()){
756
 
757
+ if( !class_exists("TenWeb") ){
758
  require_once(WDI_DIR . '/wd/start.php');
759
  }
760
  global $wdi_wd_plugin_options;
761
  $wdi_wd_plugin_options = array (
762
  "prefix" => "wdi",
763
+ "plugin_id" => 43,//tenweb
764
+ "plugin_title" => "Instagram Feed",
765
  "plugin_wordpress_slug" => "wd-instagram-feed",
766
  "plugin_dir" => WDI_DIR,
767
  "plugin_main_file" => __FILE__,
768
+ "description" => __("The most advanced and user-friendly Instagram plugin. Instagram Feed plugin allows you to display image feeds from single or multiple Instagram accounts on a WordPress site.", 'wd-instagram-feed'),
769
  // from web-dorado.com
770
  "plugin_features" => array(
771
  0 => array(
774
  ),
775
  1 => array(
776
  "title" => __("SEO Friendly", "wd-instagram-feed"),
777
+ "description" => __("Instagram Feed uses clean coding and latest SEO techniques necessary to keep your pages and posts SEO-optimized.", "wd-instagram-feed"),
778
  ),
779
  2 => array(
780
  "title" => __("4 Fully Customizable Layouts", "wd-instagram-feed"),
797
  "titles" => array(
798
  array(
799
  "title" => __("Getting Instagram Access Token", "wd-instagram-feed"),
800
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/getting-access-token"
801
  )
802
  )
803
  ),
804
  1 => array(
805
  "main_title" => __("Creating an Instagram Feed", "wd-instagram-feed"),
806
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/creating-feed/creating-instagram-feed.html",
807
  "titles" => array(
808
  array(
809
  "title" => __("Thumbnails and Masonry Layouts", "wd-instagram-feed"),
810
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/creating-feed/feed-layouts.html",
811
  ),
812
  array(
813
  "title" => __("Blog Style Layout", "wd-instagram-feed"),
814
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/creating-feed/feed-layouts.html",
815
  ),
816
  array(
817
  "title" => __("Image Browser", "wd-instagram-feed"),
818
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/creating-feed/feed-layouts.html",
819
  ),
820
  array(
821
  "title" => __("Lightbox Settings", "wd-instagram-feed"),
822
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/creating-feed/lightbox-settings.html",
823
  ),
824
  array(
825
  "title" => __("Conditional Filters", "wd-instagram-feed"),
826
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/creating-feed/conditional-filters.html",
827
  ),
828
  )
829
  ),
830
  2 => array(
831
  "main_title" => __("Publishing Instagram Feed", "wd-instagram-feed"),
832
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/publishing-instagram-feed",
833
  "titles" => array(
834
  array(
835
  "title" => __("Publishing in a Page/Post", "wd-instagram-feed"),
836
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/publishing-instagram-feed",
837
  ),
838
  array(
839
  "title" => __("Publishing as a Widget", "wd-instagram-feed"),
840
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/publishing-instagram-feed",
841
  ),
842
  array(
843
  "title" => __("Publishing by PHP function", "wd-instagram-feed"),
844
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/publishing-instagram-feed",
845
  ),
846
  )
847
  ),
848
  3 => array(
849
  "main_title" => __("Styling with Themes", "wd-instagram-feed"),
850
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/theme-options",
851
  "titles" => array()
852
  ),
853
  4 => array(
854
  "main_title" => __("Advanced customizing options", "wd-instagram-feed"),
855
+ "url" => "https://docs.10web.io/docs/wd-instagram-feed/advanced-options",
856
  "titles" => array()
857
  ),
858
  ),
861
  "plugin_wd_url" => "https://web-dorado.com/products/wordpress-instagram-feed-wd.html",
862
  "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/instagram-wd/?_ga=1.208438225.212018776.1470817467",
863
  "plugin_wd_addons_link" => "",
864
+ "after_subscribe" => "admin.php?page=wdi_settings", // this can be plagin overview page or set up page
865
  "plugin_wizard_link" => "",
866
+ "plugin_menu_title" => "Instagram Feed",
867
  "plugin_menu_icon" => WDI_URL . '/images/menu_icon.png',
868
  "deactivate" => true,
869
  "subscribe" => true,
870
+ "custom_post" => '', // if true => edit.php?post_type=contact
871
+ "menu_capability" => wdi_get_create_feeds_cap(),
872
+ "menu_position" => null,
873
+ "display_overview" => false,
874
  );
875
 
876
+ ten_web_init($wdi_wd_plugin_options);
877
 
878
  }
879
 
919
  <div class="notice notice-info" id="wd_bp_notice_cont">
920
  <p>
921
  <img id="wd_bp_logo_notice" src="<?php echo $wd_bp_plugin_url . '/images/seo_logo.png'; ?>">
922
+ <?php _e("Instagram Feed advises: Optimize your web pages for search engines with the", $prefix) ?>
923
  <a href="https://wordpress.org/plugins/seo-by-10web/" title="<?php _e("More details", $prefix) ?>"
924
  target="_blank"><?php _e("FREE SEO", $prefix) ?></a>
925
  <?php _e("plugin.", $prefix) ?>
1013
 
1014
  add_filter('wp_get_default_privacy_policy_content', 'wdi_privacy_policy');
1015
  function wdi_privacy_policy($content){
1016
+ $title = __('Instagram Feed', "wd-instagram-feed");
1017
 
1018
  $pp_link = '<a target="_blank" href="https://instagram.com/legal/privacy">' . __('Privacy Policy', "wd-instagram-feed") . '</a>';
1019
  $text = __('Use this suggested text to inform visitors about privacy:', "wd-instagram-feed");
1020
  $text .= "<br/>";
1021
+ $text .= sprintf(__('"Instagram Feed plugin uses Instagram API on website front end. All the data received from Instagram via API is cached in WordPress database for some short period to provide front end optimization. You may request us to delete your Instagram data if it is accidentally cached in our website database with hashtag feed data. Instagram saves some cookies in browsers of website visitors via API data. These cookies are mostly used for security purposes. They are regulated under terms of Instagram’s %s."', "wd-instagram-feed"), $pp_link);
1022
  $text .= "<br/>";
1023
  $text .= __('Web-Dorado Disclaimer: The above text is for informational purposes only and is not a legal advice. You must not rely on it as an alternative to legal advice. You should contact your legal counsel to obtain advice with respect to your particular case.', "wd-instagram-feed");
1024
  $pp_text = '<h3>' . $title . '</h3>' . '<p class="wp-policy-help">' . $text . '</p>';
wd/README.md CHANGED
@@ -1,12 +1,12 @@
1
- Version: 1.0.16
2
 
3
 
4
 
5
  Usage:
6
 
7
  Copy and paste wd library into your plugin folder.
8
- In your plugin main file check if library main DoradoWeb class doesn't exist, include it
9
- if( !class_exists("DoradoWeb") ){
10
  require_once(PATH_TO_YOUR_PLUGIN_DIR . '/wd/start.php');
11
  }
12
 
@@ -31,22 +31,8 @@ $options = array (
31
  ),
32
  ...
33
  ),
34
- "user_guide" => array(
35
- 0 => array(
36
- "main_title" => "user guide step 1",
37
- "url" => "link to step 1",
38
- "titles" => array(
39
- array(
40
- "title" => "step 1 sub title",
41
- "url" => "link to step 1 sub"
42
- )
43
- )
44
- ),
45
- ...
46
- ),
47
- "overview_welcome_image" => null,
48
  "video_youtube_id" => "your plugin youtube video id", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
49
- "plugin_wd_url" => "https://web-dorado.com/products/your plugin",
50
  "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/your plugin",
51
  "plugin_wd_addons_link" => "https://web-dorado.com/products/your plugin addons",
52
  "after_subscribe" => "after subsribe page", // this can be plagin overview page or set up page admin.php?page=overview_YOUR_PREFIX
@@ -85,25 +71,6 @@ array(
85
  ....
86
  )
87
 
88
- user_guide - (type array) plugin user guide links from web-dorado.com
89
- e.g. (for google maps plugin)
90
- array(
91
- 0 => array(
92
- "main_title" => __("Installation Wizard/ Options Menu", "gmwd"),
93
- "url" => "https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu.html",
94
- "titles" => array(
95
- array(
96
- "title" => __("Configuring Map API Key", "gmwd"),
97
- "url" => "https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu/configuring-api-key.html"
98
- )
99
- )
100
- ),
101
- 1 => array(
102
- "main_title" => __("Creating Map", "gmwd"),
103
- "url" => "https://web-dorado.com/wordpress-google-maps/creating-map.html",
104
- "titles" => array()
105
- ),
106
- )
107
 
108
  video_youtube_id - (type string) if your plugin has video, video's id, else null
109
  ( e.g. for https://www.youtube.com/watch?v=acaexefeP7o , youtube id is the 'acaexefeP7o' )
1
+ Version: 1.0.13
2
 
3
 
4
 
5
  Usage:
6
 
7
  Copy and paste wd library into your plugin folder.
8
+ In your plugin main file check if library main TenWeb class doesn't exist, include it
9
+ if( !class_exists("TenWeb") ){
10
  require_once(PATH_TO_YOUR_PLUGIN_DIR . '/wd/start.php');
11
  }
12
 
31
  ),
32
  ...
33
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
  "video_youtube_id" => "your plugin youtube video id", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
35
+ "plugin_wd_url" => "https://10web.io/plugins/your plugin",
36
  "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/your plugin",
37
  "plugin_wd_addons_link" => "https://web-dorado.com/products/your plugin addons",
38
  "after_subscribe" => "after subsribe page", // this can be plagin overview page or set up page admin.php?page=overview_YOUR_PREFIX
71
  ....
72
  )
73
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
 
75
  video_youtube_id - (type string) if your plugin has video, video's id, else null
76
  ( e.g. for https://www.youtube.com/watch?v=acaexefeP7o , youtube id is the 'acaexefeP7o' )
wd/assets/css/img/close.svg CHANGED
@@ -1,16 +1,16 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="6917.521 490.293 11.414 11.414">
2
- <defs>
3
- <style>
4
- .cls-1 {
5
- fill: none;
6
- stroke: #cbcbcb;
7
- stroke-linecap: round;
8
- stroke-linejoin: round;
9
- }
10
- </style>
11
- </defs>
12
- <g id="if_misc-_close__1276877_3_" data-name="if_misc-_close__1276877 (3)" transform="translate(6917.229 490)">
13
- <line id="Line_262" data-name="Line 262" class="cls-1" y1="10" x2="10" transform="translate(1 1)"/>
14
- <line id="Line_263" data-name="Line 263" class="cls-1" x2="10" y2="10" transform="translate(1 1)"/>
15
- </g>
16
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="6917.521 490.293 11.414 11.414">
2
+ <defs>
3
+ <style>
4
+ .cls-1 {
5
+ fill: none;
6
+ stroke: #cbcbcb;
7
+ stroke-linecap: round;
8
+ stroke-linejoin: round;
9
+ }
10
+ </style>
11
+ </defs>
12
+ <g id="if_misc-_close__1276877_3_" data-name="if_misc-_close__1276877 (3)" transform="translate(6917.229 490)">
13
+ <line id="Line_262" data-name="Line 262" class="cls-1" y1="10" x2="10" transform="translate(1 1)"/>
14
+ <line id="Line_263" data-name="Line 263" class="cls-1" x2="10" y2="10" transform="translate(1 1)"/>
15
+ </g>
16
+ </svg>
wd/assets/css/overview.css CHANGED
@@ -1,462 +1,472 @@
1
- /* general */
2
- .wd-table{
3
- display: table;
4
- width: 100%;
5
- }
6
- .wd-cell{
7
- display: table-cell;
8
- }
9
- .wd-valign-top{
10
- vertical-align: top;
11
- }
12
- .wd-valign-middle{
13
- vertical-align: middle;
14
- }
15
- .wd-valign-bottom{
16
- vertical-align: bottom;
17
- }
18
- .wd-text-right{
19
- text-align: right;
20
- }
21
- .wd-text-center{
22
- text-align: center;
23
- }
24
- .hide{
25
  display: none;
26
  }
27
- a:focus{
28
- border: none !important;
29
- outline: none !important;
30
- box-shadow: none !important;
31
- }
32
-
33
- /*end general */
34
- .wd-video_container{
35
- text-align: center;
36
- }
37
- .overview_welcome{
38
- background: url(img/welcome_bg.png) no-repeat;
39
- margin: 21px 0px;
40
- background-size: 100% 100%;
41
- line-height: 28px;
42
- }
43
- .overview_welcome .wd-cell{
44
- padding: 15px;
45
  }
46
- .overview_welcome .wd-cell:first-child{
47
- position: relative;
48
  }
49
 
50
- .overview_welcome h2{
51
- text-transform: uppercase;
52
- font-size: 26px;
53
- margin-top: 0;
54
- margin-bottom: 15px;
55
- color: #424141;
56
- }
57
- .overview_welcome img{
58
- width: 120px;
59
- padding-right: 100px;
60
- padding-left: 25px;
61
- }
62
- .overview_wrap{
63
- width: 935px;
64
- background: #fff;
65
- }
66
- .overview_welcome .overview_welcome_text{
67
- font-size: 15px;
68
- color: #424141;
69
- }
70
- .overview_tabs:after, .deals_content:after, .deal_desc_footer:after{
71
- content: "";
72
- display: table;
73
- clear: both;
74
- }
75
- .overview_tabs li{
76
- float: left;
77
- width: 16.666%;
78
- }
79
-
80
- .overview_tabs li a{
81
- text-decoration: none !important;
82
- color: #000;
83
- background: #D6D6D6;
84
- background: -webkit-linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* For Safari 5.1 to 6.0 */
85
- background: -o-linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* For Opera 11.1 to 12.0 */
86
- background: -moz-linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* For Firefox 3.6 to 15 */
87
- background: linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* Standard syntax */
88
- text-transform: uppercase;
89
- display: block;
90
- padding: 7px 10px;
91
- text-align: center;
92
- font-weight: bold;
93
- border-top: 4px solid #F1F1F1;
94
- position: relative;
95
- top: -4px;
96
- }
97
- .overview_tabs li a:hover,.overview_tabs li a:active, .overview_tabs li a:focus, .overview_tab_active{
98
- background: #fff !important;
99
- border-top: 4px solid #2A495F !important;
100
-
101
- }
102
- #welcome, #user_guide, #support, .deals_content{
103
- padding: 15px 10px;
104
- background: #fff;
105
- }
106
- .plugin_feature_title{
107
- font-size: 19px;
108
- }
109
- .more_features_wrap{
110
- margin-top: 25px;
111
- text-align: right;
112
- }
113
- .more_features, .more_features:hover, .more_features:focus{
114
- color: #fff;
115
- background: #00384F;
116
- padding: 3px 15px;
117
- text-decoration: none;
118
- }
119
- .user_guide_item{
120
- margin-bottom: 19px;
121
  }
122
- .user_guide_title, .user_guide_title:hover, .user_guide_title:focus{
123
- font-size: 16px;
124
- color: #192D3B;
125
- font-weight: bold;
126
- margin-bottom: 5px;
127
- text-decoration: none;
128
- }
129
- .user_guide_titles, .user_guide_titles:hover, .user_guide_titles:focus{
130
- color: #192D3B;
131
- text-decoration: none;
132
- }
133
- .user_guide_demo, .user_guide_plugin, .user_guide_support_forum, .user_guide_addons, .user_guide_faq,
134
- .user_guide_demo:hover, .user_guide_plugin:hover, .user_guide_support_forum:hover, .user_guide_addons:hover, .user_guide_faq:hover{
135
- background-color: #F5F5F5;
136
  background-repeat: no-repeat;
137
- background-position: right -4px center;
138
- border-top-left-radius: 25px;
139
- border-bottom-left-radius: 25px;
140
- padding: 3px 23px 3px 16px;
141
- width: 144px;
142
- font-weight: bold;
143
- text-transform: uppercase;
144
- color: #192D3B;
145
- margin-bottom: 7px;
146
- display: block;
147
- text-decoration: none;
148
  }
149
- .user_guide_demo{
150
- background-image: url(img/ug-icon-1.png);
151
  }
152
- .user_guide_plugin{
153
- background-image: url(img/ug-icon-2.png);
 
154
  }
155
- .user_guide_support_forum{
156
- background-image: url(img/ug-icon-3.png);
 
157
  }
158
- .user_guide_addons{
159
- background-image: url(img/ug-icon-4.png);
160
  }
161
- .user_guide_faq{
162
- background-image: url(img/ug-icon-5.png);
 
 
163
  }
164
-
165
- #support .wd-support-main{
166
- width: 800px;
167
- margin: 0 auto;
168
- font-size: 16px;
169
- text-align: center;
170
- margin-bottom: 15px;
171
-
172
- }
173
- .wd-overview-site-deatils{
174
- width: 800px;
175
- background: #FBFBFB;
176
- padding: 10px;
177
- margin: 0 auto;
178
- }
179
- .wd-overview-site-deatils h2, .wd-overview-site-deatils p{
180
- text-align: center;
181
- }
182
- .wd-overview-site-deatils p{
183
- font-size: 16px;
184
- }
185
- .contact_us, .contact_us:hover, .contact_us:focus{
186
- display: block;
187
- background: #27475D;
188
- color: #fff;
189
- text-decoration: none;
190
- width: 173px;
191
- padding: 8px 0px;
192
- text-align: center;
193
- margin-bottom: 5px;
194
- font-size: 16px;
195
- margin-left: 8px;
196
- border: 1px solid #B7B7B7;
197
  text-transform: uppercase;
 
 
 
 
 
198
  }
199
-
200
- .support_email{
201
- color: #F47A31;
202
- }
203
- .wd-site-deatils{
204
- padding: 23px;
205
- background: #f1f1f1;
206
- box-sizing: border-box;
207
  }
208
- .wd-site-deatils textarea{
209
- width: 100%;
210
- }
211
- .contact_us{
212
- margin-left: auto !important;
213
- margin-right: auto;
214
- margin-top: 10px;
215
- }
216
- #wd-copy{
217
- display: block;
218
- background: #27475D;
219
- color: #fff;
220
- padding: 5px 8px;
221
- text-align: center;
222
- margin-bottom: 5px;
223
- font-size: 14px;
224
- border: 1px solid #B7B7B7;
225
- cursor: pointer;
226
- }
227
- #plugins{
228
- padding-bottom: 15px;
229
- background: #fff;
230
  }
231
 
232
- .deals_header_plugins{
233
- background: url(img/plugins_header_bg.png) #fff no-repeat;
234
- }
235
- .deals_header_themes{
236
- background: url(img/themes_headrer_bg.png) #fff no-repeat;
 
 
 
 
 
 
 
 
 
 
 
237
  }
238
- .deals_header{
239
- background-size: cover;
240
- height: 241px;
241
  }
242
- .deals_header .wd-table .wd-cell{
243
- position: relative;
 
 
 
 
 
244
  }
245
- .deals_header_plugins .wd-table .wd-cell{
246
- padding: 27px 10px 10px;
247
  }
248
- .deals_header_themes .wd-table .wd-cell{
249
- padding: 0px 10px 10px;
250
  }
251
- .deals_header_plugins .wd-table .wd-cell:first-child{
252
- padding-left: 23px;
253
- width: 30%;
 
254
  }
255
- .deals_header_themes .wd-table .wd-cell:first-child{
256
- padding-left: 23px;
257
- width: 36%;
 
 
 
 
 
258
  }
259
- .deals_header_themes .wd-table{
260
- height: 100%
261
  }
262
-
263
- .titles_wrap{
264
  display: inline-block;
 
265
  }
266
- .deals_main_title, .deals_secondary_title{
267
- color: #00425A;
268
- font-weight: bold;
269
- line-height: 55px;
270
- text-align: center;
271
  text-transform: uppercase;
 
272
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
273
 
274
- .deals_main_title{
275
- font-size: 39px;
276
- }
277
- .deals_secondary_title{
278
- font-size: 30px;
279
  }
 
 
 
280
 
281
- .higlight{
282
- color: #E5682E;
 
283
  }
 
 
 
284
 
285
- .deals_save{
286
- position: absolute;
287
- right: 87px;
288
- -webkit-transform: rotate(-27deg);
289
- transform: rotate(-30deg);
290
- font-weight: bold;
291
- font-size: 39px;
292
- color: #E5682E;
293
- text-transform: uppercase;
294
- }
295
- .deals_header_plugins .deals_save{
296
- bottom: 37px;
297
- }
298
- .deals_header_themes .deals_save{
299
- bottom: 76px;
300
- }
301
- .deal_block{
302
- width: 31.2%;
303
- display: inline-block;
304
- vertical-align: top;
305
- margin: 5px;
306
- }
307
- .deal_title{
308
- text-align: center;
309
- text-transform: uppercase;
310
- font-size: 20px;
311
- background: #FAFAFA;
312
- padding: 10px 5px;
313
- line-height: 23px;
314
  }
315
- .deal_title a, .deal_title a:hover, .deal_title a:focus{
316
- text-decoration: none !important;
317
- color: #000 !important;
318
- }
319
- .deal_desc{
320
- background: #F5F5F5;
321
- padding: 10px 5px;
322
- }
323
- .deal_desc p{
324
- margin-bottom: 15px;
325
  }
 
 
 
326
 
327
- .deal_desc_footer .downloads{
328
- float: left;
 
329
  }
330
- .deal_desc_footer .download_btn{
331
- /*float: right;*/
332
- margin-top: 10px;
333
- text-align: center;
 
 
 
334
  }
335
- .deal_desc_footer .downloads .spans span:first-child{
336
- background: #26455A;
337
- color: #fff;
338
  text-transform: uppercase;
339
- padding: 5px;
 
 
 
 
340
  display: inline-block;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
341
  }
342
- .deal_desc_footer .downloads .spans span:last-child{
343
- background: #fff;
344
- padding: 5px;
345
- border-top-right-radius: 25px;
346
- border-bottom-right-radius: 25px;
347
- margin-left: -3px;
348
  }
349
-
350
- .download_btn a, .download_btn a:hover, .download_btn a:focus{
351
- color: #fff !important;
352
- background: #E97025;
353
- text-decoration: none;
354
- padding: 4px 16px;
355
- display: inline-block;
356
- margin-top: 10px;
357
- border-radius: 13px;
358
- text-transform: uppercase;
359
  }
360
 
361
- .stars-container {
362
- position: relative;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
363
  display: inline-block;
364
- color: transparent;
365
- font-size: 21px;
366
- }
367
-
368
- .stars-container:before {
369
- position: absolute;
370
- top: 0;
371
- left: 0;
372
- content: '★★★★★';
373
- color: #F4AB7F;
374
- }
375
-
376
- .stars-container:after {
377
- position: absolute;
378
- top: 0;
379
- left: 0;
380
- content: '★★★★★';
381
- color: #F4762A;
382
- overflow: hidden;
383
  }
384
 
385
- .get_all_deals{
386
- margin: 15px 0px;
387
- text-align: center;
388
- }
389
- .get_all_deals a, .get_all_deals a:hover, .get_all_deals a:active, .get_all_deals a:focus {
390
- color: #fff !important;
391
- background: #E97025;
392
- text-decoration: none;
393
- padding: 8px 21px;
394
- display: inline-block;
395
- margin-top: 10px;
396
  text-transform: uppercase;
397
- border: 2px solid #D2631E;
398
- font-size: 21px;
399
- }
400
-
401
- #themes{
402
- border-top: 35px solid #F1F1F1;
403
- padding-bottom: 15px;
404
- }
405
-
406
- .theme_block{
407
- width: 48%;
408
- margin: 5px;
409
- border: 1px solid #ECE9E9;
410
- float: left;
411
  }
412
- .theme_block a, .theme_block a:hover, .theme_block a:focus{
413
- display: block;
414
- text-decoration: none !important;
415
- background: #F7F7F7;
416
- color: #000 !important;
417
- padding: 5px;
 
 
 
418
  }
419
-
420
- /* noteices */
421
- .notice_wrap{
422
- padding: 15px;
423
- border: 1px solid #C4C4C4;
424
- width: 98%;
425
- margin: 10px auto;
426
- box-sizing: border-box;
427
-
428
  }
429
- .notice_wrap .notice_title, .notice_wrap .notice_title:hover, .notice_wrap .notice_title:focus{
430
- color: #E5682E !important;
431
- text-decoration: none;
432
- margin-bottom: 17px;
433
- font-size: 20px;
434
- display: block;
435
  }
436
-
437
- .notice_wrap .notice_txt{
438
- font-size: 15px;
439
  }
440
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
441
 
442
- .wd-tour{
443
- text-align: right;
444
- }
445
- .wd-tour-btn, .wd-tour-btn:hover, .wd-tour-btn:focus{
446
- background: #F47629;
447
- color: #fff;
448
- text-decoration: none;
449
- padding: 5px;
450
- display: inline-block;
451
- font-size: 16px;
452
- }
453
-
454
- .wd-start-using-button .button{
455
- margin-left: 7px;
456
- margin-top: 7px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
457
  }
458
-
459
- .wd-start-using-button{
460
- margin-right:10px;
461
- float: right;
462
- }
1
+ #wpfooter {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  display: none;
3
  }
4
+ #wpbody-content > div:not(.tenweb_overview){
5
+ display:none;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  }
7
+ #wpbody-content {
8
+ padding-bottom: 0;
9
  }
10
 
11
+ .tenweb_overview .tenweb_header{
12
+ background:url(../img/slide-1366.jpg);
13
+ background-size: cover;
14
+ background-repeat: no-repeat;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  }
16
+ .tenweb_overview .tenweb_footer.without_demo,
17
+ .tenweb_overview .tenweb_how_it_works{
18
+ background:url(../img/how_it_works.png);
19
+ background-size: cover;
 
 
 
 
 
 
 
 
 
 
20
  background-repeat: no-repeat;
 
 
 
 
 
 
 
 
 
 
 
21
  }
22
+ .tenweb_overview {
23
+ margin-left: -20px;
24
  }
25
+ .tenweb_overview .tenweb_plugin_features,
26
+ .tenweb_overview .tenweb_footer{
27
+ background:#ffffff;
28
  }
29
+ .tenweb_overview .tenweb_plugin_features *,
30
+ .tenweb_overview .tenweb_footer *{
31
+ color:#2c3144;
32
  }
33
+ .tenweb_overview .tenweb_how_it_works .container{
34
+ padding:60px 0 52px;
35
  }
36
+ .tenweb_overview .tenweb_footer.without_demo *,
37
+ .tenweb_overview .tenweb_how_it_works *,
38
+ .tenweb_overview .tenweb_header *{
39
+ color:#fff;
40
  }
41
+ .tenweb_overview h2 {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  text-transform: uppercase;
43
+ font-size: 24px;
44
+ letter-spacing: 1px;
45
+ margin:0;
46
+ padding: 0 0 20px;
47
+ line-height: 1.4em;
48
  }
49
+ h3.more_features {
50
+ font-size: 21px;
51
+ text-transform: uppercase;
 
 
 
 
 
52
  }
53
+ img.plugin_logo {
54
+ margin-bottom: 18px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  }
56
 
57
+ .tenweb_overview .and {
58
+ font-size: 50px;
59
+ margin: 17px 14px 19px;
60
+ line-height: 1;
61
+ font-weight: lighter;
62
+ }
63
+ .tenweb_overview .and.circle {
64
+ font-size: 50px;
65
+ margin: 15px 14px;
66
+ line-height: 1.3;
67
+ font-weight: lighter;
68
+ display: inline-block;
69
+ width: 70px;
70
+ height: 70px;
71
+ box-shadow: 0 0 8px rgba(0,0,0,.2);
72
+ border-radius: 35px;
73
  }
74
+ .tenweb_plugin_features .container {
75
+ padding: 30px 0;
 
76
  }
77
+ .tenweb_overview a.more {
78
+ text-transform: uppercase;
79
+ letter-spacing: 1px;
80
+ font-size: 16px;
81
+ line-height: 1;
82
+ display: inline-block;
83
+ text-decoration: none;
84
  }
85
+ .tenweb_overview a.more:not(.blue) {
86
+ margin-top: 23px;
87
  }
88
+ .tenweb_overview a.more.blue {
89
+ color:#397cf1;
90
  }
91
+ .tenweb_clear:after{
92
+ content:"";
93
+ display:table;
94
+ clear:both;
95
  }
96
+ .tenweb_overview .container{
97
+ width:1190px;
98
+ max-width:100%;
99
+ margin:0 auto;
100
+ text-align:center;
101
+ box-sizing: border-box;
102
+ -webkit-box-sizing: border-box;
103
+ -moz-box-sizing: border-box;
104
  }
105
+ .plan_features.tenweb_clear {
106
+ font-size: 0;
107
  }
108
+ .tenweb_overview .plan_feature {
109
+ width: 24%;
110
  display: inline-block;
111
+ margin: 0 .5% 30px;
112
  }
113
+ .tenweb_overview .plan_feature h3 {
114
+ font-size: 17px;
 
 
 
115
  text-transform: uppercase;
116
+ margin: 18px 0;
117
  }
118
+ .tenweb_overview .plan_feature p {
119
+ font-size: 15px;
120
+ overflow: hidden;
121
+ display: -webkit-box;
122
+ -webkit-line-clamp: 3;
123
+ -webkit-box-orient: vertical;
124
+ text-overflow: ellipsis;
125
+ line-height: 1.4em;
126
+ }
127
+ .tenweb_overview .plan_feature .logo {
128
+ background: url(../img/header.svg);
129
+ margin:0 auto;
130
+ }
131
+ .tenweb_overview .plan_feature.image_optimizer .logo {
132
+ background-size: 191px;
133
+ background-position: 0px -55px;
134
+ width: 68px;
135
+ height: 51px;
136
+ margin: 0 auto 35px;
137
+ }
138
+ .tenweb_overview .plan_feature.pro_plugins .logo {
139
+ background-size: 194px;
140
+ background-position: 0px -118px;
141
+ width: 55px;
142
+ height: 68px;
143
+ }
144
+ .tenweb_overview .plan_feature.dashboard .logo {
145
+ background-size: 195px;
146
+ background-position: 0px -196px;
147
 
148
+ width: 68px;
149
+ height: 56px;
150
+ margin: 0 auto 30px;
 
 
151
  }
152
+ .tenweb_overview .plan_feature.pro_themes .logo {
153
+ background-size: 190px;
154
+ background-position: 0px -254px;
155
 
156
+ width: 57px;
157
+ height: 58px;
158
+ margin: 0 auto 28px;
159
  }
160
+ .tenweb_overview .plan_feature.seo .logo {
161
+ background-size: 200px;
162
+ background-position: 0px -338px;
163
 
164
+ width: 61px;
165
+ height: 63px;
166
+ margin: 0 auto 23px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
  }
168
+ .tenweb_overview .plan_feature.security .logo {
169
+ background-size: 194px;
170
+ background-position: 0px -398px;
171
+
172
+ width: 55px;
173
+ height: 62px;
174
+ margin: 0 auto 24px;
 
 
 
175
  }
176
+ .tenweb_overview .plan_feature.backup .logo {
177
+ background-size: 250px;
178
+ background-position: 0px -602px;
179
 
180
+ width: 100px;
181
+ height: 60px;
182
+ margin: 0 auto 26px;
183
  }
184
+ .tenweb_overview .plan_feature.hosting .logo {
185
+ background-size: 196px;
186
+ background-position: 0px -527px;
187
+
188
+ width: 64px;
189
+ height: 64px;
190
+ margin: 0 auto 22px;
191
  }
192
+ .tenweb_overview a.button {
193
+ background: #367bf2;
194
+ color: #ffffff;
195
  text-transform: uppercase;
196
+ letter-spacing: 1px;
197
+ font-size: 16px;
198
+ padding: 16px 30px;
199
+ line-height: 1;
200
+ border-radius: 2px;
201
  display: inline-block;
202
+ border: 0 !important;
203
+ box-shadow: none;
204
+ height: auto;
205
+ }
206
+ .tenweb_overview a.button.transparent {
207
+ background: transparent !important;
208
+ color: #ffffff;
209
+ border: 1px solid #ffffff !important;
210
+ width: 160px;
211
+ margin: 0 5px;
212
+ }
213
+ .tenweb_overview a.button:hover {
214
+ background: #367bf2;
215
+ color: #ffffff;
216
+ box-shadow: 2px 2px 8px rgba(0,0,0,0.2);
217
+ }
218
+ .tenweb_overview .tenweb_header .container_top a.button {
219
+ font-size: 18px;
220
+ padding: 13px 30px;
221
+ display:table-cell;
222
+ }
223
+ .tenweb_overview .tenweb_logo {
224
+ float: left;
225
+ width: 197px;
226
  }
227
+ .tenweb_overview .tenweb_logo a div {
228
+ background: url(../img/header.svg);
229
+ height: 53px;
230
+ background-size: 196px;
231
+ background-position: 0 0;
232
+ background-repeat: no-repeat;
233
  }
234
+ .tenweb_overview .tenweb_header_right {
235
+ float: right;
236
+ text-align: right;
237
+ display: table;
 
 
 
 
 
 
238
  }
239
 
240
+ .tenweb_overview .inline-block.header_text {
241
+ text-transform: uppercase;
242
+ font-size: 15px;
243
+ line-height: 1.5;
244
+ padding-right: 10px;
245
+ letter-spacing: 0;
246
+ margin-top: 2px;
247
+ width: calc(100% - 180px);
248
+ display:table-cell;
249
+ vertical-align:middle;
250
+ }
251
+ .tenweb_overview .tenweb_header_divider {
252
+ height:18px;
253
+ background:#fff;
254
+ }
255
+ .tenweb_overview .container_top {
256
+ padding:24px 15px;
257
+ }
258
+ .tenweb_overview .container_bottom {
259
+ padding: 50px 0 40px;
260
+ }
261
+ .tenweb_overview .plugin_features.tenweb_clear {
262
+ margin-top: 40px;
263
+ }
264
+ .plugin_features .plugin_feature_logo{
265
+ height:54px;
266
+ }
267
+ .plugin_features .plugin_feature{
268
+ width: 31%;
269
+ margin: 0 1% 20px;
270
+ /*float: left;*/
271
  display: inline-block;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
272
  }
273
 
274
+ .plugin_features .plugin_feature h3 {
275
+ font-size: 18px;
 
 
 
 
 
 
 
 
 
276
  text-transform: uppercase;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
277
  }
278
+ .plugin_features .plugin_feature p {
279
+ font-size: 15px;
280
+ overflow: hidden;
281
+ display: -webkit-box;
282
+ -webkit-line-clamp: 3;
283
+ -webkit-box-orient: vertical;
284
+ text-overflow: ellipsis;
285
+ line-height: 1.4em;
286
+ min-height: 63px;
287
  }
288
+ .tenweb_how_it_works a.button {
289
+ margin-top: 12px;
 
 
 
 
 
 
 
290
  }
291
+ .plugin_features .plugin_feature img{
292
+ width:54px;
293
+ max-height: 100%;
 
 
 
294
  }
295
+ .tenweb_footer {
296
+ padding: 70px 0 80px;
 
297
  }
298
 
299
+ .tenweb_footer p {
300
+ font-size: 22px;
301
+ font-weight: lighter;
302
+ margin: 8px 0 20px;
303
+ }
304
+ .tenweb_footer h2 {
305
+ font-size: 31px;
306
+ }
307
+ .tenweb_overview img.plugin_logo {
308
+ width: 100px;
309
+ }
310
+ @media only screen and (min-width: 1620px){
311
+ .plugin_features .plugin_feature p {
312
+ font-size: 17px;
313
+ }
314
+ .tenweb_overview img.plugin_logo {
315
+ width: 130px;
316
+ }
317
+ .tenweb_overview .container{
318
+ width:1600px;
319
+ }
320
+ .tenweb_overview .inline-block.header_text{
321
+ font-size: 19px;
322
+ line-height: 1.2;
323
+ padding-right: 18px;
324
+ letter-spacing: .8px;
325
+ width: calc(100% - 193px);
326
+ margin-top: 0;
327
+ }
328
+ .tenweb_overview h2 {
329
+ font-size: 28px;
330
+ padding: 10px 0 20px;
331
+ }
332
+ .tenweb_overview .and {
333
+ font-size: 60px;
334
+ margin: 18px 14px;
335
+ }
336
+ .tenweb_overview .and.circle {
337
+ font-size: 60px;
338
+ margin: 20px 14px;
339
+ line-height: 1.4;
340
+ width: 90px;
341
+ height: 90px;
342
+ border-radius: 45px;
343
+ }
344
+ .tenweb_overview .plan_feature {
345
+ width: 23%;
346
+ display:inline-block;
347
+ margin: 0 1% 40px;
348
+ }
349
+ .tenweb_overview .plan_feature h3 {
350
+ font-size:20px;
351
+ }
352
+ .tenweb_overview .plan_feature p {
353
+ height: 72px;
354
+ font-size:16px;
355
+ }
356
+ .plugin_features .plugin_feature p{
357
+ font-size:18px;
358
+ height: 75px;
359
+ }
360
+ .plugin_features .plugin_feature h3{
361
+ font-size:20px;
362
+ }
363
+ .tenweb_footer h2{
364
+ font-size:37px;
365
+ }
366
+ .tenweb_footer p {
367
+ font-size: 24px;
368
+ }
369
+ .tenweb_overview .container_top {
370
+ padding: 29px 0;
371
+ }
372
+ }
373
+ @media only screen and (max-width: 1320px){
374
+ .plugin_features .plugin_feature,
375
+ .tenweb_overview .plan_feature {
376
+ width: 46%;
377
+ display: inline-block;
378
+ margin: 0 1.5% 10px;
379
+ }
380
+ .tenweb_footer h2 {
381
+ font-size: 26px;
382
+ }
383
+ .tenweb_footer p {
384
+ font-size: 20px;
385
+ line-height: 1.4em;
386
+ }
387
+ .tenweb_overview .container {
388
+ width: 99%;
389
+ }
390
+ .tenweb_overview .inline-block.header_text {
391
+ text-transform: uppercase;
392
+ font-size: 13px;
393
+ }
394
+ }
395
+ @media only screen and (max-width: 1200px){
396
 
397
+ .tenweb_overview .tenweb_header_right {
398
+ float: right;
399
+ text-align: right;
400
+ display: table;
401
+ width: calc(100% - 267px);
402
+ }
403
+ }
404
+ @media only screen and (max-width: 840px){
405
+ .tenweb_overview .inline-block.header_text {
406
+ display:block;
407
+ padding-right: 0;
408
+ margin-top: 10px;
409
+ width: 100%;
410
+ clear:both;
411
+ }
412
+ .tenweb_overview .tenweb_header .container_top a.button {
413
+ display:inline-block;
414
+ }
415
+ .tenweb_overview .tenweb_logo a div {
416
+ height: 37px;
417
+ background-size: 145px;
418
+ background-position: 0 0px;
419
+ }
420
+ .tenweb_overview .tenweb_logo {
421
+ float: left;
422
+ width: 150px;
423
+ }
424
+ .tenweb_overview {
425
+ margin-left: -10px;
426
+ }
427
+ .plugin_features .plugin_feature,
428
+ .tenweb_overview .plan_feature {
429
+ width: 88%;
430
+ margin: 0 auto 10px;
431
+ float: none;
432
+ }
433
+ .tenweb_overview .plan_feature p,
434
+ .plugin_features .plugin_feature p {
435
+ overflow: visible;
436
+ -webkit-line-clamp: none;
437
+ height: auto;
438
+ }
439
+ .tenweb_footer h2 {
440
+ font-size: 23px;
441
+ }
442
+ .tenweb_footer p {
443
+ font-size: 18px;
444
+ line-height: 1.4em;
445
+ }
446
+ .tenweb_overview .plugin_features.tenweb_clear {
447
+ margin-top: 20px;
448
+ }
449
+ .tenweb_footer {
450
+ padding: 50px 0 60px;
451
+ }
452
+ .tenweb_overview .tenweb_logo {
453
+ float: none;
454
+ width: 150px;
455
+ margin: 0 auto 10px;
456
+ }
457
+ .tenweb_overview .tenweb_header_right {
458
+ float: none;
459
+ width: 100%;
460
+ text-align: center;
461
+ }
462
+ .tenweb_overview .tenweb_header_right a.button {
463
+ float: none;
464
+ }
465
+ .tenweb_overview .inline-block.header_text {
466
+ float: none;
467
+ margin-top: 10px;
468
+ }
469
+ .tenweb_overview h2 {
470
+ font-size: 21px;
471
+ }
472
  }
 
 
 
 
 
wd/assets/css/subscribe.css CHANGED
@@ -1,114 +1,210 @@
1
- body {
2
- color: #444;
3
- font-family: "Open Sans",sans-serif;
4
- line-height: 1.4em;
5
- min-width: 600px;
6
  }
7
-
8
- .wd-subscribe{
9
- background: #fff;
10
- border: 2px solid #E2E5EC;
11
- width: 55%;
12
- margin-top: 40px;
13
- }
14
- .wd-subscribe-content{
15
- padding: 30px 92px;
16
  }
17
- .imgs{
18
- text-align: center;
19
  }
20
- .imgs img{
21
- vertical-align: middle;
22
- width: 125px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  }
24
- .imgs span {
25
- color: #21759B;
26
- font-weight: bold;
27
- font-size: 52px;
28
- padding: 0px 28px;
29
  }
30
- .texts{
31
- margin-top: 10px;
32
- margin-bottom: 25px;
 
 
33
  }
34
 
35
- .btns .allow_and_continue, .btns .allow_and_continue:hover, .btns .allow_and_continue:focus{
36
- display: inline-block;
37
- background: url(img/allow&continue.png) no-repeat;
38
- width: 279px;
39
- height: 61px;
40
- border: none;
 
 
 
 
41
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  }
43
- .btns .skip, .btns .skip:hover, .btns .skip:focus{
44
- margin-left: 66px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
  display: inline-block;
46
- background: url(img/skip.png) no-repeat;
47
- width: 76px;
48
- height: 59px;
49
  }
50
- .permissions{
51
- color: #525252 !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
52
  }
53
- .list{
54
- margin-top: 15px;
 
 
 
 
 
 
 
 
 
55
  display:none;
56
  }
57
- .list_item{
58
- display: table;
59
- margin-bottom: 15px;
60
  }
61
- .list_item:after{
62
- content: "";
63
- clear: both;
64
- display: table;
65
  }
66
- .list_img_wrap{
67
- float: left;
 
68
  }
69
- .list_img_wrap img{
70
- width: 27px;
 
 
 
71
  }
72
- .list_text_wrap{
73
- margin-left: 33px;
74
- float: right;
75
  }
76
- .list_title, .list_text{
77
- color: #525252;
78
- font-size: 13px;
79
  }
80
- .wd_loader{
81
- vertical-align: top;
82
- width: 30px;
83
- margin-top: 11px;
84
- visibility: hidden;
85
  }
86
- .wd-subscribe-footer{
87
- text-align: center;
88
- padding: 4px 0px;
89
- border-top: 1px solid rgba(204, 204, 204, 0.52);
90
- }
91
- .wd-footer-menu {
92
- display: inline-block;
93
- list-style-type: none;
94
- padding: 0;
95
- margin: 0;
96
- }
97
- .wd-footer-menu li{
98
- float: left;
99
- }
100
- .wd-footer-menu li, .wd-footer-menu li a{
101
- color: rgba(62, 60, 60, 0.57) !important;
102
- text-decoration: none;
103
- font-size: 12px;
104
- padding: 2px;
105
- font-weight: bold;
106
- display: inline-block;
107
- vertical-align: middle;
108
  }
109
 
110
-
111
- .wd-footer-menu li a:hover{
112
- color: rgba(62, 60, 60, 0.57) !important;
113
- text-decoration: underline;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  }
1
+ #wpfooter {
2
+ display: none;
 
 
 
3
  }
4
+ #wpbody-content > div:not(.tenweb_subscribe){
5
+ display:none;
 
 
 
 
 
 
 
6
  }
7
+ #wpbody-content {
8
+ padding-bottom: 0;
9
  }
10
+
11
+
12
+ .tenweb_clear:after{
13
+ content:"";
14
+ display:table;
15
+ clear:both;
16
+ }
17
+ .tenweb_subscribe a.button {
18
+ background: #367bf2;
19
+ color: #ffffff;
20
+ text-transform: uppercase;
21
+ letter-spacing: 1px;
22
+ font-size: 16px;
23
+ padding: 16px 30px;
24
+ line-height: 1;
25
+ border-radius: 2px;
26
+ display: inline-block;
27
+ border: 0 !important;
28
+ box-shadow: none;
29
+ height: auto;
30
  }
31
+ .tenweb_subscribe a:focus {
32
+ box-shadow:none;
 
 
 
33
  }
34
+ .tenweb_subscribe a.button:active,
35
+ .tenweb_subscribe a.button:hover {
36
+ background: #367bf2;
37
+ color: #ffffff;
38
+ box-shadow: 2px 2px 8px rgba(0,0,0,0.2);
39
  }
40
 
41
+ .tenweb_subscribe a.more {
42
+ text-transform: uppercase;
43
+ letter-spacing: 1px;
44
+ font-size: 14px;
45
+ line-height: 1;
46
+ display: block;
47
+ text-decoration: none;
48
+ color: #4e4e4e;
49
+ margin-top: 9px;
50
+ }
51
 
52
+ .wd_loader{
53
+ vertical-align: top;
54
+ width: 30px;
55
+ margin-top: 11px;
56
+ display: none;
57
+ }
58
+ .tenweb_subscribe {
59
+ background: #ffffff;
60
+ box-shadow: 0 0 10px rgba(0,0,0,0.2);
61
+ width: calc(100% - 20px);
62
+ padding: 105px 20px 0;
63
+ margin: 20px 0 0 0;
64
+ box-sizing: border-box;
65
+ -webkit-box-sizing: border-box;
66
+ -moz-box-sizing: border-box;
67
+ text-align: center;
68
  }
69
+ .tenweb_subscribe .texts h2 {
70
+ font-size:28px;
71
+ text-transform: uppercase;
72
+ margin: 26px 0 16px;
73
+ }
74
+ .tenweb_subscribe .texts h5 {
75
+ font-size:18px;
76
+ text-transform: uppercase;
77
+ margin: 6px 0;
78
+ line-height: 1.4em;
79
+ }
80
+ .tenweb_subscribe .texts p {
81
+ font-size:16px;
82
+ }
83
+ .tenweb_subscribe .texts .hi_there {
84
+ width:66px;
85
+ height:103px;
86
+ background: url(../img/allow-and-continue.png) no-repeat;
87
+ margin: 0 auto;
88
+ }
89
+ .tenweb_subscribe-content{
90
+ width: 960px;
91
+ max-width: 100%;
92
+ margin: 0 auto;
93
+ }
94
+ .tenweb_subscribe .permissions {
95
+ font-size: 16px;
96
+ cursor: pointer;
97
+ margin: 10px 0 30px;
98
+ position: relative;
99
  display: inline-block;
 
 
 
100
  }
101
+ .tenweb_subscribe .permissions:after {
102
+ content: "";
103
+ position: absolute;
104
+ width: 13px;
105
+ height: 13px;
106
+ background: url(../img/allow-and-continue.png) no-repeat;
107
+ background-position: 1px -237px;
108
+ right: -19px;
109
+ top: 2px;
110
+ transition:transform .2s;
111
+ }
112
+ .tenweb_subscribe .permissions.active:after {
113
+ content: "";
114
+ transform: rotateZ(-180deg);
115
+ -webkit-transform: rotateZ(-180deg);
116
+ -moz-transform: rotateZ(-180deg);
117
+ top: 3px;
118
  }
119
+ .tenweb_subscribe .list_item {
120
+ width: 31%;
121
+ float: left;
122
+ box-shadow: 0 0 10px rgba(0,0,0,0.2);
123
+ margin-right: 3%;
124
+ padding: 20px 0;
125
+ box-sizing: border-box;
126
+ -webkit-box-sizing: border-box;
127
+ -moz-box-sizing: border-box;
128
+ }
129
+ .tenweb_subscribe .list{
130
  display:none;
131
  }
132
+ .tenweb_subscribe .list_item:last-child {
133
+ margin-right: 0;
 
134
  }
135
+ .tenweb_subscribe .list.tenweb_clear {
136
+ max-width: 100%;
137
+ width: 580px;
138
+ margin: 0 auto 28px;
139
  }
140
+ .tenweb_subscribe .list_text_wrap {
141
+ font-size: 12px;
142
+ font-weight: bold;
143
  }
144
+ .tenweb_subscribe .list_logo {
145
+ width: 36px;
146
+ height:33px;
147
+ background: url(../img/allow-and-continue.png) no-repeat;
148
+ margin:0 auto 20px;
149
  }
150
+ .tenweb_subscribe .user_info .list_logo {
151
+ background-position: 3px -110px;
 
152
  }
153
+ .tenweb_subscribe .wp_info .list_logo {
154
+ background-position: 2px -153px;
 
155
  }
156
+ .tenweb_subscribe .plugins_info .list_logo {
157
+ background-position: 6px -196px;
 
 
 
158
  }
159
+ .tenweb_subscribe-footer * {
160
+ color: #afafaf;
161
+ }
162
+ .tenweb_footer-menu a {
163
+ font-size: 12px;
164
+ text-transform: uppercase;
165
+ letter-spacing: 1px;
166
+ text-decoration: none;
167
+ }
168
+ .tenweb_footer-menu li{
169
+ display:inline-block;
170
+ margin: 0 10px;
171
+ }
172
+ ul.tenweb_footer-menu.tenweb_clear {
173
+ padding: 18px 0 15px;
174
+ line-height: 1;
175
+ border-top: 1px solid #ececec;
176
+ margin: 16px 0 0;
 
 
 
 
177
  }
178
 
179
+ .tenweb_subscribe-top-footer {
180
+ font-size: 13px;
181
+ color: #afafaf;
182
+ margin-top: 112px;
183
+ }
184
+ @media only screen and (min-width: 1620px){
185
+ .tenweb_subscribe-top-footer {
186
+ margin-top: 130px;
187
+ }
188
+ .tenweb_subscribe {
189
+ padding: 150px 20px 0;
190
+ }
191
+ }
192
+ @media only screen and (max-width: 768px){
193
+ .tenweb_subscribe {
194
+ width: calc(100% - 10px);
195
+ padding: 60px 20px 0;
196
+ }
197
+ .tenweb_subscribe-top-footer {
198
+ margin-top: 60px;
199
+ }
200
+ .tenweb_subscribe .list_item {
201
+ width: 100%;
202
+ float: none;
203
+ margin-right: 0;
204
+ padding: 20px 10px;
205
+ margin-bottom: 10px;
206
+ }
207
+ .tenweb_subscribe .list.tenweb_clear {
208
+ margin: 0 auto 15px;
209
+ }
210
  }
wd/assets/img/allow-and-continue.png ADDED
Binary file
wd/assets/img/header.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" width="190.51" height="655.4" viewBox="0 0 190.51 655.4"><defs><style>.cls-1{fill:#fff;}</style></defs><title>ICONS SPRITE</title><path class="cls-1" d="M35.4,147.3a20.82,20.82,0,0,1,9,2c-1-1-2-1.9-3.1-2.9.2-.2.4-.3.5-.4l10.3-10.3a2.85,2.85,0,0,0,.8-1.4,2.35,2.35,0,0,0-1.2-2.6,2.31,2.31,0,0,0-2.9.5l-9.9,9.9a7,7,0,0,0-.8,1c-3.8-3.8-7.4-7.4-11.2-11.1.1-.1.3-.2.4-.3l10.5-10.5a2.41,2.41,0,1,0-3.4-3.4l-6.3,6.3c-1.5,1.5-3,3.1-4.7,4.7-1.3-1.3-2.5-2.6-3.8-3.9l-.4.4c-2,2-4.1,4-6.1,6.1a17.89,17.89,0,0,0-4.9,17.8,47.31,47.31,0,0,0,2,5L0,164.4l5.3,5.4,10.3-10.3A22.47,22.47,0,0,1,35.4,147.3Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M34.5,149.8A16.5,16.5,0,1,0,51,166.3,16.52,16.52,0,0,0,34.5,149.8Zm0,31.6a15.1,15.1,0,1,1,15.1-15.1A15.15,15.15,0,0,1,34.5,181.4Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M29.6,165.9a2.65,2.65,0,0,0-1.9-.9,2.47,2.47,0,0,0-2.1.7,4.42,4.42,0,0,0-.8.9v-.7a5.39,5.39,0,0,1,.5-2.1,3,3,0,0,1,1.3-1.2,5.57,5.57,0,0,1,3-.3v-1h-1a4.67,4.67,0,0,0-3.7,1.4,7.11,7.11,0,0,0-1.2,4.5,6.05,6.05,0,0,0,.4,2.4,3.33,3.33,0,0,0,1.2,1.4,3.45,3.45,0,0,0,1.8.5,3.1,3.1,0,0,0,3.3-3.3A4,4,0,0,0,29.6,165.9Zm-1.1,3.9a1.68,1.68,0,0,1-1.4.6,1.9,1.9,0,0,1-1.5-.8,2.62,2.62,0,0,1-.5-1.7,1.61,1.61,0,0,1,.6-1.3,2,2,0,0,1,1.5-.6,1.68,1.68,0,0,1,1.4.6,2.46,2.46,0,0,1,.5,1.5A4.71,4.71,0,0,1,28.5,169.8Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M33,170.2a2.91,2.91,0,0,0,2.5,1.2,2.79,2.79,0,0,0,2.5-1.2,6.68,6.68,0,0,0,.8-3.9,7,7,0,0,0-.9-3.9,3.2,3.2,0,0,0-5,0,6.68,6.68,0,0,0-.8,3.9A6.59,6.59,0,0,0,33,170.2Zm.9-6.8a1.57,1.57,0,0,1,3,0,7.39,7.39,0,0,1,.4,3,7.7,7.7,0,0,1-.4,3,1.58,1.58,0,0,1-1.5,1.1,1.5,1.5,0,0,1-1.5-1.1,11.45,11.45,0,0,1,0-6Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="47.2 165.4 44.4 165.4 44.4 162.5 43.6 162.5 43.6 165.4 40.8 165.4 40.8 166.1 43.6 166.1 43.6 168.9 44.4 168.9 44.4 166.1 47.2 166.1 47.2 165.4"/><path class="cls-1" d="M33.3,247.9H10a2.89,2.89,0,0,1-2.4-1.1A32.6,32.6,0,0,1,.3,224a33.05,33.05,0,0,1,62.3-13.3A33.07,33.07,0,0,1,58.7,247a2.74,2.74,0,0,1-2.2.9Zm0-4.5H55.2a1.43,1.43,0,0,0,1.2-.6A28.53,28.53,0,0,0,27.8,198,28.58,28.58,0,0,0,5,223.4a27.78,27.78,0,0,0,5.3,19.3,1.51,1.51,0,0,0,1.4.7C18.8,243.3,26.1,243.4,33.3,243.4Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M29,233.2a3.14,3.14,0,0,0,2.9,2h0a3.17,3.17,0,0,0,2.5-1.2l.2-.3c.1-.1.2-.3.3-.4l3.1-3.8c2.1-2.5,4.2-5.1,6.3-7.6a1.57,1.57,0,0,0,0-2.2,1.61,1.61,0,0,0-1.1-.5,1.5,1.5,0,0,0-1.1.4L29.8,229.8A3.07,3.07,0,0,0,29,233.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M18.8,211.2a2.84,2.84,0,0,1-.9,1,1.72,1.72,0,0,1-1.4-.1,19.86,19.86,0,0,1-2.1-2,1.24,1.24,0,0,1,.1-1.7c.5-.5,1.1-.7,1.6-.3.8.7,1.6,1.5,2.4,2.3C18.7,210.6,18.7,210.8,18.8,211.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M52.8,209.1c-.1,1-2.4,3.3-3.3,3.2a2.1,2.1,0,0,1-1.1-.7,1.72,1.72,0,0,1,.1-1.4,9.47,9.47,0,0,1,2-2,1.69,1.69,0,0,1,1.4-.1C52.3,208.3,52.5,208.8,52.8,209.1Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M56.2,227.6H54.9a1.24,1.24,0,0,1-1.3-1.2,1.4,1.4,0,0,1,1.2-1.4,13.1,13.1,0,0,1,2.8,0,1.19,1.19,0,0,1,1.1,1.4,1.16,1.16,0,0,1-1.2,1.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M10.3,227.6H9.1a1.26,1.26,0,0,1-1.3-1.3A1.24,1.24,0,0,1,9,225h2.5a1.34,1.34,0,0,1,1.3,1.4,1.4,1.4,0,0,1-1.3,1.3A4.48,4.48,0,0,0,10.3,227.6Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M35,202.8V204a1.21,1.21,0,0,1-1.4,1.2,1.32,1.32,0,0,1-1.3-1.3v-2.4a1.3,1.3,0,1,1,2.6,0,6.15,6.15,0,0,1,.1,1.3Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M44.2,298.1a5.51,5.51,0,0,0-2-2.7c-.3-.3-.4-.5,0-.9a45.34,45.34,0,0,0,5-5.7,11.88,11.88,0,0,0,1.3-2.5,1.7,1.7,0,0,0-1.8-2.3,5.63,5.63,0,0,0-3,1.2l-1.2.9c-.1.1-.3.3-.5.1s0-.3.1-.4a8.23,8.23,0,0,0,1.2-2.5,3,3,0,0,0-.2-2.6,1.8,1.8,0,0,0-1.6-.9,8.09,8.09,0,0,0-3.7,1.2,13.25,13.25,0,0,0-2.5,1.6c-.2.1-.4.4-.6.1s0-.4.2-.6a10.53,10.53,0,0,0,1.7-2.9c1.2-2.9-.6-5.1-3.7-4.7a4.33,4.33,0,0,0-.5.1c-.2,0-.4.2-.5-.1s.1-.4.2-.5a5.37,5.37,0,0,0,1-1.6,2.5,2.5,0,0,0-.3-2.5,1.9,1.9,0,0,0-2.2-.8,8.79,8.79,0,0,0-3.4,1.9c-.1.1-.2.2-.3.2s-.3.3-.5.1,0-.3.1-.4c.2-.4.5-.7.7-1.1a1.2,1.2,0,0,0,0-1.5,1.1,1.1,0,0,0-1.4-.3,10.31,10.31,0,0,0-2.8,1.8,35.83,35.83,0,0,0-2.9,2.6c-.3.3-.4.2-.7,0a6.69,6.69,0,0,0-2.8-2.1l.5-.5L27.9,259a2,2,0,0,1,3.2,0l24.6,24.6a2,2,0,0,1,0,3.2L44.9,297.6A1.16,1.16,0,0,0,44.2,298.1Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M26.5,288c-4.5-4.5-9-9-13.5-13.4-.4-.4-.4-.6,0-.9a9.43,9.43,0,0,0,1-1,2,2,0,0,1,2.7,0l.3.3,24.4,24.4c1.2,1.2,1.2,2.2,0,3.3-.4.4-.7,1-1.1,1s-.8-.6-1.2-1C35,296.5,30.8,292.2,26.5,288Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M9.8,276.9a3.92,3.92,0,0,0,0,5.5c.6.7,1.3,1.3,1.9,2a12.28,12.28,0,0,1,2.3,4,4.7,4.7,0,0,1-1.3,5,18.51,18.51,0,0,1-4.8,3.5,15.92,15.92,0,0,0-6.1,4.8,6.64,6.64,0,0,0-.6,7.6,10.49,10.49,0,0,0,3,3.3,6.61,6.61,0,0,0,8.1.3,14.14,14.14,0,0,0,4.9-5.7,22.64,22.64,0,0,1,2.6-4.2c2.5-3.1,5.1-3.6,8.5-1.4a18.46,18.46,0,0,1,3.7,3.1,3.92,3.92,0,0,0,4.9.5,11.37,11.37,0,0,0,1.6-1.5c.4-.3.4-.5,0-.9L25.1,289.4,12.6,276.9c-.5-.5-.9-1.3-1.4-1.2S10.3,276.4,9.8,276.9Zm1.5,26.3a4,4,0,0,1,0,5.6,3.92,3.92,0,1,1,0-5.6Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M42,361.9a23.36,23.36,0,1,0-18.3,8.9,22.77,22.77,0,0,0,12.9-3.9L54,384.2l5.2-5.2Zm.3-14.4a18.6,18.6,0,1,1-18.6-18.6A18.69,18.69,0,0,1,42.3,347.5Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M1,403.6l-.7.1v.7C.3,417.3,3,428,8.7,437.2a46.22,46.22,0,0,0,16.2,16.1,4,4,0,0,0,2.1.7,3.68,3.68,0,0,0,2.1-.8c.6-.5,1.4-1,2-1.5.8-.6,1.6-1.1,2.4-1.8a53.31,53.31,0,0,0,17.7-27.4,62.88,62.88,0,0,0,2.3-18.2v-.7l-.7-.1c-7.8-1.4-14.9-4.9-21.8-8.4l-.1-.1c-2.7-1.4-5.8-1.2-8.9.4C14.6,399.4,8.1,402.3,1,403.6Zm29.4-4.3a80.16,80.16,0,0,0,18.4,7.5c.2.1.6.5.6.6h0c-.4,13.4-4.2,24.1-11.6,32.8a51.71,51.71,0,0,1-6.4,6c-1.1.9-2.2,1.9-3.3,2.8a1.76,1.76,0,0,1-1.3.6,2.69,2.69,0,0,1-1.6-.7A46.11,46.11,0,0,1,6.5,422.2a94.78,94.78,0,0,1-2.3-14.3c0-1.1.2-1.2.9-1.4a71.15,71.15,0,0,0,18.2-7.4A7.45,7.45,0,0,1,30.4,399.3Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="35.7 410.4 25.6 426 18.6 419.8 15.9 422.6 26.4 432.1 39 412.6 35.7 410.4"/><path class="cls-1" d="M48.5,501.7H15.1a11.9,11.9,0,1,1,0-23.8,12.22,12.22,0,0,1,5.6,1.4l1.4.8.5-1.5A17.49,17.49,0,0,1,39,467.1a17.3,17.3,0,0,1,17,13.6,24.58,24.58,0,0,1,2.8-.2A20.52,20.52,0,0,0,53.1,470,20.06,20.06,0,0,0,39,464.3a20.46,20.46,0,0,0-18.5,12A14.69,14.69,0,1,0,15,504.6H51.3C49.6,503.7,48.5,502.8,48.5,501.7Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M51.7,504.5H15.1a14.8,14.8,0,1,1,0-29.6,14,14,0,0,1,5.4,1,20.3,20.3,0,0,1,18.5-12,20.06,20.06,0,0,1,14.1,5.7,19.74,19.74,0,0,1,5.7,10.6v.1h-.1a24.58,24.58,0,0,0-2.8.2h-.1v-.1a17.3,17.3,0,0,0-33.2-2.1l-.6,1.6-1.5-.8A11.88,11.88,0,1,0,15,501.5H48.5v.1c0,1,1,2,2.7,2.7ZM15.1,475.1a14.6,14.6,0,0,0,0,29.2H50.9c-1.6-.7-2.5-1.7-2.5-2.6H15.1a12,12,0,1,1,5.6-22.6l1.3.7.5-1.4A17.61,17.61,0,0,1,39,466.8a17.18,17.18,0,0,1,17,13.6,24.52,24.52,0,0,1,2.7-.2A20.22,20.22,0,0,0,53,469.8a20,20,0,0,0-14-5.7A20.23,20.23,0,0,0,20.6,476v.1h-.1A16.16,16.16,0,0,0,15.1,475.1Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M69.7,485.9a2.84,2.84,0,0,0-.7-1.7c-1.6-1.7-5.5-2.6-9.4-2.6h-.7a24.52,24.52,0,0,0-2.7.2c-3.7.5-6.7,1.9-6.7,4v13.8a2.2,2.2,0,0,0,.6,1.5c1.3,1.6,4.6,2.5,8.1,2.7h1.5c3.9,0,7.9-.9,9.4-2.6a2.19,2.19,0,0,0,.7-1.7V486.1C69.7,486.2,69.7,486,69.7,485.9ZM59.5,497.4a19.3,19.3,0,0,1-6.2-.9c-1.5-.5-2.1-1.1-2.1-1.4v-2a17.82,17.82,0,0,0,8.2,1.7,23.1,23.1,0,0,0,6.1-.8,6.67,6.67,0,0,0,2.1-.9v2c0,.3-.5.9-2.1,1.4l-.9.3A18.28,18.28,0,0,1,59.5,497.4Zm8.3-7.9v1c0,.3-.5.9-2.1,1.4h-.1a18.25,18.25,0,0,1-6.1.9,19.3,19.3,0,0,1-6.2-.9c-1.5-.5-2.1-1.1-2.1-1.4v-2a17.82,17.82,0,0,0,8.2,1.7,22.65,22.65,0,0,0,5.3-.6,10,10,0,0,0,2.6-.9c.1-.1.2-.1.3-.2v1Zm-14.5-5a17.65,17.65,0,0,1,2.9-.7,32.51,32.51,0,0,1,3.3-.2,19.83,19.83,0,0,1,3.5.3,17.63,17.63,0,0,1,2.7.7c1.5.5,2.1,1.1,2.1,1.4s-.4.7-1.3,1.1a6.88,6.88,0,0,1-.8.3,11.7,11.7,0,0,1-2,.5,27.22,27.22,0,0,1-4.2.4,19.3,19.3,0,0,1-6.2-.9c-1.5-.5-2.1-1.1-2.1-1.4S51.8,485,53.3,484.5Zm14.5,15.2c0,.3-.5.9-2.1,1.4-.4.1-.8.3-1.3.4a23.84,23.84,0,0,1-4.9.5,21.79,21.79,0,0,1-6-.8c-.1,0-.2,0-.2-.1-1.5-.5-2.1-1.1-2.1-1.4v-2a17.82,17.82,0,0,0,8.2,1.7c1.2,0,2.4-.1,3.5-.2a12.23,12.23,0,0,0,4.2-1.2c.2-.1.3-.2.5-.3v2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M59.5,504.1H58c-3.9-.2-7-1.3-8.2-2.8a2.45,2.45,0,0,1-.6-1.6V485.9c0-2,2.6-3.6,6.9-4.2a24.52,24.52,0,0,1,2.7-.2h.7c4.3,0,8.1,1,9.5,2.6a2.5,2.5,0,0,1,.8,1.8v13.8a2.9,2.9,0,0,1-.8,1.8C67.6,503.1,63.8,504.1,59.5,504.1Zm0-22.3h-.7a24.52,24.52,0,0,0-2.7.2c-4.1.6-6.6,2-6.6,3.9v.4h0v4.5h0v4.5h0v4.1a2.39,2.39,0,0,0,.5,1.4c1.1,1.4,4.2,2.4,8,2.6h1.5c4.2,0,7.9-1,9.3-2.5a2.57,2.57,0,0,0,.7-1.6v-4.1h0v-4.5h0v-4.5h0v-.4a2.13,2.13,0,0,0-.7-1.6C67.4,482.8,63.8,481.8,59.5,481.8Zm0,20.4a21.26,21.26,0,0,1-6-.8.35.35,0,0,1-.2-.1c-1.5-.5-2.2-1.2-2.2-1.6v-2.3l.2.1a18.34,18.34,0,0,0,8.2,1.6c1.2,0,2.4-.1,3.5-.2a15.08,15.08,0,0,0,4.2-1.1c.2-.1.3-.2.5-.2l.2-.1v2.3c0,.4-.7,1-2.2,1.6-.4.1-.8.3-1.3.4A34.67,34.67,0,0,1,59.5,502.2Zm-8.1-4.3v1.8c0,.2.5.8,2,1.3.1,0,.1,0,.2.1a20.53,20.53,0,0,0,5.9.8,24.61,24.61,0,0,0,4.9-.5,5,5,0,0,0,1.3-.4c1.5-.5,2-1.1,2-1.3v-1.8c-.1,0-.2.1-.3.1a18.69,18.69,0,0,1-4.3,1.2,20,20,0,0,1-3.5.2A17.42,17.42,0,0,1,51.4,497.9Zm8.1-.3a18.46,18.46,0,0,1-6.2-.9c-1.5-.5-2.2-1.2-2.2-1.6v-2.3l.2.1a18.34,18.34,0,0,0,8.2,1.6,22.54,22.54,0,0,0,6.1-.8,6.67,6.67,0,0,0,2.1-.9l.2-.1V495c0,.4-.7,1-2.2,1.6l-.9.3A17,17,0,0,1,59.5,497.6Zm-8.1-4.3v1.8c0,.2.5.8,2,1.3a18.25,18.25,0,0,0,6.1.9,20.64,20.64,0,0,0,5.2-.6l.9-.3c1.5-.5,2-1.1,2-1.3v-1.8a18.19,18.19,0,0,1-1.9.8,22.76,22.76,0,0,1-6.2.8A18.49,18.49,0,0,1,51.4,493.3Zm8.1-.3a18.46,18.46,0,0,1-6.2-.9c-1.5-.5-2.2-1.2-2.2-1.6v-2.3l.2.1a18.34,18.34,0,0,0,8.2,1.6,22,22,0,0,0,5.3-.6,8.15,8.15,0,0,0,2.5-.9c.1-.1.2-.1.3-.2l.2-.1v2.3c0,.4-.7,1-2.2,1.6h-.1A15.06,15.06,0,0,1,59.5,493Zm-8.1-4.3v1.8c0,.2.5.8,2,1.3a18.25,18.25,0,0,0,6.1.9,17.63,17.63,0,0,0,6-.9h.1c1.5-.5,2-1.1,2-1.3v-1.8a.1.1,0,0,0-.1.1,8.81,8.81,0,0,1-2.6.9,22.65,22.65,0,0,1-5.3.6A18.65,18.65,0,0,1,51.4,488.7Zm8.1-.3a18.46,18.46,0,0,1-6.2-.9c-1.5-.5-2.2-1.2-2.2-1.6s.7-1,2.2-1.6h0a19.06,19.06,0,0,1,3-.7,32.51,32.51,0,0,1,3.3-.2,19.83,19.83,0,0,1,3.5.3,15,15,0,0,1,2.7.7c1.5.5,2.2,1.2,2.2,1.6s-.5.8-1.4,1.2a6.88,6.88,0,0,1-.8.3,11.7,11.7,0,0,1-2,.5A20.24,20.24,0,0,1,59.5,488.4Zm-6.1-3.8c-1.5.5-2,1.1-2,1.3s.5.8,2,1.3a18.25,18.25,0,0,0,6.1.9,17.28,17.28,0,0,0,4.1-.4,11.7,11.7,0,0,0,2-.5,4.88,4.88,0,0,0,.7-.3c.9-.4,1.2-.8,1.2-1s-.5-.8-2-1.3a10.71,10.71,0,0,0-2.7-.6,18.84,18.84,0,0,0-3.4-.2c-1.1,0-2.2.1-3.2.2a11.54,11.54,0,0,0-2.8.6Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M56.4,560.1H51.3a5.42,5.42,0,0,0-5.5,5.5v.8H39.2a5.78,5.78,0,0,0-1.6-4.6,6.19,6.19,0,0,0-4.7-1.7v-6.6H45c1.6,0,3.5,0,5.3-.1a13.08,13.08,0,0,0,11.3-15.8c-1.3-5.9-5.8-9.7-12-10.1-.3,0-.3,0-.4-.3a18.89,18.89,0,0,0-20.5-12.3,18.8,18.8,0,0,0-15.6,12.4c-.1.3-.1.3-.3.3a11,11,0,0,0-1.8.2,12.55,12.55,0,0,0-8.2,5.1,13.16,13.16,0,0,0,11,20.7H29.4v6.6a5.79,5.79,0,0,0-4.7,1.6,5.57,5.57,0,0,0-1.6,4.6H16.5v-.7a5.48,5.48,0,0,0-5.5-5.5H5.9a5.48,5.48,0,0,0-5.5,5.5v5.1a5.42,5.42,0,0,0,5.5,5.5h5a5.4,5.4,0,0,0,5.4-4.5,8.08,8.08,0,0,0,.1-1.6V570H23v.8a5.6,5.6,0,0,0,5.5,5.4h5.2a5.47,5.47,0,0,0,5.4-4.5,7.57,7.57,0,0,0,.1-1.5V570h6.6v.8a5.48,5.48,0,0,0,5.5,5.5h5a5.42,5.42,0,0,0,5.5-5.5h0v-5.1A5.42,5.42,0,0,0,56.4,560.1Zm2,7.2v3.2a2.1,2.1,0,0,1-2.2,2.2h-5a2,2,0,0,1-2.1-2v-5.1a2.11,2.11,0,0,1,2.1-2.1h5.1a2,2,0,0,1,2.1,2.1Zm-29.8,5.4a2,2,0,0,1-2.1-2.2v-5a1.94,1.94,0,0,1,2.1-2.1h5a1.94,1.94,0,0,1,2.1,2.1v5.1a2,2,0,0,1-2.1,2C31.9,572.7,30.2,572.7,28.6,572.7ZM31,550H13.5a9.6,9.6,0,0,1-8.1-4.1,9.35,9.35,0,0,1-.9-9.4,9.43,9.43,0,0,1,7.7-5.6,5.74,5.74,0,0,1,1.2-.1h.2c1.3,0,1.8-.3,2.2-1.5a15.17,15.17,0,0,1,6.7-8.6,15.58,15.58,0,0,1,13.9-1.5,16.11,16.11,0,0,1,9.8,10.1c.4,1.3.8,1.6,2.2,1.6a9.73,9.73,0,0,1,10,9.5,9.19,9.19,0,0,1-2.7,6.8,9.76,9.76,0,0,1-7,3H36.2ZM9.4,572.7H6a2.1,2.1,0,0,1-2.2-2.2v-4.8a2.07,2.07,0,0,1,2.1-2.2h4.9a2,2,0,0,1,2.1,2.2v4.8a2,2,0,0,1-2.2,2.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M27.4,42.8l-3.9,3.9L.3,23.6l2.9-2.9a1.52,1.52,0,0,1,2,0Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M33.5,23.9l-3.9,3.9-9.4-9.4a1.52,1.52,0,0,1,0-2l1.9-1.9a1.52,1.52,0,0,1,2,0Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M21,23.5l-2.9,2.9a1.52,1.52,0,0,1-2,0l-1.9-1.9a1.52,1.52,0,0,1,0-2l1.9-1.9a1.52,1.52,0,0,1,2,0Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M46.3,23.9l-2.9,2.9a1.52,1.52,0,0,1-2,0L19.2,4.6,23.1.7Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M23.5,46.7l-3.9-3.9L35,27.4a1.52,1.52,0,0,1,2,0l2.9,2.9Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M22.5,32.9l-2-1.9a1.52,1.52,0,0,1,0-2l9-9,3.9,3.9-9,9A1.23,1.23,0,0,1,22.5,32.9Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M9.6,20.1,6.7,17.2,23.1.7,27,4.6,11.6,20.1A1.52,1.52,0,0,1,9.6,20.1Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="60.8 12.7 62 15.8 66.6 14.5 66.6 35.4 70.4 35.4 70.4 10.5 67.8 10.5 60.8 12.7"/><path class="cls-1" d="M86.5,10.9c-6.7,0-11.7,5.5-11.7,12.8v.1c0,7.4,4.9,12.7,11.7,12.7S98.2,31,98.2,23.7v-.1C98.2,16.3,93.3,10.9,86.5,10.9ZM78.7,23.6c0-4.5,2.7-9.3,7.7-9.3s7.8,4.8,7.8,9.3v.1c0,4.5-2.7,9.3-7.7,9.3s-7.8-4.7-7.8-9.4Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="128.4 29.3 121.5 10.6 121.5 10.6 118.7 10.6 111.7 29.3 104.3 10.7 104.3 10.6 100 10.6 110.2 35.5 110.2 35.6 113.1 35.6 120 17.4 126.9 35.5 126.9 35.6 129.8 35.6 140 10.6 135.9 10.6 128.4 29.3"/><polygon class="cls-1" points="147.1 24.6 162 24.6 162 21.2 147.1 21.2 147.1 14.1 163.7 14.1 163.7 10.6 143.3 10.6 143.3 35.4 163.8 35.4 163.8 31.9 147.1 31.9 147.1 24.6"/><path class="cls-1" d="M186.3,23.2a6,6,0,0,0,2.8-5.2v-.1a5.5,5.5,0,0,0-2-4.3,11.1,11.1,0,0,0-7.4-2.3H168V36.1h12.3c6.2,0,10.2-2.8,10.2-7.2v-.1C190.6,27.1,189.8,24.7,186.3,23.2Zm.4,5.6h0c0,2.4-2.4,3.8-6.3,3.8h-8.5V25.3h7.8C182.4,25.3,186.7,25.8,186.7,28.8Zm-1.4-10.7c0,2.8-3,3.8-5.7,3.8H172V14.8h7.8c3.4,0,5.5,1.2,5.5,3.3Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M63.3,622.2a6.9,6.9,0,0,0-3.5-5.9,10.79,10.79,0,0,0-6.5-8.2h.6a21.5,21.5,0,1,0-43-.3c-3.5,1.5-6.5,4.7-7.1,8.5a6.58,6.58,0,0,0-3.5,5.9,6.77,6.77,0,0,0,3.5,5.9,11,11,0,0,0,10.9,9.1,2.58,2.58,0,0,0,2.6-2.6v-25a2.58,2.58,0,0,0-2.6-2.6h-.3a18,18,0,0,1,36,.3H48.9a2.58,2.58,0,0,0-2.6,2.6v24.7a2.58,2.58,0,0,0,2.6,2.6,6.61,6.61,0,0,0,2.4-.3v5.9a6.38,6.38,0,0,1-5.9,6.2H39.2a5.55,5.55,0,0,0-10.9,1.5,5.79,5.79,0,0,0,5.6,5.6,5.49,5.49,0,0,0,5.3-4.1h6.1a9.6,9.6,0,0,0,9.1-9.4v-7.4a12.13,12.13,0,0,0,5.3-7.7C62.1,626.9,63.3,624.5,63.3,622.2Z" transform="translate(0 -0.7)"/><circle class="cls-1" cx="23.59" cy="70.7" r="4.24"/><path class="cls-1" d="M34.32,101.8H3.56v-8l7.1-6.53,4.32-4,1.34,1.08,1.84,1.49c.83.67,3.06,2.51,8.8,7.3L29.2,95,31.45,93,36,89.1l3-2.57,9.39-8.12.17.14,1.75,1.51,1.07.92,1,.85.91.78,4.35,3.75L61,89.28h0a25.74,25.74,0,0,1,4.58,5.28q0-1.73.07-3.47.27-15.35,0-30.3a4.72,4.72,0,0,0-1.53-3,4.66,4.66,0,0,0-2.57-1.13H4.1A4.1,4.1,0,0,0,0,60.8v41a4.1,4.1,0,0,0,4.1,4.1H34.79a15.3,15.3,0,0,1-.48-3.8C34.31,102,34.32,101.9,34.32,101.8ZM3.56,60.8H61q0,12.34,0,24.68l-3.37-2.9-4.35-3.75-4.71-4.06-.17-.14L39,82.73l-9.77,8.45h0L18.26,82.09,15,79.44,8.59,85.36,3.56,90Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M66.25,102.8H62.58a11.83,11.83,0,0,1-.63,3.11h3.87a14.93,14.93,0,0,0,.49-3.11Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M49.73,100a2.45,2.45,0,0,0-1.24,1.84,2.42,2.42,0,0,0,0,.29,2.45,2.45,0,0,0,4.63,1.12h0l.78-1.41,3.7-6.67L49.72,100Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M51.34,86.61v3.73A10.57,10.57,0,0,1,58.08,93l2.73-2.63A15.59,15.59,0,0,0,51.34,86.61Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M49.48,90.33V86.61a15.44,15.44,0,0,0-14.4,15.21c0,.1,0,.19,0,.29a15.3,15.3,0,0,0,.48,3.8h3.89a11.42,11.42,0,0,1-.66-3.82c0-.09,0-.18,0-.27A12.05,12.05,0,0,1,49.48,90.33Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M66.29,100.94a15,15,0,0,0-4-9.26l-.6.6-2,2a11.91,11.91,0,0,1,2,3.31,11.71,11.71,0,0,1,.83,3.33Z" transform="translate(0 -0.7)"/></svg>
wd/assets/img/how_it_works.png ADDED
Binary file
wd/assets/img/plugins/business_elite.png DELETED
Binary file
wd/assets/img/plugins/business_world.png DELETED
Binary file
wd/assets/img/plugins/event-calendar-wd.png DELETED
Binary file
wd/assets/img/plugins/form-maker.png DELETED
Binary file
wd/assets/img/plugins/photo-gallery.png DELETED
Binary file
wd/assets/img/plugins/portfolio_gallery.png DELETED
Binary file
wd/assets/img/plugins/sauron.png DELETED
Binary file
wd/assets/img/plugins/slider-wd.png DELETED
Binary file
wd/assets/img/plugins/spider-event-calendar.png DELETED
Binary file
wd/assets/img/plugins/wd-google-maps.png DELETED
Binary file
wd/assets/img/plugins/wd-instagram-feed.png DELETED
Binary file
wd/assets/img/slide-1366.jpg ADDED
Binary file
wd/assets/img/sub_1.png DELETED
Binary file
wd/assets/img/sub_2.png DELETED
Binary file
wd/assets/img/sub_4.png DELETED
Binary file
wd/assets/js/deactivate_popup.js CHANGED
@@ -76,7 +76,7 @@ function wdReady( prefix ) {
76
  var agree_checkbox =
77
  "<div style='margin-top: 5px;'>" +
78
  "<input type='checkbox' " + checked + " name='" + prefix + "_agree_with_pp" + "' id='" + prefix + "_agree_with_pp" + "'/>" +
79
- "By submitting this form your email and website URL will be sent to Web-Dorado. Click the checkbox if you consent to usage of mentioned data by Web-Dorado in accordance with our <a target='_blank' href='https://web-dorado.com/web-dorado-privacy-statement.html'>Privacy Policy</a>."+
80
  "</div>";
81
  jQuery( "." + prefix + "_additional_details_wrap" ).prepend( agree_checkbox );
82
 
76
  var agree_checkbox =
77
  "<div style='margin-top: 5px;'>" +
78
  "<input type='checkbox' " + checked + " name='" + prefix + "_agree_with_pp" + "' id='" + prefix + "_agree_with_pp" + "'/>" +
79
+ "By submitting this form your email and website URL will be sent to 10Web. Click the checkbox if you consent to usage of mentioned data by 10Web in accordance with our <a target='_blank' href='https://10web.io/privacy-policy/'>Privacy Policy</a>." +
80
  "</div>";
81
  jQuery( "." + prefix + "_additional_details_wrap" ).prepend( agree_checkbox );
82
 
wd/assets/js/overview.js CHANGED
@@ -1,56 +1,16 @@
1
- ////////////////////////////////////////////////////////////////////////////////////////
2
- // Events //
3
- ////////////////////////////////////////////////////////////////////////////////////////
4
- ////////////////////////////////////////////////////////////////////////////////////////
5
- // Constants //
6
- ////////////////////////////////////////////////////////////////////////////////////////
7
- ////////////////////////////////////////////////////////////////////////////////////////
8
- // Variables //
9
- ////////////////////////////////////////////////////////////////////////////////////////
10
- ////////////////////////////////////////////////////////////////////////////////////////
11
- // Constructor & Destructor //
12
- ////////////////////////////////////////////////////////////////////////////////////////
13
  jQuery(document).ready(function () {
14
- jQuery(".overview_content > div:not(#welcome)").hide();
15
- jQuery(".overview_tabs li a:not(.not_tab)").on("click", function(){
16
- jQuery(".overview_tabs li a").removeClass("overview_tab_active");
17
- jQuery(this).addClass("overview_tab_active");
18
- jQuery(".overview_content > div").hide();
19
- var id = jQuery(this).attr("href");
20
- jQuery(id).show();
21
- return false;
22
- });
23
-
24
- // rating
25
- // jQuery(".rating").each(function(){
26
- // var rate = jQuery(this).attr("data-rating");
27
- // jQuery("<span class='stars-container'>")
28
- // .addClass("stars-" + rate.toString())
29
- // .text("★★★★★")
30
- // .appendTo(jQuery(this));
31
- // jQuery("body").append('<style>.stars-' + rate.toString() + ':after{width:' + rate + '%;}</style>');
32
- // });
33
-
34
- jQuery("#wd-copy").on("click", function(){
35
- var selector = document.querySelector('#wd-site-deatils-textarea');
36
- selector.select();
37
- document.execCommand('copy');
38
-
39
- return false;
40
-
41
- });
42
-
43
  });
44
 
45
- ////////////////////////////////////////////////////////////////////////////////////////
46
- // Public Methods //
47
- ////////////////////////////////////////////////////////////////////////////////////////
48
- ////////////////////////////////////////////////////////////////////////////////////////
49
- // Getters & Setters //
50
- ////////////////////////////////////////////////////////////////////////////////////////
51
- ////////////////////////////////////////////////////////////////////////////////////////
52
- // Private Methods //
53
- ////////////////////////////////////////////////////////////////////////////////////////
54
- ////////////////////////////////////////////////////////////////////////////////////////
55
- // Listeners //
56
- ////////////////////////////////////////////////////////////////////////////////////////
1
+ jQuery(window).resize(function () {
2
+ tenWebOverviewResize();
3
+ });
 
 
 
 
 
 
 
 
 
4
  jQuery(document).ready(function () {
5
+ tenWebOverviewResize();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  });
7
 
8
+ function tenWebOverviewResize(){
9
+ if(jQuery(".tenweb_header_right").length){
10
+ if (matchMedia('only screen and (max-width: 840px)').matches) {
11
+ jQuery(".tenweb_header_right").after(jQuery(".tenweb_header_right .header_text"));
12
+ } else{
13
+ jQuery(".tenweb_header_right .button").before(jQuery(".tenweb_overview .inline-block.header_text"));
14
+ }
15
+ }
16
+ }
 
 
 
wd/assets/js/subsribe.js CHANGED
@@ -12,13 +12,14 @@
12
  ////////////////////////////////////////////////////////////////////////////////////////
13
  jQuery(document).on("ready", function () {
14
  jQuery(".permissions").on("click", function(){
15
- jQuery(".list").toggle();
 
16
  return false;
17
  });
18
 
19
  jQuery(".allow_and_continue").on("click", function(){
20
  jQuery(this).css("opacity", "0.5");
21
- jQuery(".wd_loader").css("visibility", "visible");
22
  });
23
  });
24
 
12
  ////////////////////////////////////////////////////////////////////////////////////////
13
  jQuery(document).on("ready", function () {
14
  jQuery(".permissions").on("click", function(){
15
+ jQuery(this).toggleClass("active") ;
16
+ jQuery(".list").slideToggle("fast");
17
  return false;
18
  });
19
 
20
  jQuery(".allow_and_continue").on("click", function(){
21
  jQuery(this).css("opacity", "0.5");
22
+ jQuery(".wd_loader").css("display", "inline-block");
23
  });
24
  });
25
 
wd/config.php CHANGED
@@ -3,19 +3,18 @@
3
  exit;
4
  }
5
 
6
- class DoradoWebConfig {
7
  public static $instance;
8
 
9
  public $prefix = null;
10
- public $wd_plugin_id = null;
11
- public $plugin_title = null;
 
12
  public $plugin_wordpress_slug = null;
13
  public $plugin_dir = null;
14
  public $plugin_main_file = null;
15
  public $description = null;
16
  public $plugin_features = null;
17
- public $user_guide = null;
18
- public $overview_welcome_image = null;
19
  public $video_youtube_id = null;
20
  public $plugin_wd_url = null;
21
  public $plugin_wd_demo_link = null;
@@ -36,13 +35,17 @@
36
  public $custom_post = null;
37
  public $menu_capability = null;
38
  public $menu_position = null;
39
- public $start_using_url = null;
 
40
 
41
  public function set_options( $options ){
42
 
43
  if(isset( $options["prefix"] )) {
44
  $this->prefix = $options["prefix"];
45
  }
 
 
 
46
  if(isset( $options["wd_plugin_id"] )) {
47
  $this->wd_plugin_id = $options["wd_plugin_id"];
48
  }
@@ -65,23 +68,20 @@
65
  if(isset( $options["plugin_features"] )) {
66
  $this->plugin_features = $options["plugin_features"];
67
  }
68
- if(isset( $options["user_guide"] )) {
69
- $this->user_guide = $options["user_guide"];
70
- }
71
  if(isset( $options["video_youtube_id"] )) {
72
  $this->video_youtube_id = $options["video_youtube_id"];
73
  }
74
- if(isset( $options["overview_welcome_image"] )) {
75
- $this->overview_welcome_image = $options["overview_welcome_image"];
76
- }
77
  if(isset( $options["plugin_wd_url"] )) {
78
  $this->plugin_wd_url = $options["plugin_wd_url"];
79
  }
80
  if(isset( $options["plugin_wd_demo_link"] )) {
81
  $this->plugin_wd_demo_link = $options["plugin_wd_demo_link"];
82
- }
83
- if(isset( $options["plugin_wd_addons_link"] )) {
84
- $this->plugin_wd_addons_link = $options["plugin_wd_addons_link"];
 
 
 
85
  }
86
  if(isset( $options["plugin_wizard_link"] )) {
87
  $this->plugin_wizard_link = $options["plugin_wizard_link"];
@@ -110,10 +110,12 @@
110
  if(isset( $options["menu_position"] )) {
111
  $this->menu_position = $options["menu_position"];
112
  }
113
- if(isset( $options["start_using_url"] )) {
114
- $this->start_using_url = $options["start_using_url"];
 
 
 
115
  }
116
-
117
  // directories
118
  $this->wd_dir = dirname( $this->plugin_main_file ) . '/wd';
119
  $this->wd_dir_includes = $this->wd_dir . '/includes';
3
  exit;
4
  }
5
 
6
+ class TenWebConfig {
7
  public static $instance;
8
 
9
  public $prefix = null;
10
+ public $plugin_id = null;
11
+ public $wd_plugin_id = null;
12
+ public $plugin_title = null;
13
  public $plugin_wordpress_slug = null;
14
  public $plugin_dir = null;
15
  public $plugin_main_file = null;
16
  public $description = null;
17
  public $plugin_features = null;
 
 
18
  public $video_youtube_id = null;
19
  public $plugin_wd_url = null;
20
  public $plugin_wd_demo_link = null;
35
  public $custom_post = null;
36
  public $menu_capability = null;
37
  public $menu_position = null;
38
+ public $overview_welcome_image = null;
39
+ public $display_overview = true;
40
 
41
  public function set_options( $options ){
42
 
43
  if(isset( $options["prefix"] )) {
44
  $this->prefix = $options["prefix"];
45
  }
46
+ if(isset( $options["plugin_id"] )) {
47
+ $this->plugin_id = $options["plugin_id"];
48
+ }
49
  if(isset( $options["wd_plugin_id"] )) {
50
  $this->wd_plugin_id = $options["wd_plugin_id"];
51
  }
68
  if(isset( $options["plugin_features"] )) {
69
  $this->plugin_features = $options["plugin_features"];
70
  }
 
 
 
71
  if(isset( $options["video_youtube_id"] )) {
72
  $this->video_youtube_id = $options["video_youtube_id"];
73
  }
 
 
 
74
  if(isset( $options["plugin_wd_url"] )) {
75
  $this->plugin_wd_url = $options["plugin_wd_url"];
76
  }
77
  if(isset( $options["plugin_wd_demo_link"] )) {
78
  $this->plugin_wd_demo_link = $options["plugin_wd_demo_link"];
79
+ }
80
+ if(isset( $options["plugin_wd_demo_link"] )) {
81
+ $this->plugin_wd_demo_link = $options["plugin_wd_demo_link"];
82
+ }
83
+ if(isset( $options["plugin_wd_docs_link"] )) {
84
+ $this->plugin_wd_docs_link = $options["plugin_wd_docs_link"];
85
  }
86
  if(isset( $options["plugin_wizard_link"] )) {
87
  $this->plugin_wizard_link = $options["plugin_wizard_link"];
110
  if(isset( $options["menu_position"] )) {
111
  $this->menu_position = $options["menu_position"];
112
  }
113
+ if(isset( $options["overview_welcome_image"] )) {
114
+ $this->overview_welcome_image = $options["overview_welcome_image"];
115
+ }
116
+ if(isset( $options["display_overview"] )) {
117
+ $this->display_overview = $options["display_overview"];
118
  }
 
119
  // directories
120
  $this->wd_dir = dirname( $this->plugin_main_file ) . '/wd';
121
  $this->wd_dir_includes = $this->wd_dir . '/includes';
wd/includes/api.php CHANGED
@@ -3,7 +3,7 @@
3
  exit;
4
  }
5
 
6
- class DoradoWebApi{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
@@ -31,7 +31,7 @@
31
 
32
 
33
  public function get_remote_data( $id ) {
34
- $remote_data_path = DORADO_WEB_API_PLUGIN_DATA_PATH . '/' . $this->userhash;
35
  $request = wp_remote_get( ( str_replace( '_id_', $id, $remote_data_path ) ) );
36
 
37
  if ( !is_wp_error($request) || wp_remote_retrieve_response_code($request) === 200 ) {
3
  exit;
4
  }
5
 
6
+ class TenWebApi{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
31
 
32
 
33
  public function get_remote_data( $id ) {
34
+ $remote_data_path = TEN_WEB_API_PLUGIN_DATA_PATH . '/' . $this->userhash;
35
  $request = wp_remote_get( ( str_replace( '_id_', $id, $remote_data_path ) ) );
36
 
37
  if ( !is_wp_error($request) || wp_remote_retrieve_response_code($request) === 200 ) {
wd/includes/deactivate.php CHANGED
@@ -1,174 +1,181 @@
1
  <?php
2
- if ( ! defined( 'ABSPATH' ) ) {
3
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
 
 
 
 
 
 
 
5
 
6
- class DoradoWebDeactivate{
7
- ////////////////////////////////////////////////////////////////////////////////////////
8
- // Events //
9
- ////////////////////////////////////////////////////////////////////////////////////////
10
- ////////////////////////////////////////////////////////////////////////////////////////
11
- // Constants //
12
- ////////////////////////////////////////////////////////////////////////////////////////
13
- ////////////////////////////////////////////////////////////////////////////////////////
14
- // Variables //
15
- ////////////////////////////////////////////////////////////////////////////////////////
16
- public $deactivate_reasons = array();
17
- public $config;
18
- // Reason IDs
19
- const REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS = "reason_plugin_is_hard_to_use_technical_problems";
20
- const REASON_FREE_VERSION_IS_LIMITED = "reason_free_version_limited";
21
- const REASON_PRO_EXPENSIVE = "reason_premium_expensive";
22
- const REASON_TEMPORARY_DEACTIVATION = "reason_temporary_deactivation";
23
-
24
- ////////////////////////////////////////////////////////////////////////////////////////
25
- // Constructor & Destructor //
26
- ////////////////////////////////////////////////////////////////////////////////////////
27
- public function __construct( $config = array() ) {
28
- $this->config = $config;
29
- $wd_options = $this->config;
30
-
31
- $this->deactivate_reasons = array(
32
- 1 => array(
33
- 'id' => self::REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS,
34
- 'text' => __( 'Technical problems / hard to use', $wd_options->prefix ),
35
- ),
36
- 2 => array(
37
- 'id' => self::REASON_FREE_VERSION_IS_LIMITED,
38
- 'text' => __( 'Free version is limited', $wd_options->prefix ),
39
- ),
40
- 3 => array(
41
- 'id' => self::REASON_PRO_EXPENSIVE,
42
- 'text' => __( 'Premium is expensive', $wd_options->prefix ),
43
- ),
44
- 4 => array(
45
- 'id' => self::REASON_TEMPORARY_DEACTIVATION,
46
- 'text' => __( 'Temporary deactivation', $wd_options->prefix ),
47
- ),
48
- );
49
-
50
- add_action( 'admin_footer', array( $this, 'add_deactivation_feedback_dialog_box' ) );
51
- add_action( 'admin_init', array( $this, 'submit_and_deactivate' ) );
52
-
53
-
54
- add_action( 'admin_enqueue_scripts', array( $this, 'scripts' ) );
55
-
56
-
57
-
58
 
59
- }
60
- ////////////////////////////////////////////////////////////////////////////////////////
61
- // Public Methods //
62
- ////////////////////////////////////////////////////////////////////////////////////////
63
- public function add_deactivation_feedback_dialog_box(){
64
- $deactivate_reasons = $this->deactivate_reasons;
65
- $wd_options = $this->config;
66
-
67
- ?>
68
- <script>
69
- jQuery(document).ready(function () {
70
- wdReady("<?php echo $wd_options->prefix; ?>");
71
- });
72
- </script>
73
- <?php
74
-
75
- $deactivate_url =
76
- add_query_arg(
77
- array(
78
- 'action' => 'deactivate',
79
- 'plugin' => plugin_basename( $wd_options->plugin_main_file ),
80
- '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . plugin_basename( $wd_options->plugin_main_file ) )
81
- ),
82
- admin_url( 'plugins.php' )
83
- );
84
-
85
- require ( $wd_options->wd_dir_templates . '/display_deactivation_popup.php' );
86
- }
87
-
88
-
89
-
90
- public function scripts(){
91
- $wd_options = $this->config;
92
- wp_enqueue_style( 'wd-deactivate-popup', $wd_options->wd_url_css . '/deactivate_popup.css', array(), get_option($wd_options->prefix . "_version" ) );
93
- wp_enqueue_script( 'wd-deactivate-popup', $wd_options->wd_url_js . '/deactivate_popup.js', array(), get_option($wd_options->prefix . "_version" ));
94
-
95
- $admin_data = wp_get_current_user();
96
- wp_localize_script( 'wd-deactivate-popup', $wd_options->prefix . 'WDDeactivateVars' , array(
97
- "prefix" => $wd_options->prefix ,
98
- "deactivate_class" => $wd_options->prefix . '_deactivate_link',
99
- "email" => $admin_data->data->user_email,
100
- "plugin_wd_url" => $wd_options->plugin_wd_url,
101
- ));
102
-
103
-
104
- }
105
- public function submit_and_deactivate(){
106
- $wd_options = $this->config;
107
- if( isset( $_POST[$wd_options->prefix . "_submit_and_deactivate"] ) ){
108
-
109
- if( $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 3 ){
110
- $api = new DoradoWebApi( $wd_options );
111
- $hash = $api->get_hash();
112
- if($hash != null){
113
- $data = array();
114
-
115
- $data["reason"] = isset($_POST[$wd_options->prefix . "_reasons"]) ? $_POST[$wd_options->prefix . "_reasons"] : "";
116
- $data["site_url"] = site_url();
117
- $data["plugin_id"] = $wd_options->wd_plugin_id;
118
-
119
- $data["additional_details"] = isset($_POST[$wd_options->prefix . "_additional_details"]) ? $_POST[$wd_options->prefix . "_additional_details"] : "";
120
- $admin_data = wp_get_current_user();
121
- $data["email"] = isset($_POST[$wd_options->prefix . "_email"]) ? $_POST[$wd_options->prefix . "_email"] : $admin_data->data->user_email;
122
- $user_first_name = get_user_meta( $admin_data->ID, "first_name", true );
123
- $user_last_name = get_user_meta( $admin_data->ID, "last_name", true );
124
-
125
- $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
126
- $data["hash"] = $hash;
127
- $response = wp_remote_post( "https://api.web-dorado.com/deactivatereasons", array(
128
- 'method' => 'POST',
129
- 'timeout' => 45,
130
- 'redirection' => 5,
131
- 'httpversion' => '1.0',
132
- 'blocking' => true,
133
- 'headers' => array(),
134
- 'body' => json_encode($data),
135
- 'cookies' => array()
136
- )
137
- );
138
-
139
- $response_body = (!is_wp_error($response) && isset( $response["body"] )) ? json_decode( $response["body"], true ) : null;
140
- if( is_array( $response_body ) && $response_body["body"]["msg"] == "Access" ) {
141
-
142
- }
143
- }
144
- }
145
- if($_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 1 ){
146
- $deactivate_url =
147
- add_query_arg(
148
- array(
149
- 'action' => 'deactivate',
150
- 'plugin' => plugin_basename( $wd_options->plugin_main_file ),
151
- '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . plugin_basename( $wd_options->plugin_main_file ) )
152
- ),
153
- admin_url( 'plugins.php' )
154
- );
155
- echo '<script>window.location.href="' . $deactivate_url . '";</script>';
156
- }
157
-
158
- }
159
- }
160
-
161
- ////////////////////////////////////////////////////////////////////////////////////////
162
- // Getters & Setters //
163
- ////////////////////////////////////////////////////////////////////////////////////////
164
- ////////////////////////////////////////////////////////////////////////////////////////
165
- // Private Methods //
166
- ////////////////////////////////////////////////////////////////////////////////////////
167
-
168
- ////////////////////////////////////////////////////////////////////////////////////////
169
- // Listeners //
170
- ////////////////////////////////////////////////////////////////////////////////////////
171
 
172
  }
173
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
 
1
  <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit;
4
+ }
5
+
6
+ class TenWebDeactivate
7
+ {
8
+ ////////////////////////////////////////////////////////////////////////////////////////
9
+ // Events //
10
+ ////////////////////////////////////////////////////////////////////////////////////////
11
+ ////////////////////////////////////////////////////////////////////////////////////////
12
+ // Constants //
13
+ ////////////////////////////////////////////////////////////////////////////////////////
14
+ ////////////////////////////////////////////////////////////////////////////////////////
15
+ // Variables //
16
+ ////////////////////////////////////////////////////////////////////////////////////////
17
+ public $deactivate_reasons = array();
18
+ public $config;
19
+ // Reason IDs
20
+ const REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS = "reason_plugin_is_hard_to_use_technical_problems";
21
+ const REASON_FREE_VERSION_IS_LIMITED = "reason_free_version_limited";
22
+ const REASON_PRO_EXPENSIVE = "reason_premium_expensive";
23
+ const REASON_UPGRADING_TO_PAID_VERSION = "reason_upgrading_to_paid_version";
24
+ const REASON_TEMPORARY_DEACTIVATION = "reason_temporary_deactivation";
25
+
26
+ ////////////////////////////////////////////////////////////////////////////////////////
27
+ // Constructor & Destructor //
28
+ ////////////////////////////////////////////////////////////////////////////////////////
29
+ public function __construct($config = array())
30
+ {
31
+ $this->config = $config;
32
+ $wd_options = $this->config;
33
+
34
+ $this->deactivate_reasons = array(
35
+ 1 => array(
36
+ 'id' => self::REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS,
37
+ 'text' => __('Technical problems / hard to use', $wd_options->prefix),
38
+ ),
39
+ 2 => array(
40
+ 'id' => self::REASON_FREE_VERSION_IS_LIMITED,
41
+ 'text' => __('Free version is limited', $wd_options->prefix),
42
+ ),
43
+ 3 => array(
44
+ 'id' => self::REASON_PRO_EXPENSIVE,
45
+ 'text' => __('Premium is expensive', $wd_options->prefix),
46
+ ),
47
+ 4 => array(
48
+ 'id' => self::REASON_UPGRADING_TO_PAID_VERSION,
49
+ 'text' => __('Upgrading to paid version', $wd_options->prefix),
50
+ ),
51
+ 5 => array(
52
+ 'id' => self::REASON_TEMPORARY_DEACTIVATION,
53
+ 'text' => __('Temporary deactivation', $wd_options->prefix),
54
+ ),
55
+ );
56
+
57
+ add_action('admin_footer', array($this, 'add_deactivation_feedback_dialog_box'));
58
+ add_action('admin_init', array($this, 'submit_and_deactivate'));
59
+
60
+
61
+ add_action('admin_enqueue_scripts', array($this, 'scripts'));
62
+
63
+
64
  }
65
+ ////////////////////////////////////////////////////////////////////////////////////////
66
+ // Public Methods //
67
+ ////////////////////////////////////////////////////////////////////////////////////////
68
+ public function add_deactivation_feedback_dialog_box()
69
+ {
70
+ $deactivate_reasons = $this->deactivate_reasons;
71
+ $wd_options = $this->config;
72
 
73
+ ?>
74
+ <script>
75
+ jQuery(document).ready(function () {
76
+ wdReady("<?php echo $wd_options->prefix; ?>");
77
+ });
78
+ </script>
79
+ <?php
80
+
81
+ $deactivate_url =
82
+ add_query_arg(
83
+ array(
84
+ 'action' => 'deactivate',
85
+ 'plugin' => plugin_basename($wd_options->plugin_main_file),
86
+ '_wpnonce' => wp_create_nonce('deactivate-plugin_' . plugin_basename($wd_options->plugin_main_file))
87
+ ),
88
+ admin_url('plugins.php')
89
+ );
90
+
91
+ require($wd_options->wd_dir_templates . '/display_deactivation_popup.php');
92
+ }
93
+
94
+
95
+ public function scripts()
96
+ {
97
+ $wd_options = $this->config;
98
+ wp_enqueue_style('wd-deactivate-popup', $wd_options->wd_url_css . '/deactivate_popup.css', array(), get_option($wd_options->prefix . "_version"));
99
+ wp_enqueue_script('wd-deactivate-popup', $wd_options->wd_url_js . '/deactivate_popup.js', array(), get_option($wd_options->prefix . "_version"));
100
+
101
+ $admin_data = wp_get_current_user();
102
+ wp_localize_script('wd-deactivate-popup', $wd_options->prefix . 'WDDeactivateVars', array(
103
+ "prefix" => $wd_options->prefix,
104
+ "deactivate_class" => $wd_options->prefix . '_deactivate_link',
105
+ "email" => $admin_data->data->user_email,
106
+ "plugin_wd_url" => $wd_options->plugin_wd_url,
107
+ ));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
108
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
109
 
110
  }
111
 
112
+ public function submit_and_deactivate()
113
+ {
114
+ $wd_options = $this->config;
115
+ if (isset($_POST[$wd_options->prefix . "_submit_and_deactivate"])) {
116
+
117
+ if ($_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 3) {
118
+ //$api = new TenWebApi( $wd_options );
119
+
120
+ $data = array();
121
+
122
+ $data["reason"] = isset($_POST[$wd_options->prefix . "_reasons"]) ? $_POST[$wd_options->prefix . "_reasons"] : "";
123
+ $data["site_url"] = site_url();
124
+ $data["product_id"] = $wd_options->plugin_id;
125
+
126
+ $data["additional_details"] = isset($_POST[$wd_options->prefix . "_additional_details"]) ? $_POST[$wd_options->prefix . "_additional_details"] : "";
127
+ $admin_data = wp_get_current_user();
128
+ $data["email"] = isset($_POST[$wd_options->prefix . "_email"]) ? $_POST[$wd_options->prefix . "_email"] : $admin_data->data->user_email;
129
+ $user_first_name = get_user_meta($admin_data->ID, "first_name", true);
130
+ $user_last_name = get_user_meta($admin_data->ID, "last_name", true);
131
+
132
+ $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
133
+
134
+ $response = wp_remote_post(TEN_WEB_DEACTIVATION_URL, array(
135
+ 'method' => 'POST',
136
+ 'timeout' => 45,
137
+ 'redirection' => 5,
138
+ 'httpversion' => '1.0',
139
+ 'blocking' => true,
140
+ 'headers' => array("Accept" => "application/x.10webcore.v1+json"),
141
+ 'body' => $data,
142
+ 'cookies' => array()
143
+ )
144
+ );
145
+
146
+ $response_body = (!is_wp_error($response) && isset($response["body"])) ? json_decode($response["body"], true) : null;
147
+ /*if (is_array($response_body) && $response_body["body"]["msg"] == "Access") {
148
+
149
+ }*/
150
+
151
+ }
152
+ if ($_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 1) {
153
+ $deactivate_url =
154
+ add_query_arg(
155
+ array(
156
+ 'action' => 'deactivate',
157
+ 'plugin' => plugin_basename($wd_options->plugin_main_file),
158
+ '_wpnonce' => wp_create_nonce('deactivate-plugin_' . plugin_basename($wd_options->plugin_main_file))
159
+ ),
160
+ admin_url('plugins.php')
161
+ );
162
+ echo '<script>window.location.href="' . $deactivate_url . '";</script>';
163
+ }
164
+
165
+ }
166
+ }
167
+
168
+ ////////////////////////////////////////////////////////////////////////////////////////
169
+ // Getters & Setters //
170
+ ////////////////////////////////////////////////////////////////////////////////////////
171
+ ////////////////////////////////////////////////////////////////////////////////////////
172
+ // Private Methods //
173
+ ////////////////////////////////////////////////////////////////////////////////////////
174
+
175
+ ////////////////////////////////////////////////////////////////////////////////////////
176
+ // Listeners //
177
+ ////////////////////////////////////////////////////////////////////////////////////////
178
+
179
+ }
180
+
181
 
wd/includes/notices.php CHANGED
@@ -3,7 +3,7 @@ if ( !defined( 'ABSPATH' ) ) {
3
  exit;
4
  }
5
 
6
- class DoradoWebNotices {
7
 
8
  protected $promo_link = '';
9
 
3
  exit;
4
  }
5
 
6
+ class TenWebNotices {
7
 
8
  protected $promo_link = '';
9
 
wd/includes/overview.php CHANGED
@@ -3,7 +3,7 @@
3
  exit;
4
  }
5
 
6
- class DoradoWebOverview{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
@@ -14,50 +14,19 @@
14
  // Variables //
15
  ////////////////////////////////////////////////////////////////////////////////////////
16
  public $config ;
17
- private $tabs = array();
18
 
19
  ////////////////////////////////////////////////////////////////////////////////////////
20
  // Constructor & Destructor //
21
  ////////////////////////////////////////////////////////////////////////////////////////
22
  public function __construct( $config = array() ) {
23
  $this->config = $config;
24
- $wd_options = $this->config;
25
- $this->tabs = array(
26
- 'welcome' => array(
27
- 'name' => __( "Welcome", $wd_options->prefix ),
28
- 'view' => array( $this, 'wd_overview_welcome' )
29
- ),
30
- 'user_guide' => array(
31
- 'name' => __( "User Guide", $wd_options->prefix ),
32
- 'view' => array( $this, 'wd_overview_user_guide' )
33
- ),
34
- 'deals' => array(
35
- 'name' => __( 'Deals', $wd_options->prefix ),
36
- 'view' => array( $this, 'wd_overview_deals' )
37
- ),
38
- 'support' => array(
39
- 'name' => __( "Support", $wd_options->prefix ),
40
- 'view' => array( $this, 'wd_overview_support' )
41
- ),
42
- 'https://web-dorado.com/support/submit-your-idea.html' => array(
43
- 'name' => __( "Submit Your Idea", $wd_options->prefix ),
44
- 'view' => false
45
- ),
46
- 'https://wordpress.org/support/plugin/' . $wd_options->plugin_wordpress_slug => array(
47
- 'name' => __( "Forum", $wd_options->prefix ),
48
- 'view' => false
49
- )
50
- );
51
-
52
-
53
-
54
  }
55
  ////////////////////////////////////////////////////////////////////////////////////////
56
  // Public Methods //
57
  ////////////////////////////////////////////////////////////////////////////////////////
58
  public function display_overview_page(){
59
  $wd_options = $this->config;
60
- $tabs = $this->tabs;
61
  $start_using_url = "";
62
  if(!empty($this->config->custom_post)) {
63
  if (strpos($this->config->custom_post, 'post_type', 0) !== false) {
@@ -66,209 +35,9 @@
66
  $start_using_url = menu_page_url($this->config->custom_post, false);
67
  }
68
  }
69
- if(!empty($this->config->start_using_url)){
70
- $start_using_url = $this->config->start_using_url;
71
- }
72
  require_once( $wd_options->wd_dir_templates . "/display_overview.php" );
73
  }
74
- public function wd_overview_welcome(){
75
- $wd_options = $this->config;
76
- //http://api.wordpress.org/plugins/info/1.0/wd-google-maps
77
- require_once( $wd_options->wd_dir_templates . "/display_overview_welcome.php" );
78
- }
79
- public function wd_overview_user_guide(){
80
- $wd_options = $this->config;
81
- $user_guide = $wd_options->user_guide;
82
- require_once( $wd_options->wd_dir_templates . "/display_overview_user_guide.php" );
83
- }
84
- public function wd_overview_deals(){
85
-
86
- $wd_options = $this->config;
87
- $plugins = array(
88
- "form-maker" => array(
89
- 'title' => 'Form Maker',
90
- 'text' => __( 'Wordpress form builder plugin', $wd_options->prefix ),
91
- 'content' => __( 'Form Maker is a modern and advanced tool for creating WordPress forms easily and fast.', $wd_options->prefix ),
92
- 'href' => 'https://web-dorado.com/files/fromFormMaker.php'
93
- ),
94
- "photo-gallery" => array(
95
- 'title' => 'Photo Gallery',
96
- 'text' => __( 'WordPress Photo Gallery plugin', $wd_options->prefix ),
97
- 'content' => __( 'Photo Gallery is a fully responsive WordPress Gallery plugin with advanced functionality.', $wd_options->prefix ),
98
- 'href' => 'https://web-dorado.com/products/wordpress-photo-gallery-plugin.html'
99
- ),
100
- "event-calendar-wd" => array(
101
- 'title' => 'Event Calendar WD',
102
- 'text' => __( 'WordPress calendar plugin', $wd_options->prefix ),
103
- 'content' => __( 'Organize and publish your events in an easy and elegant way using Event Calendar WD.', $wd_options->prefix ),
104
- 'href' => 'https://web-dorado.com/products/wordpress-event-calendar-wd.html'
105
- ),
106
- "wd-google-maps" => array(
107
- 'title' => 'WD Google Maps',
108
- 'text' => __( 'WD Google Maps plugin', $wd_options->prefix ),
109
- 'content' => __( 'Google Maps WD is an intuitive tool for creating Google maps with advanced markers, custom layers and overlays for your website.', $wd_options->prefix ),
110
- 'href' => 'https://web-dorado.com/products/wordpress-google-maps-plugin.html'
111
- ),
112
- "slider-wd" => array(
113
- 'title' => 'Slider WD',
114
- 'text' => __( 'WordPress slider plugin', $wd_options->prefix ),
115
- 'content' => __( 'Create responsive, highly configurable sliders with various effects for your WordPress site.', $wd_options->prefix ),
116
- 'href' => 'https://web-dorado.com/products/wordpress-slider-plugin.html'
117
- ),
118
- "spider-event-calendar" => array(
119
- 'title' => 'Spider Calendar',
120
- 'text' => __( 'WordPress event calendar plugin', $wd_options->prefix ),
121
- 'content' => __( 'Spider Event Calendar is a highly configurable product which allows you to have multiple organized events.', $wd_options->prefix ),
122
- 'href' => 'https://web-dorado.com/products/wordpress-calendar.html'
123
- ),
124
- "wd-instagram-feed" => array(
125
- 'title' => 'Instagram Feed WD',
126
- 'text' => __( 'WordPress Instagram Feed plugin', $wd_options->prefix ),
127
- 'content' => __( 'WD Instagram Feed is a user-friendly tool for displaying user or hashtag-based feeds on your website.', $wd_options->prefix ),
128
- 'href' => 'https://web-dorado.com/products/wordpress-instagram-feed-wd.html'
129
- ),
130
- );
131
- unset($plugins[$wd_options->plugin_wordpress_slug]) ;
132
-
133
- // foreach ( $plugins as $wp_slug => &$plugin ){
134
- // $wp_data = $this->
135
- //remote_get($wp_slug);
136
- // $plugin["downloaded"] = $wp_data["downloaded"];
137
- // $plugin["rating"] = $wp_data["rating"];
138
- // }
139
-
140
- $themes = array(
141
- "business_elite" => array(
142
- 'title' => 'Business Elite Theme',
143
- 'href' => 'https://web-dorado.com/wordpress-themes/business-elite.html'
144
- ),
145
- "portfolio_gallery" => array(
146
- 'title' => 'Portfolio Gallery Theme',
147
- 'href' => 'https://web-dorado.com/wordpress-themes/portfolio-gallery.html'
148
- ),
149
- "sauron" => array(
150
- 'title' => 'Sauron Theme',
151
- 'href' => 'https://web-dorado.com/wordpress-themes/sauron.html'
152
- ),
153
- "business_world" => array(
154
- 'title' => 'Business World Theme',
155
- 'href' => 'https://web-dorado.com/wordpress-themes/business-world.html'
156
- ),
157
- );
158
-
159
- require_once( $wd_options->wd_dir_templates . "/display_overview_deals.php" );
160
- }
161
- public function wd_overview_support(){
162
- $wd_options = $this->config;
163
- global $wpdb;
164
- $server_info = array();
165
-
166
- // Get PHP Version
167
- $server_info["Operating System"] = PHP_OS . " (" . ( PHP_INT_SIZE * 8 ) . ")";
168
- $server_info["PHP Version"] = PHP_VERSION;
169
- $server_info["Server"] = $_SERVER["SERVER_SOFTWARE"];
170
-
171
- // Get MYSQL Version
172
- $sql_version = $wpdb->get_var( "SELECT VERSION() AS version" );
173
- $server_info["MySQL Version"] = $sql_version;
174
-
175
- // GET SQL Mode
176
- $mysqlinfo = $wpdb->get_results( "SHOW VARIABLES LIKE 'sql_mode'" );
177
- if ( is_array( $mysqlinfo ) )
178
- $sql_mode = $mysqlinfo[0]->Value;
179
- if ( empty( $sql_mode ) )
180
- $sql_mode = __( 'Not set', $wd_options->prefix );
181
- $server_info["SQL Mode"] = $sql_mode;
182
-
183
- // Get PHP allow_url_fopen
184
- if( ini_get( 'allow_url_fopen' ) )
185
- $allow_url_fopen = __( 'On', $wd_options->prefix );
186
- else
187
- $allow_url_fopen = __( 'Off', $wd_options->prefix );
188
- $server_info["PHP Allow URL fopen"] = $allow_url_fopen;
189
-
190
- // Get PHP Max Upload Size
191
- if (function_exists('wp_max_upload_size'))
192
- $upload_max = strval(round((int) wp_max_upload_size() / (1024 * 1024))) . 'M';
193
- else if(ini_get('upload_max_filesize'))
194
- $upload_max = ini_get('upload_max_filesize');
195
- else
196
- $upload_max = __('N/A', $wd_options->prefix);
197
-
198
- $server_info["PHP Max Upload Size"] = $upload_max;
199
-
200
- // Get PHP Output buffer Size
201
- if( ini_get( 'pcre.backtrack_limit' ) )
202
- $backtrack_limit = ini_get( 'pcre.backtrack_limit' );
203
- else
204
- $backtrack_limit = __( 'N/A', $wd_options->prefix );
205
- $server_info["PCRE Backtracking Limit"] = $backtrack_limit;
206
-
207
- // Get PHP Max Post Size
208
- if( ini_get( 'post_max_size' ) )
209
- $post_max = ini_get( 'post_max_size' );
210
- else
211
- $post_max = __( 'N/A', $wd_options->prefix );
212
- $server_info["PHP Max Post Size"] = $post_max;
213
-
214
- // Get PHP Max execution time
215
- if( ini_get( 'max_execution_time' ) )
216
- $max_execute = ini_get( 'max_execution_time' );
217
- else
218
- $max_execute = __( 'N/A', $wd_options->prefix );
219
- $server_info["PHP Max Script Execute Time"] = $max_execute;
220
-
221
-
222
- // Get PHP Memory Limit
223
- if( ini_get( 'memory_limit' ) )
224
- $memory_limit = ini_get( 'memory_limit' );
225
- else
226
- $memory_limit = __( 'N/A', $wd_options->prefix );
227
- $server_info["PHP Memory Limit"] = $memory_limit;
228
-
229
- // Get actual memory_get_usage
230
- if ( function_exists( 'memory_get_usage' ) )
231
- $memory_usage = round( memory_get_usage() / 1024 / 1024, 2 ) . __( ' MByte', $wd_options->prefix );
232
- else
233
- $memory_usage = __( 'N/A', $wd_options->prefix );
234
- $server_info["Memory usage"] = $memory_usage;
235
-
236
- // required for EXIF read
237
- if ( is_callable( 'exif_read_data' ) )
238
- $exif = __( 'Yes', $wd_options->prefix ). " (V" . substr( phpversion( 'exif' ), 0, 4 ) . ")" ;
239
- else
240
- $exif = __( 'No', $wd_options->prefix );
241
- $server_info["PHP Exif support"] = $exif;
242
-
243
- // required for meta data
244
- if ( is_callable( 'iptcparse' ) )
245
- $iptc = __( 'Yes', $wd_options->prefix );
246
- else
247
- $iptc = __( 'No', $wd_options->prefix );
248
- $server_info["PHP IPTC support"] = $iptc;
249
-
250
- // required for meta data
251
- if ( is_callable( 'xml_parser_create' ) )
252
- $xml = __( 'Yes', $wd_options->prefix );
253
- else
254
- $xml = __( 'No', $wd_options->prefix );
255
- $server_info["PHP XML support"] = $xml;
256
-
257
- $gd_info = array( "GD support" => __( 'No', $wd_options->prefix ) );
258
- if( function_exists( "gd_info" ) ){
259
- $gd_info = array();
260
- foreach( gd_info() as $key => $val ){
261
- if( is_bool($val) ){
262
- $gd_info[$key] = $val ? __( 'Yes', $wd_options->prefix ) : __( 'No', $wd_options->prefix );
263
- }
264
- else{
265
- $gd_info[$key] = $val;
266
- }
267
- }
268
- }
269
-
270
- require_once( $wd_options->wd_dir_templates . "/display_overview_support.php" );
271
- }
272
 
273
  public function overview_styles() {
274
  $wd_options = $this->config;
3
  exit;
4
  }
5
 
6
+ class TenWebOverview{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
14
  // Variables //
15
  ////////////////////////////////////////////////////////////////////////////////////////
16
  public $config ;
 
17
 
18
  ////////////////////////////////////////////////////////////////////////////////////////
19
  // Constructor & Destructor //
20
  ////////////////////////////////////////////////////////////////////////////////////////
21
  public function __construct( $config = array() ) {
22
  $this->config = $config;
23
+ $wd_options = $this->config;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  }
25
  ////////////////////////////////////////////////////////////////////////////////////////
26
  // Public Methods //
27
  ////////////////////////////////////////////////////////////////////////////////////////
28
  public function display_overview_page(){
29
  $wd_options = $this->config;
 
30
  $start_using_url = "";
31
  if(!empty($this->config->custom_post)) {
32
  if (strpos($this->config->custom_post, 'post_type', 0) !== false) {
35
  $start_using_url = menu_page_url($this->config->custom_post, false);
36
  }
37
  }
 
 
 
38
  require_once( $wd_options->wd_dir_templates . "/display_overview.php" );
39
  }
40
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
 
42
  public function overview_styles() {
43
  $wd_options = $this->config;
wd/includes/subscribe.php CHANGED
@@ -1,138 +1,124 @@
1
  <?php
2
- if ( ! defined( 'ABSPATH' ) ) {
3
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
5
- class DoradoWebSubscribe {
6
- // //////////////////////////////////////////////////////////////////////////////////////
7
- // Events //
8
- // //////////////////////////////////////////////////////////////////////////////////////
9
- // //////////////////////////////////////////////////////////////////////////////////////
10
- // Constants //
11
- // //////////////////////////////////////////////////////////////////////////////////////
12
- // //////////////////////////////////////////////////////////////////////////////////////
13
- // Variables //
14
- // //////////////////////////////////////////////////////////////////////////////////////
15
- public $config;
16
- // //////////////////////////////////////////////////////////////////////////////////////
17
- // Constructor & Destructor //
18
- // //////////////////////////////////////////////////////////////////////////////////////
19
- public function __construct( $config = array() ){
20
- $this->config = $config;
21
- add_action( 'admin_init', array( $this, 'after_subscribe' ) );
22
- }
23
- // //////////////////////////////////////////////////////////////////////////////////////
24
- // Public Methods //
25
- // //////////////////////////////////////////////////////////////////////////////////////
26
-
27
- public function subscribe_scripts() {
28
- $wd_options = $this->config;
29
- wp_register_script ( 'subscribe_js', $wd_options->wd_url_js . '/subsribe.js' );
30
- wp_enqueue_script ( 'subscribe_js' );
31
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  }
33
- public function subscribe_styles() {
34
- $wd_options = $this->config;
35
- wp_enqueue_style( $wd_options->prefix . 'subscribe', $wd_options->wd_url_css . '/subscribe.css' );
36
-
37
- }
38
-
39
- public function subscribe_display_page() {
40
- $wd_options = $this->config;
41
- $list = array(
42
- 0 => array(
43
- "title" => __( "Your name &", $wd_options->prefix ),
44
- "small_text" => __( "Email address", $wd_options->prefix ),
45
- "img" => $wd_options->wd_url_img . '/sub_1.png',
46
- ),
47
- 1 => array(
48
- "title" => __( "Site URL", $wd_options->prefix ),
49
- "small_text" => __( "Wordpress version", $wd_options->prefix ),
50
- "img" => $wd_options->wd_url_img . '/sub_2.png',
51
- ),
52
- 2 => array(
53
- "title" => __( "List of plugins", $wd_options->prefix ),
54
- "small_text" => "",
55
- "img" => $wd_options->wd_url_img . '/sub_4.png',
56
- ),
57
- );
58
-
59
- require_once ( $wd_options->wd_dir_templates . "/display_subscribe.php" );
60
- }
61
- public function after_subscribe(){
62
- $wd_options = $this->config;
63
- if( isset( $_GET[ $wd_options->prefix . "_sub_action"] ) ){
64
-
65
- if( $_GET[$wd_options->prefix . "_sub_action"] == "allow" ){
66
- $api = new DoradoWebApi($wd_options);
67
- $hash = $api->get_hash();
68
-
69
- if( $hash != null ){
70
- $all_plugins = array();
71
- $plugins = get_plugins();
72
- foreach ( $plugins as $slug => $data ) {
73
- $plugin = array(
74
- "Name" => $data["Name"],
75
- "PluginURI" => $data["PluginURI"],
76
- "Author" => $data["Author"],
77
- "AuthorURI" => $data["AuthorURI"]
78
- );
79
- $all_plugins[$slug] = $plugin;
80
- }
81
-
82
- $data = array();
83
- $data["site_url"] = site_url();
84
-
85
- $admin_data = wp_get_current_user();
86
-
87
- $user_first_name = get_user_meta( $admin_data->ID, "first_name", true );
88
- $user_last_name = get_user_meta( $admin_data->ID, "last_name", true );
89
-
90
- $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
91
-
92
- $data["email"] = $admin_data->data->user_email;
93
- $data["wp_version"] = get_bloginfo( 'version' );
94
- $data["plugin_id"] = $wd_options->wd_plugin_id;
95
- $data["hash"] = $hash;
96
- $data["all_plugins"] = $all_plugins;
97
-
98
-
99
- $response = wp_remote_post( "https://api.web-dorado.com/collectuserdata", array(
100
- 'method' => 'POST',
101
- 'timeout' => 45,
102
- 'redirection' => 5,
103
- 'httpversion' => '1.0',
104
- 'blocking' => true,
105
- 'headers' => array(),
106
- 'body' => json_encode($data),
107
- 'cookies' => array()
108
- )
109
- );
110
-
111
- $response_body = (!is_wp_error($response) && isset( $response["body"] )) ? json_decode( $response["body"], true ) : null;
112
-
113
- if( is_array( $response_body ) && $response_body["body"]["msg"] == "Access" ) {
114
-
115
- }
116
- }
117
- }
118
- if ( get_option( $wd_options->prefix . "_subscribe_done" ) != 1 ) {
119
- update_option( $wd_options->prefix . "_subscribe_done", 1 );
120
- }
121
- else {
122
- add_option( $wd_options->prefix . "_subscribe_done" , "1", '', 'no');
123
- }
124
-
125
- wp_safe_redirect( $wd_options->after_subscribe );
126
- }
127
-
128
- }
129
- // //////////////////////////////////////////////////////////////////////////////////////
130
- // Getters & Setters //
131
- // //////////////////////////////////////////////////////////////////////////////////////
132
- // //////////////////////////////////////////////////////////////////////////////////////
133
- // Private Methods //
134
- // //////////////////////////////////////////////////////////////////////////////////////
135
- // //////////////////////////////////////////////////////////////////////////////////////
136
- // Listeners //
137
- // //////////////////////////////////////////////////////////////////////////////////////
138
  }
 
 
 
 
 
 
 
 
 
 
1
  <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit;
4
+ }
5
+
6
+ class TenWebSubscribe
7
+ {
8
+ // //////////////////////////////////////////////////////////////////////////////////////
9
+ // Events //
10
+ // //////////////////////////////////////////////////////////////////////////////////////
11
+ // //////////////////////////////////////////////////////////////////////////////////////
12
+ // Constants //
13
+ // //////////////////////////////////////////////////////////////////////////////////////
14
+ // //////////////////////////////////////////////////////////////////////////////////////
15
+ // Variables //
16
+ // //////////////////////////////////////////////////////////////////////////////////////
17
+ public $config;
18
+ // //////////////////////////////////////////////////////////////////////////////////////
19
+ // Constructor & Destructor //
20
+ // //////////////////////////////////////////////////////////////////////////////////////
21
+ public function __construct($config = array())
22
+ {
23
+ $this->config = $config;
24
+ add_action('admin_init', array($this, 'after_subscribe'));
25
+ }
26
+ // //////////////////////////////////////////////////////////////////////////////////////
27
+ // Public Methods //
28
+ // //////////////////////////////////////////////////////////////////////////////////////
29
+
30
+ public function subscribe_scripts()
31
+ {
32
+ $wd_options = $this->config;
33
+ wp_register_script('subscribe_js', $wd_options->wd_url_js . '/subsribe.js');
34
+ wp_enqueue_script('subscribe_js');
35
+
36
+ }
37
+
38
+ public function subscribe_styles()
39
+ {
40
+ $wd_options = $this->config;
41
+ wp_enqueue_style($wd_options->prefix . 'subscribe', $wd_options->wd_url_css . '/subscribe.css');
42
+
43
+ }
44
+
45
+ public function subscribe_display_page()
46
+ {
47
+ $wd_options = $this->config;
48
+ require_once($wd_options->wd_dir_templates . "/display_subscribe.php");
49
  }
50
+
51
+ public function after_subscribe()
52
+ {
53
+ $wd_options = $this->config;
54
+ if (isset($_GET[$wd_options->prefix . "_sub_action"])) {
55
+
56
+ if ($_GET[$wd_options->prefix . "_sub_action"] == "allow") {
57
+ //$api = new TenWebApi($wd_options);
58
+ $all_plugins = array();
59
+ $plugins = get_plugins();
60
+ foreach ($plugins as $slug => $data) {
61
+ $plugin = array(
62
+ "Name" => $data["Name"],
63
+ "PluginURI" => $data["PluginURI"],
64
+ "Author" => $data["Author"],
65
+ "AuthorURI" => $data["AuthorURI"]
66
+ );
67
+ $all_plugins[$slug] = $plugin;
68
+ }
69
+
70
+ $data = array();
71
+ $data["wp_site_url"] = site_url();
72
+
73
+ $admin_data = wp_get_current_user();
74
+
75
+ $user_first_name = get_user_meta($admin_data->ID, "first_name", true);
76
+ $user_last_name = get_user_meta($admin_data->ID, "last_name", true);
77
+
78
+ $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
79
+
80
+ $data["email"] = $admin_data->data->user_email;
81
+ $data["wp_version"] = get_bloginfo('version');
82
+ $data["product_id"] = $wd_options->plugin_id;
83
+ $data["all_plugins"] = json_encode($all_plugins);
84
+
85
+
86
+ $response = wp_remote_post(TEN_WEB_SUBSCRIBE_URL, array(
87
+ 'method' => 'POST',
88
+ 'timeout' => 45,
89
+ 'redirection' => 5,
90
+ 'httpversion' => '1.0',
91
+ 'blocking' => true,
92
+ 'headers' => array("Accept" => "application/x.10webcore.v1+json"),
93
+ 'body' => $data,
94
+ 'cookies' => array()
95
+ )
96
+ );
97
+
98
+ $response_body = (!is_wp_error($response) && isset($response["body"])) ? json_decode($response["body"], true) : null;
99
+
100
+ if (is_array($response_body) && $response_body["body"]["msg"] == "ok") {
101
+
102
+ }
103
+
104
+ }
105
+ if (get_option($wd_options->prefix . "_subscribe_done") != 1) {
106
+ update_option($wd_options->prefix . "_subscribe_done", 1);
107
+ } else {
108
+ add_option($wd_options->prefix . "_subscribe_done", "1", '', 'no');
109
+ }
110
+
111
+ wp_safe_redirect($wd_options->after_subscribe);
112
  }
113
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  }
115
+ // //////////////////////////////////////////////////////////////////////////////////////
116
+ // Getters & Setters //
117
+ // //////////////////////////////////////////////////////////////////////////////////////
118
+ // //////////////////////////////////////////////////////////////////////////////////////
119
+ // Private Methods //
120
+ // //////////////////////////////////////////////////////////////////////////////////////
121
+ // //////////////////////////////////////////////////////////////////////////////////////
122
+ // Listeners //
123
+ // //////////////////////////////////////////////////////////////////////////////////////
124
+ }
wd/start.php CHANGED
@@ -2,7 +2,10 @@
2
  if ( ! defined( 'ABSPATH' ) ) {
3
  exit;
4
  }
5
- define( 'DORADO_WEB_API_PLUGIN_DATA_PATH', 'https://api.web-dorado.com/v2/_id_/plugindata' );
 
 
 
6
  require_once dirname( __FILE__ ) . '/config.php';
7
 
8
  /**
@@ -14,7 +17,6 @@
14
  * plugin_main_file;
15
  * description;
16
  * plugin_features;
17
- * user_guide;
18
  * video_youtube_id;
19
  * plugin_wd_url;
20
  * plugin_wd_demo_link;
@@ -26,12 +28,12 @@
26
  * custom_post;
27
  */
28
 
29
- function dorado_web_init( $options ) {
30
 
31
  // load files
32
  require_once dirname( __FILE__ ) . '/wd.php';
33
 
34
- $wd = new DoradoWeb();
35
  $wd->wd_init( $options );
36
 
37
  }
2
  if ( ! defined( 'ABSPATH' ) ) {
3
  exit;
4
  }
5
+ define( 'TEN_WEB_API_PLUGIN_DATA_PATH', 'https://api.web-dorado.com/v2/_id_/plugindata' );
6
+ define( 'TEN_WEB_SUBSCRIBE_URL', 'https://core.10web.io/api/wp-subscribe' );
7
+ define( 'TEN_WEB_DEACTIVATION_URL', 'https://core.10web.io/api/deactivation_reasons' );
8
+
9
  require_once dirname( __FILE__ ) . '/config.php';
10
 
11
  /**
17
  * plugin_main_file;
18
  * description;
19
  * plugin_features;
 
20
  * video_youtube_id;
21
  * plugin_wd_url;
22
  * plugin_wd_demo_link;
28
  * custom_post;
29
  */
30
 
31
+ function ten_web_init( $options ) {
32
 
33
  // load files
34
  require_once dirname( __FILE__ ) . '/wd.php';
35
 
36
+ $wd = new TenWeb();
37
  $wd->wd_init( $options );
38
 
39
  }
wd/templates/display_overview.php CHANGED
@@ -1,43 +1,124 @@
1
- <div class="overview_welcome">
2
- <div class="wd-cell wd-valign-middle">
3
- <a href="<?php echo $wd_options->plugin_wd_url; ?>" target="_blank"><img
4
- src="<?php echo $wd_options->wd_url_img . '/' . $wd_options->prefix . '_main_plugin.png'; ?>"></a>
5
- </div>
6
- <div class="wd-cell wd-valign-middle">
7
-
8
- <h2><?php echo sprintf(__("Welcome to %s", $wd_options->prefix), $wd_options->plugin_title); ?> <?php if (!empty($start_using_url)) { ?>
9
- <div class="wd-start-using-button">
10
- <a href="<?php echo $start_using_url; ?>" class="button button-primary button-large">Start using</a>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  </div>
12
- <?php } ?></h2>
13
-
14
- <div class="overview_welcome_text">
15
-
16
- <div><?php echo sprintf(__("CONGRATS! You've successfully installed %s WordPress plugin.", $wd_options->prefix), $wd_options->plugin_title); ?></div>
17
- <div><?php echo $wd_options->description; ?></div>
18
  </div>
19
- </div>
20
- </div>
21
- <div class="overview_wrap">
22
- <ul class="overview_tabs">
23
- <?php
24
- foreach ($tabs as $tab_key => $tab) {
25
- $href = $tab['view'] !== false ? "#" . $tab_key : $tab_key;
26
- $target = $tab['view'] == false ? 'target="_blank" class="not_tab"' : '';
27
- $overview_tab_active_class = $tab_key == 'welcome' ? 'class="overview_tab_active"' : ''
28
- ?>
29
- <li class=""><a
30
- href="<?php echo $href; ?>" <?php echo $overview_tab_active_class; ?> <?php echo $target; ?>><?php echo esc_html($tab['name']); ?></a>
31
- </li>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  <?php } ?>
33
- </ul>
34
- <div class="overview_content">
35
- <?php
36
- foreach ($tabs as $tab_key => $tab) {
37
- if ($tab['view'] !== false) {
38
- echo call_user_func($tab['view']);
39
- }
40
- }
41
- ?>
42
- </div>
43
  </div>
1
+ <div class="tenweb_overview">
2
+ <div class="tenweb_header">
3
+ <div class="container tenweb_clear container_top">
4
+ <div class="tenweb_logo">
5
+ <a href="https://10web.io/" target="_blank">
6
+ <div></div>
7
+ </a>
8
+ </div>
9
+ <div class="tenweb_header_right tenweb_clear">
10
+ <div class="inline-block header_text"><?php echo sprintf(__("Get Premium %s and Other Solutions Essential for Your WordPress Site.", $wd_options->prefix), $wd_options->plugin_title); ?>
11
+ </div>
12
+ <a href="https://my.10web.io/checkout/" target="_blank"
13
+ class="button"><?php _e("Try Free", $wd_options->prefix); ?></a>
14
+ </div>
15
+ </div>
16
+ <div class="tenweb_header_divider">
17
+ </div>
18
+ <div class="container container_bottom">
19
+ <div class="plugin_info">
20
+ <img src="<?php echo $wd_options->overview_welcome_image; ?>" class="plugin_logo">
21
+ <h2><?php _e("Premium ", $wd_options->prefix); ?><?php echo $wd_options->plugin_title; ?></h2>
22
+ <div class="and"> & </div>
23
+ </div>
24
+ <div class="plan_features tenweb_clear">
25
+ <div class="plan_feature pro_plugins">
26
+ <div class="logo"></div>
27
+ <h3><?php _e("60+ pro plugins/Add-ons", $wd_options->prefix); ?></h3>
28
+ <p><?php _e("Access 60+ plugins and add-ons, including key plugins, such as gallery, form, slider, social plugins and more.", $wd_options->prefix); ?></p>
29
+ </div>
30
+ <div class="plan_feature dashboard">
31
+ <div class="logo"></div>
32
+ <h3><?php _e("Unified dashboard", $wd_options->prefix); ?></h3>
33
+ <p><?php _e("Manage your WordPress websites all in one place within a single dashboard. No need to switch between sites.", $wd_options->prefix); ?></p>
34
+ </div>
35
+ <div class="plan_feature pro_themes">
36
+ <div class="logo"></div>
37
+ <h3><?php _e("Premium WordPress themes", $wd_options->prefix); ?></h3>
38
+ <p><?php _e("Professionally designed, responsive themes for your website. Build fully-functional, elegant websites effortlessly.", $wd_options->prefix); ?></p>
39
+ </div>
40
+ <?php if ($wd_options->plugin_wordpress_slug != "backup-wd") { ?>
41
+ <div class="plan_feature backup">
42
+ <div class="logo"></div>
43
+ <h3><?php _e("Backup", $wd_options->prefix); ?></h3>
44
+ <p><?php _e("10Web cloud storage space. Easily and securely backup your website in our storage.", $wd_options->prefix); ?></p>
45
+ </div>
46
+ <?php } ?>
47
+ <?php if ($wd_options->plugin_wordpress_slug != "seo-by-10web") { ?>
48
+ <div class="plan_feature seo">
49
+ <div class="logo"></div>
50
+ <h3><?php _e("SEO", $wd_options->prefix); ?></h3>
51
+ <p><?php _e("Improve search rankings of your WordPress site with a comprehensive search engine optimization solution.", $wd_options->prefix); ?></p>
52
+ </div>
53
+ <?php } ?>
54
+ <div class="plan_feature security">
55
+ <div class="logo"></div>
56
+ <h3><?php _e("Security", $wd_options->prefix); ?></h3>
57
+ <p><?php _e("Protect your WordPress site from security issues and threats with a powerful security service coming soon to 10Web.", $wd_options->prefix); ?></p>
58
+ </div>
59
+ <?php if ($wd_options->plugin_wordpress_slug != "image-optimizer-wd") { ?>
60
+ <div class="plan_feature image_optimizer">
61
+ <div class="logo"></div>
62
+ <h3><?php _e("Image optimization", $wd_options->prefix); ?></h3>
63
+ <p><?php _e("Automatically resize and compress all images on your website to save space and improve site speed.", $wd_options->prefix); ?></p>
64
+ </div>
65
+ <?php } ?>
66
+ <div class="plan_feature hosting">
67
+ <div class="logo"></div>
68
+ <h3><?php _e("Hosting", $wd_options->prefix); ?></h3>
69
+ <p><?php _e("We’ll soon be offering affordable hosting solution with WordPress-friendly features and great customer support.", $wd_options->prefix); ?></p>
70
+ </div>
71
+ </div>
72
+ <a href="https://my.10web.io/checkout/" target="_blank"
73
+ class="button"><?php _e("Get free for 14 days", $wd_options->prefix); ?></a>
74
+ <div><a href="https://10web.io/" target="_blank"
75
+ class="more white"><?php _e("Learn More", $wd_options->prefix); ?></a></div>
76
  </div>
 
 
 
 
 
 
77
  </div>
78
+ <?php if (count($wd_options->plugin_features)) { ?>
79
+ <div class="tenweb_plugin_features">
80
+ <div class="container">
81
+ <h2><?php _e("Premium ", $wd_options->prefix); ?><?php echo $wd_options->plugin_title; ?><?php _e(" features you get!", $wd_options->prefix); ?></h2>
82
+ <div class="plugin_features tenweb_clear">
83
+ <?php foreach ($wd_options->plugin_features as $features) { ?>
84
+ <div class="plugin_feature">
85
+ <div class="plugin_feature_logo">
86
+ <img src="<?php echo $features['logo']; ?>">
87
+ </div>
88
+ <h3><?php echo $features['title']; ?></h3>
89
+ <p><?php echo $features['description']; ?></p>
90
+ </div>
91
+ <?php } ?>
92
+ </div>
93
+ <div class="and circle"> & </div>
94
+ <h3 class="more_features"><?php _e("More great features of the plugin", $wd_options->prefix); ?></h3>
95
+ <a href="<?php echo $wd_options->plugin_wd_url; ?>" target="_blank"
96
+ class="more blue"><?php _e("Learn More", $wd_options->prefix); ?></a>
97
+ </div>
98
+ </div>
99
+ <?php }
100
+ if(trim($wd_options->plugin_wd_demo_link) != "" || trim($wd_options->plugin_wd_docs_link) != ""){ ?>
101
+ <div class="tenweb_how_it_works">
102
+ <div class="container">
103
+ <h2><?php _e("Checkout how it works", $wd_options->prefix); ?></h2>
104
+ <?php
105
+ if(trim($wd_options->plugin_wd_demo_link) != ""){ ?>
106
+ <a href="<?php echo $wd_options->plugin_wd_demo_link; ?>" target="_blank"
107
+ class="button transparent"><?php _e("Demo", $wd_options->prefix); ?></a>
108
+ <?php }
109
+ if(trim($wd_options->plugin_wd_docs_link) != ""){ ?>
110
+ <a href="<?php echo $wd_options->plugin_wd_docs_link; ?>" target="_blank"
111
+ class="button transparent"><?php _e("User Guide", $wd_options->prefix); ?></a>
112
+ <?php } ?>
113
+ </div>
114
+ </div>
115
  <?php } ?>
116
+ <div class="tenweb_footer <?php echo trim($wd_options->plugin_wd_demo_link) == "" ? "without_demo" : ""; ?>">
117
+ <div class="container">
118
+ <h2><?php echo $wd_options->description; ?></h2>
119
+ <p><?php echo sprintf(__("Get Premium %s and Other Solutions Essential for Your WordPress Site.", $wd_options->prefix), $wd_options->plugin_title); ?></p>
120
+ <a href="https://my.10web.io/checkout/" target="_blank"
121
+ class="button"><?php _e("Get free for 14 days", $wd_options->prefix); ?></a>
122
+ </div>
123
+ </div>
 
 
124
  </div>
wd/templates/display_overview_deals.php DELETED
@@ -1,81 +0,0 @@
1
- <div id="deals">
2
-
3
- <div id="plugins">
4
- <div class="deals_header deals_header_plugins">
5
- <a href="https://web-dorado.com/wordpress-plugins-bundle.html" target="_blank">
6
- <div class="wd-table">
7
- <div class="wd-cell wd-text-right wd-valign-middle">
8
- <img src="<?php echo $wd_options->wd_url_img . '/' . $wd_options->prefix . '_main_plugin.png'; ?>" width="100px">
9
- </div>
10
- <div class="wd-cell wd-valign-middle">
11
- <div class="titles_wrap">
12
- <div class="deals_main_title"><?php echo sprintf( __( "Get %s", $wd_options->prefix ), $wd_options->plugin_title ); ?></div>
13
- <div class="deals_main_title"><span class="higlight">+27 </span><?php echo __( "plugins", $wd_options->prefix ); ?></div>
14
- <div class="deals_secondary_title"><?php echo __( "for", $wd_options->prefix ); ?><span class="higlight"> $99 </span><?php echo __( "only", $wd_options->prefix ); ?></div>
15
- </div>
16
- <div class="deals_save"><?php echo __( "Save 80%", $wd_options->prefix ); ?></div>
17
- </div>
18
- </div>
19
- </a>
20
- </div>
21
- <div class="deals_content">
22
- <?php foreach( $plugins as $wp_slug => &$plugin ){ ?>
23
-
24
- <div class="deal_block">
25
- <div class="deal_title">
26
- <a href="<?php echo $plugin["href"]; ?>" target="_blank" >
27
- <img src = "<?php echo $wd_options->wd_url_img . '/plugins/' . $wp_slug . '.png'; ?>">
28
- <h2><?php echo $plugin["title"]; ?></h2>
29
- </a>
30
- </div>
31
- <div class="deal_desc">
32
- <p><?php echo $plugin["content"]; ?></p>
33
- <div class="deal_desc_footer">
34
- <div class="download_btn">
35
- <a href="<?php echo $plugin["href"]; ?>" target="_blank" ><?php _e( "Download", $wd_options->prefix ); ?></a>
36
- </div>
37
- </div>
38
- </div>
39
-
40
- </div>
41
- <?php } ?>
42
- </div>
43
- <div class="get_all_deals">
44
- <a href="https://web-dorado.com/wordpress-plugins-bundle.html" target="_blank" >
45
- <?php _e( "Get all plugins", $wd_options->prefix ); ?>
46
- </a>
47
- </div>
48
- </div>
49
- <div id="themes">
50
- <div class="deals_header deals_header_themes">
51
- <a href="https://web-dorado.com/wordpress-themes-bundle.html" target="_blank">
52
- <div class="wd-table">
53
- <div class="wd-cell wd-text-right wd-valign-middle">
54
- </div>
55
- <div class="wd-cell wd-valign-middle">
56
- <div class="titles_wrap">
57
- <div class="deals_main_title"><?php echo __( "Get all 11 themes", $wd_options->prefix ); ?></div>
58
- <div class="deals_main_title"><?php echo __( "for", $wd_options->prefix ); ?><span class="higlight"> $40 </span><?php echo __( "only", $wd_options->prefix ); ?></div>
59
- </div>
60
- <div class="deals_save"><?php echo __( "Save 70%", $wd_options->prefix ); ?></div>
61
- </div>
62
- </div>
63
- </a>
64
- </div>
65
- <div class="deals_content">
66
- <?php foreach( $themes as $slug => $theme ){ ?>
67
- <div class="theme_block">
68
- <a href="<?php echo $theme["href"]; ?>" target="_blank" >
69
- <img src = "<?php echo $wd_options->wd_url_img . '/plugins/' . $slug . '.png'; ?>" width="100%;">
70
- <div><?php echo $theme["title"]; ?></div>
71
- </a>
72
- </div>
73
- <?php } ?>
74
- </div>
75
- <div class="get_all_deals">
76
- <a href="https://web-dorado.com/wordpress-themes-bundle.html" target="_blank" >
77
- <?php _e( "Find out more", $wd_options->prefix ); ?>
78
- </a>
79
- </div>
80
- </div>
81
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_overview_support.php DELETED
@@ -1,59 +0,0 @@
1
- <div id="support">
2
- <p class="wd-support-main">
3
- <?php echo sprintf( __("You may contact us by filling in this form or by email %s any time you need professional support or have any questions. You can also fill in the form to leave your comments or feedback.", $wd_options->prefix), "<span class='support_email'>(support@web-dorado.com)</span>") ;?>
4
- </p>
5
- <div class="wd-overview-site-deatils">
6
- <h2><?php _e( "Site Details", $wd_options->prefix ); ?></h2>
7
- <p>
8
- <?php _e( "When contacting support, consider copying and pasting this information in your support request.", $wd_options->prefix ); ?>
9
- <br>
10
- <?php _e( "It helps us troubleshoot more quickly.", $wd_options->prefix ); ?>
11
- </p>
12
- <?php
13
- if ( function_exists('current_user_can' ) ) {
14
- if ( current_user_can('manage_options') ) {
15
- ?>
16
- <div class="wd-site-deatils wd-table">
17
- <button id="wd-copy"><?php _e( "Copy to Clipboard", $wd_options->prefix ); ?></button>
18
- <div id="wd-site-deatils">
19
- <textarea rows="10" id="wd-site-deatils-textarea"><?php
20
- _e( "Server Settings", $wd_options->prefix );
21
- echo '&#13;&#10;&#13;&#10;';
22
- foreach( $server_info as $key => $val ){
23
- echo $key . ": " . $val . '&#13;&#10;';
24
- }
25
- echo '&#13;&#10;';
26
- _e( "Graphic Library", $wd_options->prefix );
27
- echo '&#13;&#10;&#13;&#10;';
28
- foreach( $gd_info as $key => $val ){
29
- echo $key . ": " . $val . '&#13;&#10;';
30
- }
31
- echo '&#13;&#10;';
32
- _e("Active Plugins", $wd_options->prefix);
33
- echo '&#13;&#10;';
34
- $activepl = get_option('active_plugins');
35
- $plugins = get_plugins();
36
- $activated_plugins = array();
37
- foreach ( $activepl as $p ) {
38
- if ( isset($plugins[$p]) ) {
39
- array_push($activated_plugins, $plugins[$p]);
40
- echo '&#13;&#10;' . $plugins[$p]['Name'];
41
- }
42
- }
43
- echo '&#13;&#10;&#13;&#10;';
44
- _e("Active theme", $wd_options->prefix);
45
- echo '&#13;&#10;&#13;&#10;';
46
- echo wp_get_theme();
47
- ?></textarea>
48
- </div>
49
- </div>
50
- <?php
51
- }
52
- }
53
- ?>
54
-
55
- </div>
56
- <div class="contact_us_wrap">
57
- <a href="https://web-dorado.com/support/contact-us.html" target="_blank" class="contact_us"><?php _e("Contact us", $wd_options->prefix); ?></a>
58
- </div>
59
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_overview_user_guide.php DELETED
@@ -1,46 +0,0 @@
1
- <div id="user_guide">
2
- <div class="wd-table">
3
- <div class="wd-cell">
4
- <?php for( $i = 0; $i < ceil( count($user_guide) / 2 ); $i++) { ?>
5
- <div class="user_guide_item">
6
- <a href="<?php echo $user_guide[$i]["url"]; ?>" class="user_guide_title" target="_blank"><?php echo $user_guide[$i]["main_title"]; ?></a>
7
- <?php foreach( $user_guide[$i]["titles"] as $title ) { ?>
8
- <div><a href="<?php echo $title["url"]; ?>" target="_blank" class="user_guide_titles"><?php echo $title["title"]; ?></a></div>
9
- <?php } ?>
10
- </div>
11
- <?php } ?>
12
- </div>
13
- <div class="wd-cell">
14
- <?php for( $i = $i; $i < count($user_guide); $i++) { ?>
15
- <div class="user_guide_item">
16
- <a href="<?php echo $user_guide[$i]["url"]; ?>" class="user_guide_title" target="_blank"><?php echo $user_guide[$i]["main_title"]; ?></a>
17
- <?php foreach( $user_guide[$i]["titles"] as $title ) { ?>
18
- <div><a href="<?php echo $title["url"]; ?>" target="_blank" class="user_guide_titles"><?php echo $title["title"]; ?></a></div>
19
- <?php } ?>
20
- </div>
21
- <?php } ?>
22
- </div>
23
- <div class="wd-cell">
24
- <?php if($wd_options->plugin_wd_demo_link) { ?>
25
- <a href="<?php echo $wd_options->plugin_wd_demo_link; ?>" class="user_guide_demo" target="_blank">
26
- <?php _e( "Demo", $wd_options->prefix ); ?>
27
- </a>
28
- <?php } ?>
29
- <a href="<?php echo $wd_options->plugin_wd_url; ?>" class="user_guide_plugin" target="_blank">
30
- <?php echo $wd_options->plugin_title; ?>
31
- </a>
32
- <a href="https://wordpress.org/support/plugin/<?php echo $wd_options->plugin_wordpress_slug; ?>" class="user_guide_support_forum" target="_blank">
33
- <?php _e( "Support Forum", $wd_options->prefix ); ?>
34
- </a>
35
- <a href="https://web-dorado.com/support/faq.html" class="user_guide_faq" target="_blank">
36
- <?php _e( "FAQ", $wd_options->prefix ); ?>
37
- </a>
38
- <?php if($wd_options->plugin_wd_addons_link) { ?>
39
- <a href="<?php echo $wd_options->plugin_wd_addons_link; ?>" class="user_guide_addons" target="_blank">
40
- <?php _e( "Addons", $wd_options->prefix ); ?>
41
- </a>
42
- <?php } ?>
43
- </div>
44
- </div>
45
- </div>
46
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_overview_welcome.php DELETED
@@ -1,31 +0,0 @@
1
- <div id="welcome">
2
- <!-- display plugin video -->
3
- <?php if( $wd_options->video_youtube_id ){ ?>
4
- <div class="wd-video_container">
5
- <iframe width="100%" height="400" src="//www.youtube.com/embed/<?php echo $wd_options->video_youtube_id; ?>?rel=0" frameborder="0" allowfullscreen></iframe>
6
- </div>
7
- <?php }
8
- else if( $wd_options->overview_welcome_image ) { ?>
9
- <img src="<?php echo $wd_options->overview_welcome_image; ?>" width="100%" />
10
-
11
- <?php } ?>
12
-
13
- <!-- display plugin features -->
14
- <div class="plugin_features">
15
- <!-- if your plugin has a wizard-->
16
- <?php if( $wd_options->plugin_wizard_link ) { ?>
17
- <div class="wd-tour">
18
- <a class="wd-tour-btn" href="<?php echo $wd_options->plugin_wizard_link;?>"><?php _e( "Run Install Wizard ",$wd_options->prefix); ?></a>
19
- </div>
20
- <?php } ?>
21
- <?php foreach( $wd_options->plugin_features as $feature ){ ?>
22
- <h2 class="plugin_feature_title"><?php echo $feature["title"]; ?></h2>
23
- <div class="plugin_feature_description"><?php echo $feature["description"]; ?></div>
24
- <?php } ?>
25
- <div class="more_features_wrap">
26
- <a href="<?php echo $wd_options->plugin_wd_url; ?>" class="more_features" target="_blank"><?php _e( "More features", $wd_options->prefix ); ?></a>
27
- </div>
28
- </div>
29
-
30
- </div>
31
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_subscribe.php CHANGED
@@ -1,47 +1,47 @@
1
- <div class="wd-subscribe">
2
- <div class="wd-subscribe-content">
3
- <div class="imgs">
4
- <img src="<?php echo $wd_options->wd_url_img . '/wp_logo.png'; ?>">
5
- <span>+</span>
6
- <img src="<?php echo $wd_options->wd_url_img . '/' . $wd_options->prefix . '_main_plugin.png'; ?>">
7
- </div>
8
  <div class="texts">
9
- <p><?php _e( "Hi there", $wd_options->prefix ); ?>,</p>
 
 
10
  <p>
11
- <?php
12
- $pp_text = "<a target='_blank' href='https://web-dorado.com/web-dorado-privacy-statement.html'>" . __("Privacy Policy", $wd_options->prefix) . "</a>";
13
- echo sprintf(__("Allow %s to collect some usage data, to be able to provide you more out of your plugin experience - awesome customer support and more. Check how we handle your personal data in our %s. You can always customize your preferences from the emails your receive from us. You can choose to skip this step, %s will still work just fine.", $wd_options->prefix), '<strong>Web-Dorado</strong>', $pp_text, $wd_options->plugin_title);
14
- ?>
15
  </p>
16
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  <div class="btns">
18
- <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&". $wd_options->prefix . "_sub_action=allow" ;?>" class="allow_and_continue"></a>
19
  <img src="<?php echo $wd_options->wd_url_img . '/loader.gif';?>" class="wd_loader">
20
- <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&" . $wd_options->prefix . "_sub_action=skip" ;?>" class="skip" ></a>
21
- </div>
22
- <a href="#" class="permissions"><?php _e( "What data is being collected?" , $wd_options->prefix ); ?></a>
23
- <div class="list">
24
- <?php foreach( $list as $list_item ) { ?>
25
- <div class="list_item">
26
- <div class="list_img_wrap"><img src="<?php echo $list_item["img"]; ?>"></div>
27
- <div class="list_text_wrap">
28
- <div class="list_title"><?php echo $list_item["title"]; ?></div>
29
- <div class="list_text"><?php echo $list_item["small_text"]; ?></div>
30
- </div>
31
- </div>
32
- <?php } ?>
33
  </div>
34
  </div>
35
- <div class="wd-subscribe-footer">
36
- <ul class="wd-footer-menu">
 
 
 
37
  <li>
38
- <a href="https://web-dorado.com/web-dorado-privacy-statement.html" target="_blank">
39
  <?php _e( "Privacy Policy", $wd_options->prefix ); ?>
40
  </a>
41
- <span>.</span>
42
  </li>
 
43
  <li>
44
- <a href="https://web-dorado.com/terms-of-service.html" target="_blank">
45
  <?php _e( "Terms of Use", $wd_options->prefix ); ?>
46
  </a>
47
  </li>
1
+ <div class="tenweb_subscribe">
2
+ <div class="tenweb_subscribe-content">
 
 
 
 
 
3
  <div class="texts">
4
+ <div class="hi_there"></div>
5
+ <h2><?php _e( "Hi there!", $wd_options->prefix ); ?></h2>
6
+ <h5><?php _e( "Allow 10web to collect some usage data", $wd_options->prefix ); ?></h5>
7
  <p>
8
+ <?php echo sprintf( __( "This will allow you to get more out of your plugin experience - get awesome customer support, receive exclusive deals and discounts on premium products and more. You can choose to skip this step, %s will stil work just fine.", $wd_options->prefix ), $wd_options->plugin_title ); ?>
 
 
 
9
  </p>
10
  </div>
11
+ <div class="permissions"><?php _e( "What data is being collected?" , $wd_options->prefix ); ?></div>
12
+ <div class="list tenweb_clear">
13
+ <div class="list_item user_info">
14
+ <div class="list_logo"></div>
15
+ <div class="list_text_wrap"> <?php _e( "Your name & Email address", $wd_options->prefix ); ?></div>
16
+ </div>
17
+ <div class="list_item wp_info">
18
+ <div class="list_logo"></div>
19
+ <div class="list_text_wrap"> <?php _e( "Site URL, Wordpress version", $wd_options->prefix ); ?></div>
20
+ </div>
21
+ <div class="list_item plugins_info">
22
+ <div class="list_logo"></div>
23
+ <div class="list_text_wrap"> <?php _e( "List of plugins", $wd_options->prefix ); ?></div>
24
+ </div>
25
+ </div>
26
  <div class="btns">
27
+ <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&". $wd_options->prefix . "_sub_action=allow" ;?>" class="allow_and_continue button"><?php _e( "Allow & Continue", $wd_options->prefix ); ?></a>
28
  <img src="<?php echo $wd_options->wd_url_img . '/loader.gif';?>" class="wd_loader">
29
+ <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&" . $wd_options->prefix . "_sub_action=skip" ;?>" class="skip more" ><?php _e( "Skip", $wd_options->prefix ); ?></a>
 
 
 
 
 
 
 
 
 
 
 
 
30
  </div>
31
  </div>
32
+ <div class="tenweb_subscribe-top-footer">
33
+ <?php _e( "We will not sell, share, or distribute your personal information to third parties.", $wd_options->prefix ); ?>
34
+ </div>
35
+ <div class="tenweb_subscribe-footer">
36
+ <ul class="tenweb_footer-menu tenweb_clear">
37
  <li>
38
+ <a href="https://10web.io/privacy-policy/" target="_blank">
39
  <?php _e( "Privacy Policy", $wd_options->prefix ); ?>
40
  </a>
 
41
  </li>
42
+ <li>| </li>
43
  <li>
44
+ <a href="https://10web.io/terms-of-services/" target="_blank">
45
  <?php _e( "Terms of Use", $wd_options->prefix ); ?>
46
  </a>
47
  </li>
wd/wd.php CHANGED
@@ -3,7 +3,7 @@
3
  exit;
4
  }
5
 
6
- class DoradoWeb {
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
@@ -17,7 +17,7 @@
17
  public $overview_instance;
18
  public $subscribe_instance;
19
  public $config;
20
- private $version = "1.0.16";
21
 
22
  ////////////////////////////////////////////////////////////////////////////////////////
23
  // Constructor & Destructor //
@@ -37,10 +37,10 @@
37
  if(!is_array($options)){
38
  return false;
39
  }
40
- $config = new DoradoWebConfig();
41
  $config->set_options( $options );
42
  $this->config = $config;
43
- if( !class_exists("DoradoWebApi") ){
44
  $this->wd_includes();
45
  }
46
 
@@ -52,7 +52,7 @@
52
  // Create overview menu page
53
  public function wd_overview_menu_page() {
54
  $wd_options = $this->config;
55
-
56
  $capability = $wd_options->menu_capability ? $wd_options->menu_capability : "manage_options";
57
  if( get_option( $wd_options->prefix . "_subscribe_done" ) == 1 || $wd_options->subscribe === false ){
58
  $parent_slug = $wd_options->custom_post;
@@ -61,21 +61,26 @@
61
 
62
  $subscribe_page = add_menu_page( $wd_options->plugin_menu_title, $wd_options->plugin_menu_title, "manage_options", $wd_options->prefix . '_subscribe' , array( $this, 'display_subscribew_page' ), $wd_options->plugin_menu_icon, $wd_options->menu_position );
63
 
64
- $subscribe_instance = new DoradoWebSubscribe($this->config);
65
  $this->subscribe_instance = $subscribe_instance;
66
  add_action( 'admin_print_styles-' . $subscribe_page, array( $subscribe_instance, 'subscribe_styles' ) );
67
  add_action( 'admin_print_scripts-' . $subscribe_page, array( $subscribe_instance, 'subscribe_scripts' ) );
68
 
69
  $parent_slug = null;
70
- }
71
-
72
- $overview_page = add_submenu_page( $parent_slug, __( 'Overview', $wd_options->prefix ), __( 'Overview', $wd_options->prefix ), $capability, 'overview_' . $wd_options->prefix, array( $this, 'display_overview_page' ));
73
-
74
-
75
- $overview_instance = new DoradoWebOverview($this->config);
76
- $this->overview_instance = $overview_instance;
77
- add_action( 'admin_print_styles-' . $overview_page, array( $overview_instance, 'overview_styles' ) );
78
- add_action( 'admin_print_scripts-' . $overview_page, array( $overview_instance, 'overview_scripts' ) );
 
 
 
 
 
79
  }
80
 
81
  public function display_subscribew_page(){
@@ -106,11 +111,11 @@
106
  $current_url = $_SERVER['REQUEST_URI'];
107
  if( $wd_options->deactivate === true ){
108
  if(strpos( $current_url, "plugins.php" ) !== false ){
109
- new DoradoWebDeactivate( $this->config );
110
  }
111
  }
112
 
113
- new DoradoWebNotices( $this->config );
114
 
115
  }
116
 
3
  exit;
4
  }
5
 
6
+ class TenWeb {
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
17
  public $overview_instance;
18
  public $subscribe_instance;
19
  public $config;
20
+ private $version = "1.0.13";
21
 
22
  ////////////////////////////////////////////////////////////////////////////////////////
23
  // Constructor & Destructor //
37
  if(!is_array($options)){
38
  return false;
39
  }
40
+ $config = new TenWebConfig();
41
  $config->set_options( $options );
42
  $this->config = $config;
43
+ if( !class_exists("TenWebApi") ){
44
  $this->wd_includes();
45
  }
46
 
52
  // Create overview menu page
53
  public function wd_overview_menu_page() {
54
  $wd_options = $this->config;
55
+
56
  $capability = $wd_options->menu_capability ? $wd_options->menu_capability : "manage_options";
57
  if( get_option( $wd_options->prefix . "_subscribe_done" ) == 1 || $wd_options->subscribe === false ){
58
  $parent_slug = $wd_options->custom_post;
61
 
62
  $subscribe_page = add_menu_page( $wd_options->plugin_menu_title, $wd_options->plugin_menu_title, "manage_options", $wd_options->prefix . '_subscribe' , array( $this, 'display_subscribew_page' ), $wd_options->plugin_menu_icon, $wd_options->menu_position );
63
 
64
+ $subscribe_instance = new TenWebSubscribe($this->config);
65
  $this->subscribe_instance = $subscribe_instance;
66
  add_action( 'admin_print_styles-' . $subscribe_page, array( $subscribe_instance, 'subscribe_styles' ) );
67
  add_action( 'admin_print_scripts-' . $subscribe_page, array( $subscribe_instance, 'subscribe_scripts' ) );
68
 
69
  $parent_slug = null;
70
+ }
71
+ if ($wd_options->display_overview) {
72
+ $title = __( 'Premium', $wd_options->prefix );
73
+ if ( FALSE && !get_transient( $wd_options->prefix . '_overview_visited' ) ) {
74
+ $title .= ' <span class="update-plugins count-2" > <span class="plugin-count">1</span></span>';
75
+ }
76
+ $overview_page = add_submenu_page( $parent_slug, __( 'Premium', $wd_options->prefix ), '<span style="color:#4481ea;">' . $title . '</span>', $capability, 'overview_' . $wd_options->prefix, array( $this, 'display_overview_page' ) );
77
+
78
+
79
+ $overview_instance = new TenWebOverview( $this->config );
80
+ $this->overview_instance = $overview_instance;
81
+ add_action( 'admin_print_styles-' . $overview_page, array( $overview_instance, 'overview_styles' ) );
82
+ add_action( 'admin_print_scripts-' . $overview_page, array( $overview_instance, 'overview_scripts' ) );
83
+ }
84
  }
85
 
86
  public function display_subscribew_page(){
111
  $current_url = $_SERVER['REQUEST_URI'];
112
  if( $wd_options->deactivate === true ){
113
  if(strpos( $current_url, "plugins.php" ) !== false ){
114
+ new TenWebDeactivate( $this->config );
115
  }
116
  }
117
 
118
+ new TenWebNotices( $this->config );
119
 
120
  }
121