Featured Image From URL - Version 3.8.1

Version Description

  • New: FIFU Cloud; enhancement: Lazy Load (ignores top images for a better performance); enhancement: better integration with Octolook Scrapes plugin (Schedule Metadata Generation is not necessary anymore); fix: CDN + Optimized Thumbnails (conflict with SVG images); fix: WooCommerce (Product Gallery metabox not displayed when there was an external Product Image).
Download this release

Release Info

Developer marceljm
Plugin Icon 128x128 Featured Image From URL
Version 3.8.1
Comparing to
See all releases

Code changes from version 3.8.0 to 3.8.1

admin/api.php CHANGED
@@ -1,6 +1,8 @@
1
  <?php
2
 
 
3
  define('FIFU_QUERY_ADDRESS', 'https://query.featuredimagefromurl.com');
 
4
 
5
  function fifu_get_ip() {
6
  foreach (array('HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) {
@@ -67,7 +69,7 @@ function fifu_api_query($dataset) {
67
  'method' => 'POST',
68
  'data_format' => 'body',
69
  'blocking' => true,
70
- 'timeout' => 10,
71
  );
72
  $response = fifu_remote_post(FIFU_QUERY_ADDRESS, $array);
73
  if (is_wp_error($response))
@@ -82,6 +84,89 @@ function fifu_api_query($dataset) {
82
  }
83
  }
84
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  function fifu_enable_fake_api(WP_REST_Request $request) {
86
  update_option('fifu_fake_stop', false, 'no');
87
  fifu_enable_fake();
@@ -223,7 +308,7 @@ function fifu_get_and_save_sizes_api(WP_REST_Request $request) {
223
  'method' => 'POST',
224
  'data_format' => 'body',
225
  'blocking' => false,
226
- 'timeout' => 10,
227
  );
228
  $response = fifu_remote_post(esc_url_raw(rest_url()) . 'featured-image-from-url/v2/save_sizes_api/', $array);
229
  }
@@ -298,6 +383,21 @@ add_action('rest_api_init', function () {
298
  'callback' => 'fifu_rest_url',
299
  'permission_callback' => 'fifu_public_permission',
300
  ));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
301
  });
302
 
303
  function fifu_get_private_data_permissions_check() {
1
  <?php
2
 
3
+ define('FIFU_SU_ADDRESS', /* fifu_is_local() ? 'http://0.0.0.0:8080' : */ 'https://cloud.featuredimagefromurl.com');
4
  define('FIFU_QUERY_ADDRESS', 'https://query.featuredimagefromurl.com');
5
+ define('FIFU_SURVEY_ADDRESS', /* fifu_is_local() ? 'http://0.0.0.0:8080' : */ 'https://survey.featuredimagefromurl.com');
6
 
7
  function fifu_get_ip() {
8
  foreach (array('HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) {
69
  'method' => 'POST',
70
  'data_format' => 'body',
71
  'blocking' => true,
72
+ 'timeout' => 30,
73
  );
74
  $response = fifu_remote_post(FIFU_QUERY_ADDRESS, $array);
75
  if (is_wp_error($response))
84
  }
85
  }
86
 
87
+ function fifu_api_suggest_value(WP_REST_Request $request) {
88
+ $site = fifu_get_home_url();
89
+ $value = $request['value'];
90
+ $images = $request['images'];
91
+ $array = array(
92
+ 'headers' => array('Content-Type' => 'application/json; charset=utf-8'),
93
+ 'body' => json_encode(
94
+ array(
95
+ 'site' => $site,
96
+ 'value' => $value,
97
+ 'images' => $images
98
+ )
99
+ ),
100
+ 'method' => 'POST',
101
+ 'data_format' => 'body',
102
+ 'blocking' => true,
103
+ 'timeout' => 30,
104
+ );
105
+ $response = fifu_remote_post(FIFU_SURVEY_ADDRESS . '/pricing/', $array);
106
+ if (is_wp_error($response))
107
+ return array('code' => 0);
108
+
109
+ // offline
110
+ if ($response['http_response']->get_response_object()->status_code == 404)
111
+ return array('code' => 0, 'message' => 'web service is down', 'color' => '#dd4c40');
112
+
113
+ return json_decode($response['http_response']->get_response_object()->body);
114
+ }
115
+
116
+ function fifu_api_waiting_list(WP_REST_Request $request) {
117
+ $site = fifu_get_home_url();
118
+ $email = $request['email'];
119
+ $images = $request['images'];
120
+ $array = array(
121
+ 'headers' => array('Content-Type' => 'application/json; charset=utf-8'),
122
+ 'body' => json_encode(
123
+ array(
124
+ 'site' => $site,
125
+ 'email' => $email,
126
+ 'images' => $images
127
+ )
128
+ ),
129
+ 'method' => 'POST',
130
+ 'data_format' => 'body',
131
+ 'blocking' => true,
132
+ 'timeout' => 30,
133
+ );
134
+ $response = fifu_remote_post(FIFU_SURVEY_ADDRESS . '/waiting-list/', $array);
135
+ if (is_wp_error($response))
136
+ return array('code' => 0);
137
+
138
+ // offline
139
+ if ($response['http_response']->get_response_object()->status_code == 404)
140
+ return array('code' => 0, 'message' => 'web service is down', 'color' => '#dd4c40');
141
+
142
+ return json_decode($response['http_response']->get_response_object()->body);
143
+ }
144
+
145
+ function fifu_api_beta_tester(WP_REST_Request $request) {
146
+ $email = $request['email'];
147
+ $array = array(
148
+ 'headers' => array('Content-Type' => 'application/json; charset=utf-8'),
149
+ 'body' => json_encode(
150
+ array(
151
+ 'email' => $email
152
+ )
153
+ ),
154
+ 'method' => 'POST',
155
+ 'data_format' => 'body',
156
+ 'blocking' => true,
157
+ 'timeout' => 30,
158
+ );
159
+ $response = fifu_remote_post(FIFU_SU_ADDRESS . '/beta-tester/', $array);
160
+ if (is_wp_error($response))
161
+ return array('code' => 0);
162
+
163
+ // offline
164
+ if ($response['http_response']->get_response_object()->status_code == 404)
165
+ return array('code' => 0, 'message' => 'web service is down', 'color' => '#dd4c40');
166
+
167
+ return json_decode($response['http_response']->get_response_object()->body);
168
+ }
169
+
170
  function fifu_enable_fake_api(WP_REST_Request $request) {
171
  update_option('fifu_fake_stop', false, 'no');
172
  fifu_enable_fake();
308
  'method' => 'POST',
309
  'data_format' => 'body',
310
  'blocking' => false,
311
+ 'timeout' => 30,
312
  );
313
  $response = fifu_remote_post(esc_url_raw(rest_url()) . 'featured-image-from-url/v2/save_sizes_api/', $array);
314
  }
383
  'callback' => 'fifu_rest_url',
384
  'permission_callback' => 'fifu_public_permission',
385
  ));
386
+ register_rest_route('featured-image-from-url/v2', '/suggest_value/', array(
387
+ 'methods' => 'POST',
388
+ 'callback' => 'fifu_api_suggest_value',
389
+ 'permission_callback' => 'fifu_get_private_data_permissions_check',
390
+ ));
391
+ register_rest_route('featured-image-from-url/v2', '/waiting_list/', array(
392
+ 'methods' => 'POST',
393
+ 'callback' => 'fifu_api_waiting_list',
394
+ 'permission_callback' => 'fifu_get_private_data_permissions_check',
395
+ ));
396
+ register_rest_route('featured-image-from-url/v2', '/beta_tester/', array(
397
+ 'methods' => 'POST',
398
+ 'callback' => 'fifu_api_beta_tester',
399
+ 'permission_callback' => 'fifu_get_private_data_permissions_check',
400
+ ));
401
  });
402
 
403
  function fifu_get_private_data_permissions_check() {
admin/db.php CHANGED
@@ -552,6 +552,38 @@ class FifuDb {
552
  );
553
  }
554
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
555
  /* insert attachment */
556
 
557
  function insert_attachment_by($value) {
@@ -1029,6 +1061,13 @@ function fifu_db_number_of_posts() {
1029
  return $db->get_number_of_posts();
1030
  }
1031
 
 
 
 
 
 
 
 
1032
  /* get last urls */
1033
 
1034
  function fifu_db_get_last($meta_key) {
552
  );
553
  }
554
 
555
+ function count_available_images() {
556
+ $total = 0;
557
+
558
+ $featured = $this->wpdb->get_results("
559
+ SELECT COUNT(1) AS total
560
+ FROM " . $this->postmeta . "
561
+ WHERE meta_key = '_thumbnail_id'"
562
+ );
563
+
564
+ $total += (int) $featured[0]->total;
565
+
566
+ if (class_exists('WooCommerce')) {
567
+ $gallery = $this->wpdb->get_results("
568
+ SELECT SUM(LENGTH(meta_value) - LENGTH(REPLACE(meta_value, ',', '')) + 1) AS total
569
+ FROM " . $this->postmeta . "
570
+ WHERE meta_key = '_product_image_gallery'"
571
+ );
572
+
573
+ $total += (int) $gallery[0]->total;
574
+
575
+ $category = $this->wpdb->get_results("
576
+ SELECT COUNT(1) AS total
577
+ FROM " . $this->termmeta . "
578
+ WHERE meta_key = 'thumbnail_id'"
579
+ );
580
+
581
+ $total += (int) $category[0]->total;
582
+ }
583
+
584
+ return $total;
585
+ }
586
+
587
  /* insert attachment */
588
 
589
  function insert_attachment_by($value) {
1061
  return $db->get_number_of_posts();
1062
  }
1063
 
1064
+ /* speed up */
1065
+
1066
+ function fifu_db_count_available_images() {
1067
+ $db = new FifuDb();
1068
+ return $db->count_available_images();
1069
+ }
1070
+
1071
  /* get last urls */
1072
 
1073
  function fifu_db_get_last($meta_key) {
admin/html/cloud.html ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap" style="opacity:0">
2
+
3
+ <div class="header-box">
4
+ <h1 style="color:white;padding-left:20px;width:98%;font-family:Ubuntu,sans-serif">
5
+ <span class="dashicons dashicons-cloud-upload" style="font-size:30px"></span><span style="padding-left:20px">FIFU Cloud is coming soon...</span>
6
+ <a href="https://gcpsignup.page.link/1J6G" target="_blank"><img class="fifu-google-cloud" src="https://storage.googleapis.com/featuredimagefromurl/power-by-gcp2.png"/></a>
7
+ </h1>
8
+ </div>
9
+
10
+ <div id="tabs-top" style="float:left; width: 100%; max-width: 1014px !important;">
11
+ <ul>
12
+ <li><a href="#tabs-a"><i class="fas fa-info-circle"></i> <?php $fifucloud['tabs']['welcome']() ?></a></li>
13
+ </ul>
14
+ <div id="tabs-a" class="cloud-tab">
15
+ <div class="first-cloud-box">
16
+ <h2><i class="fas fa-cloud"></i> FIFU Cloud (beta)</h2>
17
+ <div class="greybox">
18
+ <?php $fifucloud['support']['whats']() ?>
19
+ <br>
20
+ <br>
21
+ <table style="background-color: #fff; border-radius: 13px;">
22
+ <tr>
23
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
24
+ <i class="fas fa-save" style="font-size:30px"></i>
25
+ </td>
26
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
27
+ <i class="fas fa-bolt" style="font-size:30px"></i>
28
+ </td>
29
+ </tr>
30
+ <tr>
31
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
32
+ <i><?php $fifucloud['support']['save']() ?></i>
33
+ </td>
34
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
35
+ <i><?php $fifucloud['support']['fast']() ?></i>
36
+ </td>
37
+ </tr>
38
+ <tr>
39
+ <td style="vertical-align: top;">
40
+ <?php $fifucloud['support']['save-desc']() ?>
41
+ </td>
42
+ <td style="vertical-align: top;">
43
+ <?php $fifucloud['support']['fast-desc']() ?>
44
+ </td>
45
+ </tr>
46
+ </table>
47
+
48
+ <br>
49
+
50
+ <table style="background-color: #fff; border-radius: 13px;">
51
+ <tr>
52
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
53
+ <i class="fas fa-microchip" style="font-size:30px"></i>
54
+ </td>
55
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
56
+ <i class="fas fa-money-bill-alt" style="font-size:30px"></i>
57
+ </td>
58
+ </tr>
59
+ <tr>
60
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
61
+ <i><?php $fifucloud['support']['process']() ?></i>
62
+ </td>
63
+ <td style="width:50%;text-align:center;border-bottom: 1px solid #ddd !important">
64
+ <i><?php $fifucloud['support']['price']() ?></i>
65
+ </td>
66
+ </tr>
67
+ <tr>
68
+ <td style="vertical-align: top;">
69
+ <?php $fifucloud['support']['process-desc']() ?>
70
+ </td>
71
+ <td style="vertical-align: top;">
72
+ <?php $fifucloud['support']['price-desc2']() ?>
73
+ </td>
74
+ </tr>
75
+ </table>
76
+ </div>
77
+ </div>
78
+
79
+ <div class="box">
80
+ <h2>
81
+ <i class="fas fa-money-bill-alt"></i> <?php $fifucloud['title']['price']() ?>
82
+ <output id="pricing_response_message" class="response_message"></output>
83
+ </h2>
84
+ <div class="greybox">
85
+ <b><div id="availableImages"><?php $fifucloud['pricing']['suggestion']['total']() ?>: </div></b>
86
+ <?php $fifucloud['pricing']['suggestion']['question']() ?> US$
87
+ <input id="cloud_suggestion_pricing" type="number" min="1" step="1" placeholder="15">/<?php _e('month') ?>
88
+ <button style="height:28px;float:right;" onclick="suggestValue()"><i class="fas fa-comment"></i> <?php $fifucloud['pricing']['suggestion']['button']() ?></button>
89
+ </div>
90
+ </div>
91
+
92
+ <div class="box">
93
+ <h2>
94
+ <i class="far fa-list-alt"></i> <?php $fifucloud['title']['waiting']() ?>
95
+ <output id="waiting_response_message" class="response_message"></output>
96
+ </h2>
97
+ <div class="greybox">
98
+ <?php $fifucloud['waiting']['desc']() ?>
99
+ <input id="cloud_waiting_list" type="email" placeholder="mail@example.com">
100
+ <button style="height:28px;float:right" onclick="waitingList()"><i class="fas fa-bell"></i> <?php $fifucloud['waiting']['button']() ?></button>
101
+ </div>
102
+ </div>
103
+
104
+ <div class="box">
105
+ <h2>
106
+ <i class="fas fa-bug"></i> <?php $fifucloud['title']['tester']() ?>
107
+ <output id="tester_response_message" class="response_message"></output>
108
+ </h2>
109
+ <div class="greybox">
110
+ <?php $fifucloud['tester']['desc']() ?>
111
+ <input id="cloud_beta_tester" type="email" placeholder="mail@example.com">
112
+ <button style="height:28px;float:right" onclick="betaTester()"><i class="fas fa-user-check"></i> <?php $fifucloud['tester']['button']() ?></button>
113
+ </div>
114
+ </div>
115
+ </div>
116
+ </div>
117
+
118
+ </div>
admin/html/css/menu-su.css ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ div.su > th, td {
2
+ border-bottom: 0px solid #ddd !important;
3
+ }
4
+
5
+ .dataTables_wrapper .dataTables_length select {
6
+ width: 60px;
7
+ }
8
+
9
+ span.ui-dialog-title {
10
+ font-weight: bold;
11
+ }
12
+
13
+ .ui-widget-overlay {
14
+ background: #1d2327 !important;
15
+ }
16
+
17
+ .first-cloud-box {
18
+ background: #ffffff85;
19
+ border: 1px solid #dbdbdb;
20
+ padding: 20px;
21
+ padding-top: 10px;
22
+ border-radius: 60px 15px 15px 15px;
23
+ }
24
+
25
+ .cloud-tab {
26
+ padding-top: 0 !important;
27
+ background: #f9f9f9 !important;
28
+ }
29
+
30
+ .response_message {
31
+ position: relative;
32
+ float: right;
33
+ top: -10px;
34
+ padding: 9px;
35
+ }
admin/html/css/menu.css CHANGED
@@ -177,21 +177,28 @@ tr.color:nth-child(even) {
177
  color: white;
178
  }
179
 
 
 
 
 
 
 
 
 
180
  .fifu-chrome {
181
- height: 24px;
182
  position: relative;
183
  float:right;
184
  right:16px;
185
- top:-3px;
186
  padding: 7px;
187
  }
188
 
189
  div.fifu-referral {
190
- height: 24px;
191
  position: relative;
192
  float:right;
193
  right:8px;
194
- top:-6px;
195
  padding: 7px;
196
  color: #f0f0f1;
197
  display: flex;
177
  color: white;
178
  }
179
 
180
+ .fifu-google-cloud {
181
+ height: 50px;
182
+ position: relative;
183
+ float:right;
184
+ right:16px;
185
+ top:-10px;
186
+ }
187
+
188
  .fifu-chrome {
189
+ height: 20px;
190
  position: relative;
191
  float:right;
192
  right:16px;
 
193
  padding: 7px;
194
  }
195
 
196
  div.fifu-referral {
197
+ height: 20px;
198
  position: relative;
199
  float:right;
200
  right:8px;
201
+ top:-2px;
202
  padding: 7px;
203
  color: #f0f0f1;
204
  display: flex;
admin/html/js/cloud.js ADDED
@@ -0,0 +1,136 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // don't lose your images again
2
+ // don't torture your website anymore
3
+ // don't make your visitors wait
4
+
5
+ // lighthouse (perfect score)
6
+ // 1. lazy load enabled
7
+ // 2. new incognito tab
8
+ // 3. DevTools > Undock into a separate window
9
+
10
+ jQuery(document).ready(function () {
11
+ jQuery('link[href*="jquery-ui.css"]').attr("disabled", "true");
12
+ jQuery('div.wrap div.header-box div.notice').hide();
13
+ jQuery('div.wrap div.header-box div#message').hide();
14
+ jQuery('div.wrap div.header-box div.updated').remove();
15
+
16
+ jQuery("#availableImages").append(fifuScriptCloudVars.availableImages);
17
+ });
18
+
19
+ jQuery(function () {
20
+ jQuery("#tabs-top").tabs();
21
+
22
+ window.scrollTo(0, 0);
23
+ jQuery('.wrap').css('opacity', 1);
24
+ });
25
+
26
+ function suggestValue() {
27
+ var images = fifuScriptCloudVars.availableImages;
28
+ var value = jQuery('#cloud_suggestion_pricing').val();
29
+
30
+ if (!images || !value)
31
+ return;
32
+
33
+ var code = null;
34
+
35
+ fifu_block();
36
+
37
+ jQuery.ajax({
38
+ method: "POST",
39
+ url: restUrl + 'featured-image-from-url/v2/suggest_value/',
40
+ data: {
41
+ "images": images,
42
+ "value": value
43
+ },
44
+ async: true,
45
+ beforeSend: function (xhr) {
46
+ xhr.setRequestHeader('X-WP-Nonce', fifuScriptVars.nonce);
47
+ },
48
+ success: function (data) {
49
+ code = data['code'];
50
+ message(data, 'pricing');
51
+ },
52
+ error: function (jqXHR, textStatus, errorThrown) {
53
+ console.log(jqXHR);
54
+ console.log(textStatus);
55
+ console.log(errorThrown);
56
+ },
57
+ complete: function (data) {
58
+ fifu_unblock();
59
+ }
60
+ });
61
+ return code;
62
+ }
63
+
64
+ function waitingList() {
65
+ var images = fifuScriptCloudVars.availableImages;
66
+ var email = jQuery('#cloud_waiting_list').val();
67
+
68
+ if (!images || !email)
69
+ return;
70
+
71
+ var code = null;
72
+
73
+ fifu_block();
74
+
75
+ jQuery.ajax({
76
+ method: "POST",
77
+ url: restUrl + 'featured-image-from-url/v2/waiting_list/',
78
+ data: {
79
+ "images": images,
80
+ "email": email
81
+ },
82
+ async: true,
83
+ beforeSend: function (xhr) {
84
+ xhr.setRequestHeader('X-WP-Nonce', fifuScriptVars.nonce);
85
+ },
86
+ success: function (data) {
87
+ code = data['code'];
88
+ message(data, 'waiting');
89
+ },
90
+ error: function (jqXHR, textStatus, errorThrown) {
91
+ console.log(jqXHR);
92
+ console.log(textStatus);
93
+ console.log(errorThrown);
94
+ },
95
+ complete: function (data) {
96
+ fifu_unblock();
97
+ }
98
+ });
99
+ return code;
100
+ }
101
+
102
+ function betaTester() {
103
+ var email = jQuery('#cloud_beta_tester').val();
104
+
105
+ if (!email)
106
+ return;
107
+
108
+ var code = null;
109
+
110
+ fifu_block();
111
+
112
+ jQuery.ajax({
113
+ method: "POST",
114
+ url: restUrl + 'featured-image-from-url/v2/beta_tester/',
115
+ data: {
116
+ "email": email
117
+ },
118
+ async: true,
119
+ beforeSend: function (xhr) {
120
+ xhr.setRequestHeader('X-WP-Nonce', fifuScriptVars.nonce);
121
+ },
122
+ success: function (data) {
123
+ code = data['code'];
124
+ message(data, 'tester');
125
+ },
126
+ error: function (jqXHR, textStatus, errorThrown) {
127
+ console.log(jqXHR);
128
+ console.log(textStatus);
129
+ console.log(errorThrown);
130
+ },
131
+ complete: function (data) {
132
+ fifu_unblock();
133
+ }
134
+ });
135
+ return code;
136
+ }
admin/html/js/menu-su.js ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ var restUrl = fifu_get_rest_url();
2
+
3
+ function message(data, box) {
4
+ selector = "#" + box + "_response_message";
5
+ jQuery(selector).css('background-color', data['color']);
6
+ jQuery(selector).css('border-radius', '3px');
7
+ jQuery(selector).css('padding', '6px');
8
+ jQuery(selector).css('color', 'white');
9
+ jQuery(selector).css('font-size', '15px');
10
+ jQuery(selector).val(data['message']);
11
+ jQuery(selector).show();
12
+ }
13
+
14
+ function fifu_block() {
15
+ jQuery('#tabs-top').block({message: 'Please wait a few seconds...', css: {backgroundColor: 'none', border: 'none', color: 'white'}});
16
+ }
17
+
18
+ function fifu_unblock() {
19
+ jQuery('#tabs-top').unblock();
20
+ }
admin/html/js/menu.js CHANGED
@@ -28,7 +28,6 @@ jQuery(function () {
28
  });
29
  });
30
 
31
- jQuery("#tabs").tabs();
32
  jQuery("#tabs-top").tabs();
33
  jQuery("#fifu_input_spinner_cron_metadata").spinner({min: 1, step: 1});
34
  jQuery("#fifu_input_spinner_db").spinner({min: 100, step: 100});
28
  });
29
  });
30
 
 
31
  jQuery("#tabs-top").tabs();
32
  jQuery("#fifu_input_spinner_cron_metadata").spinner({min: 1, step: 1});
33
  jQuery("#fifu_input_spinner_db").spinner({min: 100, step: 100});
admin/html/js/troubleshooting.js ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(document).ready(function () {
2
+ jQuery('link[href*="jquery-ui.css"]').attr("disabled", "true");
3
+ jQuery('div.wrap div.header-box div.notice').hide();
4
+ jQuery('div.wrap div.header-box div#message').hide();
5
+ jQuery('div.wrap div.header-box div.updated').remove();
6
+ });
7
+
8
+ jQuery(function () {
9
+ jQuery("#tabs-top").tabs();
10
+
11
+ window.scrollTo(0, 0);
12
+ jQuery('.wrap').css('opacity', 1);
13
+ });
admin/html/menu.html CHANGED
@@ -2,9 +2,9 @@
2
 
3
  <div class="header-box">
4
  <h1 style="color:white;padding-left:20px;width:98%;font-family:Ubuntu,sans-serif">
5
- <span class="dashicons dashicons-camera" style="font-size:30px"></span><span style="padding-left:20px">featured image from url</span>
6
  <a href="https://chrome.google.com/webstore/detail/fifu-scraper/pccimcccbkdeeadhejdmnffmllpicola" target="_blank"><img class="fifu-chrome" src="https://storage.googleapis.com/featuredimagefromurl/chrome-web-store2.png" title="<?php $fifu['chrome']['link']() ?>"/></a>
7
- <a href="https://referral.fifu.app" target="_blank"><div class="fifu-referral"><i class="fas fa-comment-dollar" style="font-size:30px" title="<?php $fifu['referral']['link']() ?>"></i></div></a>
8
  </h1>
9
  </div>
10
 
@@ -23,7 +23,6 @@
23
  <li><a href="#tabs-q"><i class="fas fa-keyboard"></i> <?php $fifu['tab']['api']() ?></a></li>
24
  <li><a href="#tabs-k"><i class="fas fa-user-cog"></i> <?php $fifu['tab']['admin']() ?></a></li>
25
  <li><a href="#tabs-j"><i class="fas fa-database"></i> <?php $fifu['tab']['metadata']() ?></a></li>
26
- <li><a href="#tabs-t"><i class="fas fa-info-circle"></i> <?php $fifu['tab']['trouble']() ?></a></li>
27
  <br>
28
  <br>
29
 
@@ -5737,773 +5736,6 @@
5737
  </div>
5738
  </div>
5739
  </div>
5740
- <div id="tabs-t">
5741
- <div class="box">
5742
- <table>
5743
- <tr>
5744
- <td style="border-bottom:none">2021-10-12</td>
5745
- <td style="border-bottom:none"><h3>PHP</h3></td>
5746
- <td style="border-bottom:none">programming language</td>
5747
- </tr>
5748
- </table>
5749
- <div class="greybox" style="position: relative; top: -10px">
5750
- Fixing "PHP Warning: file_get_contents(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0", which prevents "Auto set featured media using web page address" from working:<br>
5751
- 1) Access cPanel, MultiPHP INI Editor and enable "allow_url_fopen".<br>
5752
- </div>
5753
- </div>
5754
- <div class="box">
5755
- <table>
5756
- <tr>
5757
- <td style="border-bottom:none">2021-09-27</td>
5758
- <td style="border-bottom:none"><h3> Apache</h3></td>
5759
- <td style="border-bottom:none">web server</td>
5760
- </tr>
5761
- </table>
5762
- <div class="greybox" style="position: relative; top: -10px">
5763
- FIFU settings don't work due 301 (Moved Permanently) POST followed by 404 (Not Found) GET.<br>
5764
- 1) open .htaccess file and replace 301 by 307;<br>
5765
- 2) restart Apache.<br>
5766
- </div>
5767
- </div>
5768
- <div class="box">
5769
- <table>
5770
- <tr>
5771
- <td style="border-bottom:none">2021-07-29</td>
5772
- <td style="border-bottom:none"><h3> Wordpress Automatic Plugin</h3></td>
5773
- <td style="border-bottom:none">plugin</td>
5774
- </tr>
5775
- </table>
5776
- <div class="greybox" style="position: relative; top: -10px">
5777
- Posts created by WP Automatic have no featured image. <br>
5778
- x) please contact its support, because WP Automatic is responsible for saving image URLs in FIFU custom fields.<br>
5779
- </div>
5780
- </div>
5781
- <div class="box">
5782
- <table>
5783
- <tr>
5784
- <td style="border-bottom:none">2021-07-05</td>
5785
- <td style="border-bottom:none"><h3> Facebook</h3></td>
5786
- <td style="border-bottom:none">social networking</td>
5787
- </tr>
5788
- </table>
5789
- <div class="greybox" style="position: relative; top: -10px">
5790
- Facebook doesn't share an INTERNAL featured image and the Sharing Debugger informs: "Provided og:image URL, ... could not be processed as an image because it has an invalid content type". <br>
5791
- 1) make sure the image can be embedded externally. Because if your site tries to protect the image, for instance redirecting to another address, the image may not be accessed by the social media.<br>
5792
- </div>
5793
- </div>
5794
- <div class="box">
5795
- <table>
5796
- <tr>
5797
- <td style="border-bottom:none">2021-06-28</td>
5798
- <td style="border-bottom:none"><h3> Octolooks Scrapes</h3></td>
5799
- <td style="border-bottom:none">plugin</td>
5800
- </tr>
5801
- </table>
5802
- <div class="greybox" style="position: relative; top: -10px">
5803
- Using external featured images. <br>
5804
- 0) enable "FIFU Settings > Metadata > Schedule Metadata Generation" toggle;<br>
5805
- 1) access "Scrapes > All Scrapes > Actions > Edit > POST > CUSTOM FIELDS";<br>
5806
- 2) set "fifu_image_url" for "Name";<br>
5807
- 3) for "Value", click on the icon and select the featured image;<br>
5808
- 4) set "src" for "Attribute";<br>
5809
- 5) make sure "POST > FEATURED IMAGE > Value" is empty;<br>
5810
- 6) save.<br>
5811
- </div>
5812
- </div>
5813
- <div class="box">
5814
- <table>
5815
- <tr>
5816
- <td style="border-bottom:none">2021-06-23</td>
5817
- <td style="border-bottom:none"><h3> Domain</h3></td>
5818
- <td style="border-bottom:none">address</td>
5819
- </tr>
5820
- </table>
5821
- <div class="greybox" style="position: relative; top: -10px">
5822
- Images missing due domain change. <br>
5823
- 1) run this SQL command: UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'https://domain/', 'https://newdomain/') WHERE meta_key = 'fifu_image_url' AND meta_value LIKE '%//domain/%';<br>
5824
- 2) run Metadata > Clean Metadata;<br>
5825
- 3) enable Metadata > Image Metadata.<br>
5826
- </div>
5827
- </div>
5828
- <div class="box">
5829
- <table>
5830
- <tr>
5831
- <td style="border-bottom:none">2021-06-15</td>
5832
- <td style="border-bottom:none"><h3> Feed</h3></td>
5833
- <td style="border-bottom:none">XML</td>
5834
- </tr>
5835
- </table>
5836
- <div class="greybox" style="position: relative; top: -10px">
5837
- XML parsing error: duplicate attribute xmlns:media="http://search.yahoo.com/mrss/". <br>
5838
- 1) the first attribute is added by FIFU (Media RSS Tags) and the duplicated one by another component you have installed on your site, such as Rank Math SEO plugin. Find and disable the option that is adding the duplicated attribute, otherwise services like Google News may not find your images.<br>
5839
- </div>
5840
- </div>
5841
- <div class="box">
5842
- <table>
5843
- <tr>
5844
- <td style="border-bottom:none">2021-04-17</td>
5845
- <td style="border-bottom:none"><h3> Rey + Rey Core</h3></td>
5846
- <td style="border-bottom:none">theme + plugin</td>
5847
- </tr>
5848
- </table>
5849
- <div class="greybox" style="position: relative; top: -10px">
5850
- Product gallery doesn't work correctly.<br>
5851
- 1) enable "FIFU Settings > WooCommerce > FIFU Product Gallery";<br>
5852
- 2) access "Appearance > your theme > Customize > Additional CSS";<br>
5853
- 3) add:<br>
5854
- &nbsp;&nbsp;&nbsp;&nbsp;div.rey-productSummary {justify-content:unset !important}<br>
5855
- &nbsp;&nbsp;&nbsp;&nbsp;div.fifu-woo-gallery {padding: 20px !important}<br>
5856
- 4) publish.<br>
5857
- </div>
5858
- </div>
5859
- <div class="box">
5860
- <table>
5861
- <tr>
5862
- <td style="border-bottom:none">2021-04-03</td>
5863
- <td style="border-bottom:none"><h3> Woodmart</h3></td>
5864
- <td style="border-bottom:none">theme</td>
5865
- </tr>
5866
- </table>
5867
- <div class="greybox" style="position: relative; top: -10px">
5868
- Product gallery doesn't work correctly. Two possible solutions:<br>
5869
- a) run "FIFU Settings > Metadata > Save Image Dimensions";<br>
5870
- b) enable "FIFU Settings > WooCommerce > FIFU Product Gallery".
5871
- </div>
5872
- </div>
5873
- <div class="box">
5874
- <table>
5875
- <tr>
5876
- <td style="border-bottom:none">2021-02-24</td>
5877
- <td style="border-bottom:none"><h3> YITH WooCommerce Badge Management</h3></td>
5878
- <td style="border-bottom:none">plugin</td>
5879
- </tr>
5880
- </table>
5881
- <div class="greybox" style="position: relative; top: -10px">
5882
- Badge is not being displayed when FIFU Product Gallery is enabled:<br>
5883
- 1) access "Appearance > your theme > Customize > Additional CSS";<br>
5884
- 2) add:<br>
5885
- &nbsp;&nbsp;&nbsp;&nbsp;.yith-wcbm-badge {z-index: 11}<br>
5886
- 3) publish.<br>
5887
- </div>
5888
- </div>
5889
- <div class="box">
5890
- <table>
5891
- <tr>
5892
- <td style="border-bottom:none">2021-02-19</td>
5893
- <td style="border-bottom:none"><h3> Gillion</h3></td>
5894
- <td style="border-bottom:none">theme</td>
5895
- </tr>
5896
- </table>
5897
- <div class="greybox" style="position: relative; top: -10px">
5898
- Theme hover effects are blocking featured video commands:<br>
5899
- 1) access "Appearance > Gillion > Customize > Additional CSS";<br>
5900
- 2) add:<br>
5901
- &nbsp;&nbsp;&nbsp;&nbsp;.fifu_wrapper ~ a.post-lightbox {display: none !important;}<br>
5902
- &nbsp;&nbsp;&nbsp;&nbsp;div.post-thumbnail > a.post-overlay {display: none;}<br>
5903
- 3) publish.<br>
5904
- </div>
5905
- </div>
5906
- <div class="box">
5907
- <table>
5908
- <tr>
5909
- <td style="border-bottom:none">2021-01-12</td>
5910
- <td style="border-bottom:none"><h3> Avada</h3></td>
5911
- <td style="border-bottom:none">theme</td>
5912
- </tr>
5913
- </table>
5914
- <div class="greybox" style="position: relative; top: -10px">
5915
- Procut gallery has style issues:<br>
5916
- 1) access "Avada Settings > WooCommerce > WooCommerce Product Images Layout";<br>
5917
- 2) select "WooCommerce" instead of "Avada";<br>
5918
- 3) click on "Save Changes".<br>
5919
- </div>
5920
- </div>
5921
- <div class="box">
5922
- <table>
5923
- <tr>
5924
- <td style="border-bottom:none">2020-12-03</td>
5925
- <td style="border-bottom:none"><h3> Rehub</h3></td>
5926
- <td style="border-bottom:none">theme</td>
5927
- </tr>
5928
- </table>
5929
- <div class="greybox" style="position: relative; top: -10px">
5930
- Featured slider is too big for Rehub sticky bar:<br>
5931
- 1) access "Appearance > Rehub > Customize > Additional CSS";<br>
5932
- 2) add:<br>
5933
- &nbsp;&nbsp;&nbsp;&nbsp;div.float-panel-woo-image > div.fifu-slider {max-width: 100px;}<br>
5934
- 3) publish.<br>
5935
- </div>
5936
- </div>
5937
- <div class="box">
5938
- <table>
5939
- <tr>
5940
- <td style="border-bottom:none">2020-10-16</td>
5941
- <td style="border-bottom:none"><h3> Facebook</h3></td>
5942
- <td style="border-bottom:none">social networking</td>
5943
- </tr>
5944
- </table>
5945
- <div class="greybox" style="position: relative; top: -10px">
5946
- Facebook doesn't share a featured image:<br>
5947
- 1) access https://developers.facebook.com/tools/debug/;<br>
5948
- 2) enter your post URL in the field (Facebook will clean its cache);<br>
5949
- 3) if Facebook shows your featured image, try to share the post again;<br>
5950
- 4) but if Facebook finds a different image, you probably have another component (plugin/theme) that is creating an og:image tag for a default image. Find out the component and check if it's possible to disable the default image.
5951
- </div>
5952
- </div>
5953
- <div class="box">
5954
- <table>
5955
- <tr>
5956
- <td style="border-bottom:none">2020-10-05</td>
5957
- <td style="border-bottom:none"><h3> "Warning: ..."</h3></td>
5958
- <td style="border-bottom:none">message</td>
5959
- </tr>
5960
- </table>
5961
- <div class="greybox" style="position: relative; top: -10px">
5962
- Warning on frontend after activating FIFU. Two possible solutions:<br>
5963
- a) open wp-config.php and before "Happy publishing" line add:<br>
5964
- define('WP_DEBUG_DISPLAY', false);<br>
5965
- b) look for ".../themes/[slug]/..." or ".../plugins/[slug]/..." in the message. The slug refers to the component responsible for the warning. Then please contact its developer informing the message and also that you are using FIFU, a plugin for external featured images. Warnings are usually easy to solve and happen because the component wasn't expecting for an external featured image.<br>
5966
- </div>
5967
- </div>
5968
- <div class="box">
5969
- <table>
5970
- <tr>
5971
- <td style="border-bottom:none">2020-10-01</td>
5972
- <td style="border-bottom:none"><h3> Divi</h3></td>
5973
- <td style="border-bottom:none">theme</td>
5974
- </tr>
5975
- </table>
5976
- <div class="greybox" style="position: relative; top: -10px">
5977
- External featured images are not being shown:<br>
5978
- 1) deactivate "Divi > Theme Options > General > Enable Responsive Images".<br>
5979
- </div>
5980
- </div>
5981
- <div class="box">
5982
- <table>
5983
- <tr>
5984
- <td style="border-bottom:none">2020-09-23</td>
5985
- <td style="border-bottom:none"><h3> Facebook</h3></td>
5986
- <td style="border-bottom:none">social networking</td>
5987
- </tr>
5988
- </table>
5989
- <div class="greybox" style="position: relative; top: -10px">
5990
- The featured image is being cropped when the post is shared in a Facebook page:<br>
5991
- x) there is no local solution and the issue happens even with internal featured images. Facebook pages expect 600x314px images and it will automatically crop images with a different aspect ratio. You may contact Facebook support and ask for changes.<br>
5992
- </div>
5993
- </div>
5994
- <div class="box">
5995
- <table>
5996
- <tr>
5997
- <td style="border-bottom:none">2020-09-21</td>
5998
- <td style="border-bottom:none"><h3> WooCommerce</h3></td>
5999
- <td style="border-bottom:none">plugin</td>
6000
- </tr>
6001
- </table>
6002
- <div class="greybox" style="position: relative; top: -10px">
6003
- Zoom doesn't work:<br>
6004
- 1) it normally happens when you use small images. Your image dimensions should be greater than the gallery dimensions.<br>
6005
- </div>
6006
- </div>
6007
- <div class="box">
6008
- <table>
6009
- <tr>
6010
- <td style="border-bottom:none">2020-08-27</td>
6011
- <td style="border-bottom:none"><h3> WP Super Cache</h3></td>
6012
- <td style="border-bottom:none">plugin</td>
6013
- </tr>
6014
- </table>
6015
- <div class="greybox" style="position: relative; top: -10px">
6016
- Images not visible after cleaning and generating FIFU metadata:<br>
6017
- 1) click on "Delete Cache".<br>
6018
- </div>
6019
- </div>
6020
- <div class="box">
6021
- <table>
6022
- <tr>
6023
- <td style="border-bottom:none">2020-08-26</td>
6024
- <td style="border-bottom:none"><h3> WordPress</h3></td>
6025
- <td style="border-bottom:none"></td>
6026
- </tr>
6027
- </table>
6028
- <div class="greybox" style="position: relative; top: -10px">
6029
- The image URL is not in the feed:<br>
6030
- 1) enable "FIFU Settings > Social > Media RSS Tags";<br>
6031
- 2) for single posts (only) it's necessary to add "?withoutcomments=1" in the end of the feed URL.<br>
6032
- </div>
6033
- </div>
6034
- <div class="box">
6035
- <table>
6036
- <tr>
6037
- <td style="border-bottom:none">2020-08-25</td>
6038
- <td style="border-bottom:none"><h3> Flatsome</h3></td>
6039
- <td style="border-bottom:none">theme</td>
6040
- </tr>
6041
- </table>
6042
- <div class="greybox" style="position: relative; top: -10px">
6043
- WooCommerce lightbox doesn't work. Two possible solutions:<br>
6044
- a) run "FIFU Settings > Metadata > Save Image Dimensions";<br>
6045
- b) select "Flatsome > Customize > WooCommerce > Product Page > Gallery > Product Image Lightbox > Flatsome Lightbox".<br>
6046
- </div>
6047
- </div>
6048
- <div class="box">
6049
- <table>
6050
- <tr>
6051
- <td style="border-bottom:none">2020-08-13</td>
6052
- <td style="border-bottom:none"><h3> WooCommerce REST API</h3></td>
6053
- <td style="border-bottom:none">API</td>
6054
- </tr>
6055
- </table>
6056
- <div class="greybox" style="position: relative; top: -10px">
6057
- The import of hundreds of thousands of products isn't fast enough:<br>
6058
- 1) deactivate FIFU;<br>
6059
- 2) import the products using the API;<br>
6060
- 3) activate FIFU;<br>
6061
- 4) run Metadata > Clean Metadata;<br>
6062
- 5) enable Metadata > Image Metadata.<br>
6063
- </div>
6064
- </div>
6065
- <div class="box">
6066
- <table>
6067
- <tr>
6068
- <td style="border-bottom:none">2020-07-26</td>
6069
- <td style="border-bottom:none"><h3> Gema Lite</h3></td>
6070
- <td style="border-bottom:none">theme</td>
6071
- </tr>
6072
- </table>
6073
- <div class="greybox" style="position: relative; top: -10px">
6074
- Style issue with featured videos:<br>
6075
- 1) enable "FIFU Settings > Lazy Load";<br>
6076
- 2) disable "FIFU Settings > Video > Video Thumbnail";<br>
6077
- 3) access "Appearance > Gema Lite > Customize > Additional CSS";<br>
6078
- 4) add:<br>
6079
- &nbsp;&nbsp;&nbsp;&nbsp;div.entry-featured > img.fifu-video {width:100%;}<br>
6080
- &nbsp;&nbsp;&nbsp;&nbsp;div.card__image-wrap div {position:absolute;top:0;height:100%;}<br>
6081
- &nbsp;&nbsp;&nbsp;&nbsp;div.fifu_wrapper + img {display:none;};<br>
6082
- 5) publish.<br>
6083
- </div>
6084
- </div>
6085
- <div class="box">
6086
- <table>
6087
- <tr>
6088
- <td style="border-bottom:none">2020-06-18</td>
6089
- <td style="border-bottom:none"><h3> Unyson</h3></td>
6090
- <td style="border-bottom:none">plugin</td>
6091
- </tr>
6092
- </table>
6093
- <div class="greybox" style="position: relative; top: -10px">
6094
- "There has been a critical error on your website" message:<br>
6095
- 1) open "unyson/framework/helpers/class-fw-resize.php";<br>
6096
- 2) search for the line that contains "$saved['file']";<br>
6097
- 3) add "if(!is_array($saved))return;" immediately above that.<br>
6098
- </div>
6099
- </div>
6100
- <div class="box">
6101
- <table>
6102
- <tr>
6103
- <td style="border-bottom:none">2020-06-03</td>
6104
- <td style="border-bottom:none"><h3> Klb Shortcode</h3></td>
6105
- <td style="border-bottom:none">plugin</td>
6106
- </tr>
6107
- </table>
6108
- <div class="greybox" style="position: relative; top: -10px">
6109
- Featured image not shown on carousel:<br>
6110
- 1) open "klb-shortcode/inc/klb-shortcode.php";<br>
6111
- 2) search for "$imageresize = dealsdot_resize( $image_src";<br>
6112
- 3) add "$imageresize = $imageresize ? $imageresize : $image_src;" immediately below that.<br>
6113
- </div>
6114
- </div>
6115
- <div class="box">
6116
- <table>
6117
- <tr>
6118
- <td style="border-bottom:none">2020-06-01</td>
6119
- <td style="border-bottom:none"><h3> Zapier (+YouTube)</h3></td>
6120
- <td style="border-bottom:none">service</td>
6121
- </tr>
6122
- </table>
6123
- <div class="greybox" style="position: relative; top: -10px">
6124
- Setting featured video automatically:<br>
6125
- 1) access "FIFU Settings > Automatic > Auto set featured media from post content";<br>
6126
- 2) enable "use the found image/video as featured image";<br>
6127
- 3) enable "hide the image/video from content";<br>
6128
- 4) access "Zapier > Make a Zap", select YouTube as the first app and configure as you want;<br>
6129
- 5) select WordPress as the second app;<br>
6130
- 6) click on "Choose Action Event", select "Create Post" and "Continue";<br>
6131
- 7) select your "WordPress account" and "Continue";<br>
6132
- 8) on "Customize Post", click on "Content" and select "Embed URL";<br>
6133
- 9) put the "Embed URL" in an iframe tag: &lt;iframe src="Embed URL"&gt;&lt;/iframe&gt;<br>
6134
- </div>
6135
- </div>
6136
- <div class="box">
6137
- <table>
6138
- <tr>
6139
- <td style="border-bottom:none">2020-05-31</td>
6140
- <td style="border-bottom:none"><h3> Publisher</h3></td>
6141
- <td style="border-bottom:none">theme</td>
6142
- </tr>
6143
- </table>
6144
- <div class="greybox" style="position: relative; top: -10px">
6145
- The theme lightbox doesn't work:<br>
6146
- x) there is no solution for now. It seems the lightbox only works with image addresses (internal or external) that contains "/wp-content/uploads/". You may contact the theme developer and ask him to remove the restriction.<br>
6147
- </div>
6148
- </div>
6149
- <div class="box">
6150
- <table>
6151
- <tr>
6152
- <td style="border-bottom:none">2020-05-20</td>
6153
- <td style="border-bottom:none"><h3> Bimber</h3></td>
6154
- <td style="border-bottom:none">theme</td>
6155
- </tr>
6156
- </table>
6157
- <div class="greybox" style="position: relative; top: -10px">
6158
- Home page images have different heights:<br>
6159
- 1) enable "FIFU Settings > Featured image > Same Height";<br>
6160
- 2) access "Selector" tab and add two selectors: "ul.g1-featured-items" and "ul.g1-collection-items";<br>
6161
- 3) access "Size Ratio" tab and set "16:9".<br>
6162
- </div>
6163
- </div>
6164
- <div class="box">
6165
- <table>
6166
- <tr>
6167
- <td style="border-bottom:none">2020-05-17</td>
6168
- <td style="border-bottom:none"><h3> BuddyForms</h3></td>
6169
- <td style="border-bottom:none">plugin</td>
6170
- </tr>
6171
- </table>
6172
- <div class="greybox" style="position: relative; top: -10px">
6173
- Adding "featured image" field to the form:<br>
6174
- 1) open the form editor;<br>
6175
- 2) select "Form Builder > Select Field Type > Url";<br>
6176
- 3) click on "+ Add Field" button;<br>
6177
- 4) a new field "Url" will be shown. Click on "Edit";<br>
6178
- 5) set "Featured image" for "Label";<br>
6179
- 6) set "Image URL" for "Description";<br>
6180
- 7) click on "Advanced";<br>
6181
- 8) set "fifu_image_url" for "Slug";<br>
6182
- 9) update.<br>
6183
- * for a "featured video" field, use the same steps above, but replacing "image" by "video".
6184
- </div>
6185
- </div>
6186
- <div class="box">
6187
- <table>
6188
- <tr>
6189
- <td style="border-bottom:none">2020-05-10</td>
6190
- <td style="border-bottom:none"><h3> Avada</h3></td>
6191
- <td style="border-bottom:none">theme</td>
6192
- </tr>
6193
- </table>
6194
- <div class="greybox" style="position: relative; top: -10px">
6195
- The video controls don't work on WooCommerce product gallery:<br>
6196
- 1) access "Appearance > Avada > Customize > Additional CSS";<br>
6197
- 2) add ".avada-product-gallery .avada-product-gallery-lightbox-trigger {position:unset;}";<br>
6198
- 3) publish.<br>
6199
- </div>
6200
- </div>
6201
- <div class="box">
6202
- <table>
6203
- <tr>
6204
- <td style="border-bottom:none">2020-05-09</td>
6205
- <td style="border-bottom:none"><h3> Post Sliders & Post Grids</h3></td>
6206
- <td style="border-bottom:none">plugin</td>
6207
- </tr>
6208
- </table>
6209
- <div class="greybox" style="position: relative; top: -10px">
6210
- The post grid doesn't show external featured images:<br>
6211
- x) there is no solution for now. "Post Sliders & Post Grids" only shows a featured image if that is stored in the media library. You may contact the author or install an alternative plugin, like <a href="https://wordpress.org/plugins/content-views-query-and-display-post-page/">this</a>.<br>
6212
- </div>
6213
- </div>
6214
- <div class="box">
6215
- <table>
6216
- <tr>
6217
- <td style="border-bottom:none">2020-05-01</td>
6218
- <td style="border-bottom:none"><h3> WooCommerce</h3></td>
6219
- <td style="border-bottom:none">plugin</td>
6220
- </tr>
6221
- </table>
6222
- <div class="greybox" style="position: relative; top: -10px">
6223
- Product gallery thumbnails have different heights:<br>
6224
- 1) enable "FIFU Settings > Featured image > Same Height";<br>
6225
- 2) access "Selector" tab and add "ol.flex-control-thumbs".<br>
6226
- </div>
6227
- </div>
6228
- <div class="box">
6229
- <table>
6230
- <tr>
6231
- <td style="border-bottom:none">2020-04-20</td>
6232
- <td style="border-bottom:none"><h3> Elementor</h3></td>
6233
- <td style="border-bottom:none">plugin</td>
6234
- </tr>
6235
- </table>
6236
- <div class="greybox" style="position: relative; top: -10px">
6237
- Video controls not accessible for "Posts" element, when configured as "Layout > Skin > Cards":<br>
6238
- 1) access "Style > Card > Hover Effect";<br>
6239
- 2) select "None".<br>
6240
- </div>
6241
- </div>
6242
- <div class="box">
6243
- <table>
6244
- <tr>
6245
- <td style="border-bottom:none">2020-04-03</td>
6246
- <td style="border-bottom:none"><h3> Elementor</h3></td>
6247
- <td style="border-bottom:none">plugin</td>
6248
- </tr>
6249
- </table>
6250
- <div class="greybox" style="position: relative; top: -10px">
6251
- Showing an external featured image/video:<br>
6252
- 1) open the default WordPress editor;<br>
6253
- 2) add the image URL into "Featured image" field (or the video URL into "Featured Video from URL");<br>
6254
- 3) click on "Edit with Elementor" button;<br>
6255
- 4) search for the "Featured Image" widget;<br>
6256
- 5) just drag the widget (no edition required).<br>
6257
- </div>
6258
- </div>
6259
- <div class="box">
6260
- <table>
6261
- <tr>
6262
- <td style="border-bottom:none">2020-04-02</td>
6263
- <td style="border-bottom:none"><h3> WordPress</h3></td>
6264
- <td style="border-bottom:none"></td>
6265
- </tr>
6266
- </table>
6267
- <div class="greybox" style="position: relative; top: -10px">
6268
- Removing the references to the internal featured images for all posts that have an external featured image as well:<br>
6269
- 1) run this SQL command: DELETE FROM wp_postmeta WHERE meta_key = '_thumbnail_id' AND post_id IN (SELECT post_id FROM (SELECT post_id FROM wp_postmeta WHERE meta_key = 'fifu_image_url') AS x);<br>
6270
- 2) enable "FIFU settings > Metadata > Clean Metadata";<br>
6271
- 3) enable "Image Metadata".<br>
6272
- </div>
6273
- </div>
6274
- <div class="box">
6275
- <table>
6276
- <tr>
6277
- <td style="border-bottom:none">2020-03-10</td>
6278
- <td style="border-bottom:none"><h3> Orienko</h3></td>
6279
- <td style="border-bottom:none">theme</td>
6280
- </tr>
6281
- </table>
6282
- <div class="greybox" style="position: relative; top: -10px">
6283
- Video lightbox isn't shown ("n.fancybox.getInstance is not a function" error):<br>
6284
- 1) access "orienko/includes/head-media.php";<br>
6285
- 2) remove the line that contains "wp_enqueue_script( 'fancybox".<br>
6286
- </div>
6287
- </div>
6288
- <div class="box">
6289
- <table>
6290
- <tr>
6291
- <td style="border-bottom:none">2020-03-09</td>
6292
- <td style="border-bottom:none"><h3> Google Chrome | Firefox</h3></td>
6293
- <td style="border-bottom:none">web browsers</td>
6294
- </tr>
6295
- </table>
6296
- <div class="greybox" style="position: relative; top: -10px">
6297
- Avoiding "Connection not secure" message:<br>
6298
- 1) use only https image URLs.<br>
6299
- </div>
6300
- </div>
6301
- <div class="box">
6302
- <table>
6303
- <tr>
6304
- <td style="border-bottom:none">2020-03-04</td>
6305
- <td style="border-bottom:none"><h3> Essential Grid</h3></td>
6306
- <td style="border-bottom:none">plugin</td>
6307
- </tr>
6308
- </table>
6309
- <div class="greybox" style="position: relative; top: -10px">
6310
- Showing external videos:<br>
6311
- 1) access "Ess. Grid > Editor / Preview";<br>
6312
- 2) for each video access "Edit Post Meta > Choose Specific Skin", select "YoutubeStream" or "VimeoStream" and click on "Save Post Meta".<br>
6313
- </div>
6314
- </div>
6315
- <div class="box">
6316
- <table>
6317
- <tr>
6318
- <td style="border-bottom:none">2019-01-30</td>
6319
- <td style="border-bottom:none"><h3>WooCommerce</h3></td>
6320
- <td style="border-bottom:none">plugin</td>
6321
- </tr>
6322
- </table>
6323
- <div class="greybox" style="position: relative; top: -10px">
6324
- Adding external "Product Image" and "Product Gallery" via SQL:<br>
6325
- 1) enable "FIFU Settings > Metadata > Schedule Metadata Generation";<br>
6326
- 2) run the SQL. Example: "insert into wp_postmeta (post_id, meta_key, meta_value) values (12345, 'fifu_list_url', 'URL1|URL2|URL3|URL4')"<br>
6327
- * the first URL is for the featured image and the others for the gallery<br>
6328
- </div>
6329
- </div>
6330
- <div class="box">
6331
- <table>
6332
- <tr>
6333
- <td style="border-bottom:none">2020-01-19</td>
6334
- <td style="border-bottom:none"><h3>WP All Import</h3></td>
6335
- <td style="border-bottom:none">plugin</td>
6336
- </tr>
6337
- </table>
6338
- <div class="greybox" style="position: relative; top: -10px">
6339
- Importing Variable Products to WooCommerce:<br>
6340
- 1) you should choose one of these options during the import:<br>
6341
- - "All my variable products have SKUs or some other unique identifier. Each variation is linked to its parent with its parent's SKU or other unique identifier.";<br>
6342
- - "All variations for a particular product have the same title as the parent product."<br>
6343
- Options where the parent is created automatically won't work well.
6344
- </div>
6345
- <div class="greybox" style="position: relative; top: -10px">
6346
- Avoiding updates on unchanged image data:<br>
6347
- 1) access "WP All Import > Import Settings";<br>
6348
- 2) select "Update existing posts/products with changed data in your file > Choose which data to update";<br>
6349
- 3) uncheck "Images" (otherwise WP All Import will delete the image metadata and FIFU will need to create that again);<br>
6350
- 4) select "Custom Fields > Update only these Custom Fields, leave the rest alone".<br>
6351
- </div>
6352
- </div>
6353
- <div class="box">
6354
- <table>
6355
- <tr>
6356
- <td style="border-bottom:none">2020-01-18</td>
6357
- <td style="border-bottom:none"><h3>Ajax Load More</h3></td>
6358
- <td style="border-bottom:none">plugin</td>
6359
- </tr>
6360
- </table>
6361
- <div class="greybox" style="position: relative; top: -10px">
6362
- Loading external featured videos:<br>
6363
- 1) check "Ajax Load More > Settings > Disable CSS".
6364
- </div>
6365
- </div>
6366
- <div class="box">
6367
- <table>
6368
- <tr>
6369
- <td style="border-bottom:none">2020-01-17</td>
6370
- <td style="border-bottom:none"><h3>Multisite Post Duplicator</h3></td>
6371
- <td style="border-bottom:none">plugin</td>
6372
- </tr>
6373
- </table>
6374
- <div class="greybox" style="position: relative; top: -10px">
6375
- Duplicating post and external featured image:<br>
6376
- 1) enable "FIFU Settings > Metadata > Schedule Metadata Generation";<br>
6377
- 2) access "Multisite Post Duplicator Settings";<br>
6378
- 3) disable "Copy featured image when duplicating";<br>
6379
- 4) disable "Copy post content images to destination media library";<br>
6380
- 5) set "_thumbnail_id" for "Post Meta to ignore".
6381
- </div>
6382
- </div>
6383
- <div class="box">
6384
- <table>
6385
- <tr>
6386
- <td style="border-bottom:none">2019-12-22</td>
6387
- <td style="border-bottom:none"><h3>Jetpack</h3></td>
6388
- <td style="border-bottom:none">plugin</td>
6389
- </tr>
6390
- </table>
6391
- <div class="greybox" style="position: relative; top: -10px">
6392
- Showing external images on "Related Posts":<br>
6393
- x) there is no local solution. Jetpack Related Posts documentation informs: "we do all the analysis, processing, and serving from our cloud". It means Jetpack would need to adapt its web service to work with the images provided by FIFU. So you may contact Jetpack support or install an alternative plugin for Related Posts, like <a href="https://wordpress.org/plugins/related-posts-thumbnails/">this</a>.<br>
6394
- </div>
6395
- </div>
6396
- <div class="box">
6397
- <table>
6398
- <tr>
6399
- <td style="border-bottom:none">2019-12-12</td>
6400
- <td style="border-bottom:none"><h3>PHP</h3></td>
6401
- <td style="border-bottom:none">programming language</td>
6402
- </tr>
6403
- </table>
6404
- <div class="greybox" style="position: relative; top: -10px">
6405
- Fixing fatal error "Allowed memory size of [...] bytes exhausted (tried to allocate [...] bytes) in /var/www/html/wp-includes/wp-db.php":<br>
6406
- 1) open /var/www/html/wp-config.php file;<br>
6407
- 2) add this code before "Happy publishing" line: define('WP_MEMORY_LIMIT', '2048M');<br>
6408
- </div>
6409
- <div class="greybox" style="position: relative; top: -10px">
6410
- Fixing fatal error "Maximum execution time of 30 seconds exceeded in /var/www/html/wp-includes/wp-db.php":<br>
6411
- 1) open /var/www/html/wp-config.php file;<br>
6412
- 2) add this code before "Happy publishing" line: set_time_limit(1800);<br>
6413
- </div>
6414
- </div>
6415
- <div class="box">
6416
- <table>
6417
- <tr>
6418
- <td style="border-bottom:none">2019-10-28</td>
6419
- <td style="border-bottom:none"><h3>https</h3></td>
6420
- <td style="border-bottom:none">protocol</td>
6421
- </tr>
6422
- </table>
6423
- <div class="greybox" style="position: relative; top: -10px">
6424
- Replacing http URLs by https:<br>
6425
- 1) run this SQL command: UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://', 'https://') WHERE meta_key = 'fifu_image_url' AND meta_value LIKE '%site.com%';<br>
6426
- 2) run "FIFU settings > Metadata > Clean Metadata";<br>
6427
- 3) enable "Image Metadata".<br>
6428
- * replace site.com by the domain of the URLs you want to update
6429
- </div>
6430
- </div>
6431
- <div class="box">
6432
- <table>
6433
- <tr>
6434
- <td style="border-bottom:none">2019-10-09</td>
6435
- <td style="border-bottom:none"><h3>Ecome</h3></td>
6436
- <td style="border-bottom:none">theme</td>
6437
- </tr>
6438
- </table>
6439
- <div class="greybox" style="position: relative; top: -10px">
6440
- Showing the external featured images:<br>
6441
- 1) open "ecome/framework/framework.php";<br>
6442
- 2) search for and remove "&& file_exists( $actual_file_path )".<br>
6443
- </div>
6444
- </div>
6445
- <div class="box">
6446
- <table>
6447
- <tr>
6448
- <td style="border-bottom:none">2019-10-02</td>
6449
- <td style="border-bottom:none"><h3>WPML Multilingual CMS + Translation Management</h3></td>
6450
- <td style="border-bottom:none">plugins</td>
6451
- </tr>
6452
- </table>
6453
- <div class="greybox" style="position: relative; top: -10px">
6454
- Copying the external featured image to the translation:<br>
6455
- 1) access "WPML > Settings > Custom Fields Translation";<br>
6456
- 2) search for "fifu_image_url", choose "Copy" and save;<br>
6457
- 3) if you use FIFU Premium, enable "Metadata > Schedule Metadata Generation". That's all;<br>
6458
- 4) but if you use the free version, after the translation post is created, access the post editor and click on "Update" button.<br>
6459
- </div>
6460
- </div>
6461
- <div class="box">
6462
- <table>
6463
- <tr>
6464
- <td style="border-bottom:none">2019-09-27</td>
6465
- <td style="border-bottom:none"><h3>Nelio External Featured Image (discontinued)</h3></td>
6466
- <td style="border-bottom:none">plugin</td>
6467
- </tr>
6468
- </table>
6469
- <div class="greybox" style="position: relative; top: -10px">
6470
- Importing image URLs to FIFU:<br>
6471
- 0) make a backup (you might want to revert the changes later);<br>
6472
- 1) deactivate Nelio;<br>
6473
- 2) run this SQL command: INSERT INTO wp_postmeta (post_id, meta_key, meta_value) SELECT * FROM (SELECT post_id, 'fifu_image_url' AS meta_key, SUBSTRING_INDEX(SUBSTRING_INDEX(meta_value, '"', 2), '"', -1) AS meta_value FROM wp_postmeta WHERE meta_key = '_nelioefi_first_image') pm WHERE meta_value <> '';<br>
6474
- 3) run "FIFU settings > Metadata > Clean Metadata";<br>
6475
- 4) enable "Image Metadata".<br>
6476
- </div>
6477
- </div>
6478
- <div class="box">
6479
- <table>
6480
- <tr>
6481
- <td style="border-bottom:none">2019-09-25</td>
6482
- <td style="border-bottom:none"><h3>WP Telegram (Auto Post and Notifications)</h3></td>
6483
- <td style="border-bottom:none">plugin</td>
6484
- </tr>
6485
- </table>
6486
- <div class="greybox" style="position: relative; top: -10px">
6487
- Sharing external featured images on Telegram:<br>
6488
- 1) just enable "Featured Image" toggle on WP Telegram.<br>
6489
- </div>
6490
- </div>
6491
- <div class="box">
6492
- <table>
6493
- <tr>
6494
- <td style="border-bottom:none">2019-09-13</td>
6495
- <td style="border-bottom:none"><h3>Toolset Forms + Toolset Types</h3></td>
6496
- <td style="border-bottom:none">plugins</td>
6497
- </tr>
6498
- </table>
6499
- <div class="greybox" style="position: relative; top: -10px">
6500
- Adding "Featured image" field to an external post form:<br>
6501
- 1) add a new "Custom Fields Group";<br>
6502
- 2) add a new "Field";<br>
6503
- 3) set "fifu_image_url" for "Field slug".<br>
6504
- </div>
6505
- </div>
6506
- </div>
6507
  </ul>
6508
  </div>
6509
  </div>
2
 
3
  <div class="header-box">
4
  <h1 style="color:white;padding-left:20px;width:98%;font-family:Ubuntu,sans-serif">
5
+ <span class="dashicons dashicons-camera" style="font-size:30px"></span><span style="padding-left:20px">FIFU</span>
6
  <a href="https://chrome.google.com/webstore/detail/fifu-scraper/pccimcccbkdeeadhejdmnffmllpicola" target="_blank"><img class="fifu-chrome" src="https://storage.googleapis.com/featuredimagefromurl/chrome-web-store2.png" title="<?php $fifu['chrome']['link']() ?>"/></a>
7
+ <a href="https://referral.fifu.app" target="_blank"><div class="fifu-referral"><i class="fas fa-comment-dollar" style="font-size:24px" title="<?php $fifu['referral']['link']() ?>"></i></div></a>
8
  </h1>
9
  </div>
10
 
23
  <li><a href="#tabs-q"><i class="fas fa-keyboard"></i> <?php $fifu['tab']['api']() ?></a></li>
24
  <li><a href="#tabs-k"><i class="fas fa-user-cog"></i> <?php $fifu['tab']['admin']() ?></a></li>
25
  <li><a href="#tabs-j"><i class="fas fa-database"></i> <?php $fifu['tab']['metadata']() ?></a></li>
 
26
  <br>
27
  <br>
28
 
5736
  </div>
5737
  </div>
5738
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5739
  </ul>
5740
  </div>
5741
  </div>
admin/html/meta-box.html CHANGED
@@ -89,6 +89,16 @@
89
 
90
  <div id="fifu_premium" style="<?php echo $show_button ?>">
91
  <table style="position: relative; top: 11px; background-color: #444444; color:white; width: 100%; border-radius: 5px">
 
 
 
 
 
 
 
 
 
 
92
  <tr style="text-align: center;">
93
  <td style="width: 90px; font-size: 11px; background-color: #1da867; border-radius: 3px"><a style="color:white; text-decoration: none" target="_blank" href="https://fifu.app/" title="Unlock all features">Go <b>PRO</b></a></td>
94
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured video" class="dashicons dashicons-video-alt3" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
@@ -103,7 +113,7 @@
103
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Tags (Auto set featured image from Unsplash using tags)" class="dashicons dashicons-tag" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
104
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured image/video (for bbPress forms)" class="dashicons dashicons-buddicons-bbpress-logo" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
105
  </tr>
106
- </table>
107
  </div>
108
 
109
  </div>
89
 
90
  <div id="fifu_premium" style="<?php echo $show_button ?>">
91
  <table style="position: relative; top: 11px; background-color: #444444; color:white; width: 100%; border-radius: 5px">
92
+ <tr style="text-align: center;">
93
+ <td style="font-size: 12px; background-color: #007cba; border-radius: 3px"><a style="color:white; text-decoration: none" target="_blank" href="/wp-admin/admin.php?page=fifu-cloud" title="Click here to know more and suggest a price">Know <b>FIFU Cloud</b></a></td>
94
+ <td style="padding: 0px 0px" class="fifu-hover"><span title="Save local or external images in the Google Cloud Storage. Never lose an image again." class="dashicons dashicons-open-folder" style="font-size:20px; display: unset; vertical-align:sub;"></span></td>
95
+ <td style="padding: 0px 0px" class="fifu-hover"><span title="Load images much faster, with optimized webp thumbnails served by the Google Cloud Network. Have a perfect SEO score." class="dashicons dashicons-performance" style="font-size:20px; display: unset; vertical-align:sub;"></span></td>
96
+ <td style="padding: 0px 0px" class="fifu-hover"><span title="Process images 100% in the Google Cloud servers. Don't torture your website anymore." class="dashicons dashicons-cloud-saved" style="font-size:20px; display: unset; vertical-align:sub;"></span></td>
97
+ <td style="padding: 0px 0px" class="fifu-hover"><span title="Pay per stored image. Please access the link and suggest a fair price." class="dashicons dashicons-money-alt" style="font-size:20px; display: unset; vertical-align:sub;"></span></td>
98
+ </tr>
99
+ </table>
100
+
101
+ <!-- <table style="position: relative; top: 11px; background-color: #444444; color:white; width: 100%; border-radius: 5px">
102
  <tr style="text-align: center;">
103
  <td style="width: 90px; font-size: 11px; background-color: #1da867; border-radius: 3px"><a style="color:white; text-decoration: none" target="_blank" href="https://fifu.app/" title="Unlock all features">Go <b>PRO</b></a></td>
104
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured video" class="dashicons dashicons-video-alt3" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
113
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Tags (Auto set featured image from Unsplash using tags)" class="dashicons dashicons-tag" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
114
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured image/video (for bbPress forms)" class="dashicons dashicons-buddicons-bbpress-logo" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
115
  </tr>
116
+ </table> -->
117
  </div>
118
 
119
  </div>
admin/html/support-data.html CHANGED
@@ -1,7 +1,7 @@
1
  <div class="wrap">
2
 
3
  <div class="header-box">
4
- <h1 style="color:white;padding-left:20px"><span class="dashicons dashicons-camera" style="font-size:30px"></span><span style="padding-left:20px">featured image from url</span></h1>
5
  </div>
6
 
7
  <div id="tabs-top" style="float:left">
1
  <div class="wrap">
2
 
3
  <div class="header-box">
4
+ <h1 style="color:white;padding-left:20px"><span class="dashicons dashicons-info" style="font-size:30px"></span><span style="padding-left:20px"><?php _e('Status') ?></span></h1>
5
  </div>
6
 
7
  <div id="tabs-top" style="float:left">
admin/html/troubleshooting.html ADDED
@@ -0,0 +1,779 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap" style="opacity:0">
2
+
3
+ <div class="header-box">
4
+ <h1 style="color:white;padding-left:20px;width:98%;font-family:Ubuntu,sans-serif">
5
+ <span class="dashicons dashicons-yes-alt" style="font-size:30px"></span><span style="padding-left:20px"><?php _e('Troubleshooting') ?></span>
6
+ </h1>
7
+ </div>
8
+
9
+ <div id="tabs-top" style="float:left">
10
+ <ul>
11
+ <div id="tabs-t" style="padding:1em 1.4em; position: relative; top: -25px;">
12
+ <div class="box">
13
+ <table>
14
+ <tr>
15
+ <td style="border-bottom:none">2021-10-12</td>
16
+ <td style="border-bottom:none"><h3>PHP</h3></td>
17
+ <td style="border-bottom:none">programming language</td>
18
+ </tr>
19
+ </table>
20
+ <div class="greybox" style="position: relative; top: -10px">
21
+ Fixing "PHP Warning: file_get_contents(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0", which prevents "Auto set featured media using web page address" from working:<br>
22
+ 1) Access cPanel, MultiPHP INI Editor and enable "allow_url_fopen".<br>
23
+ </div>
24
+ </div>
25
+ <div class="box">
26
+ <table>
27
+ <tr>
28
+ <td style="border-bottom:none">2021-09-27</td>
29
+ <td style="border-bottom:none"><h3> Apache</h3></td>
30
+ <td style="border-bottom:none">web server</td>
31
+ </tr>
32
+ </table>
33
+ <div class="greybox" style="position: relative; top: -10px">
34
+ FIFU settings don't work due 301 (Moved Permanently) POST followed by 404 (Not Found) GET.<br>
35
+ 1) open .htaccess file and replace 301 by 307;<br>
36
+ 2) restart Apache.<br>
37
+ </div>
38
+ </div>
39
+ <div class="box">
40
+ <table>
41
+ <tr>
42
+ <td style="border-bottom:none">2021-07-29</td>
43
+ <td style="border-bottom:none"><h3> Wordpress Automatic Plugin</h3></td>
44
+ <td style="border-bottom:none">plugin</td>
45
+ </tr>
46
+ </table>
47
+ <div class="greybox" style="position: relative; top: -10px">
48
+ Posts created by WP Automatic have no featured image. <br>
49
+ x) please contact its support, because WP Automatic is responsible for saving image URLs in FIFU custom fields.<br>
50
+ </div>
51
+ </div>
52
+ <div class="box">
53
+ <table>
54
+ <tr>
55
+ <td style="border-bottom:none">2021-07-05</td>
56
+ <td style="border-bottom:none"><h3> Facebook</h3></td>
57
+ <td style="border-bottom:none">social networking</td>
58
+ </tr>
59
+ </table>
60
+ <div class="greybox" style="position: relative; top: -10px">
61
+ Facebook doesn't share an INTERNAL featured image and the Sharing Debugger informs: "Provided og:image URL, ... could not be processed as an image because it has an invalid content type". <br>
62
+ 1) make sure the image can be embedded externally. Because if your site tries to protect the image, for instance redirecting to another address, the image may not be accessed by the social media.<br>
63
+ </div>
64
+ </div>
65
+ <div class="box">
66
+ <table>
67
+ <tr>
68
+ <td style="border-bottom:none">2021-06-28</td>
69
+ <td style="border-bottom:none"><h3> Octolooks Scrapes</h3></td>
70
+ <td style="border-bottom:none">plugin</td>
71
+ </tr>
72
+ </table>
73
+ <div class="greybox" style="position: relative; top: -10px">
74
+ Using external featured images. <br>
75
+ 1) access "Scrapes > All Scrapes > Actions > Edit > POST > CUSTOM FIELDS";<br>
76
+ 2) set "fifu_image_url" for "Name";<br>
77
+ 3) for "Value", click on the icon and select the featured image;<br>
78
+ 4) set "src" for "Attribute";<br>
79
+ 5) make sure "POST > FEATURED IMAGE > Value" is empty;<br>
80
+ 6) save.<br>
81
+ </div>
82
+ </div>
83
+ <div class="box">
84
+ <table>
85
+ <tr>
86
+ <td style="border-bottom:none">2021-06-23</td>
87
+ <td style="border-bottom:none"><h3> Domain</h3></td>
88
+ <td style="border-bottom:none">address</td>
89
+ </tr>
90
+ </table>
91
+ <div class="greybox" style="position: relative; top: -10px">
92
+ Images missing due domain change. <br>
93
+ 1) run this SQL command: UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'https://domain/', 'https://newdomain/') WHERE meta_key = 'fifu_image_url' AND meta_value LIKE '%//domain/%';<br>
94
+ 2) run Metadata > Clean Metadata;<br>
95
+ 3) enable Metadata > Image Metadata.<br>
96
+ </div>
97
+ </div>
98
+ <div class="box">
99
+ <table>
100
+ <tr>
101
+ <td style="border-bottom:none">2021-06-15</td>
102
+ <td style="border-bottom:none"><h3> Feed</h3></td>
103
+ <td style="border-bottom:none">XML</td>
104
+ </tr>
105
+ </table>
106
+ <div class="greybox" style="position: relative; top: -10px">
107
+ XML parsing error: duplicate attribute xmlns:media="http://search.yahoo.com/mrss/". <br>
108
+ 1) the first attribute is added by FIFU (Media RSS Tags) and the duplicated one by another component you have installed on your site, such as Rank Math SEO plugin. Find and disable the option that is adding the duplicated attribute, otherwise services like Google News may not find your images.<br>
109
+ </div>
110
+ </div>
111
+ <div class="box">
112
+ <table>
113
+ <tr>
114
+ <td style="border-bottom:none">2021-04-17</td>
115
+ <td style="border-bottom:none"><h3> Rey + Rey Core</h3></td>
116
+ <td style="border-bottom:none">theme + plugin</td>
117
+ </tr>
118
+ </table>
119
+ <div class="greybox" style="position: relative; top: -10px">
120
+ Product gallery doesn't work correctly.<br>
121
+ 1) enable "FIFU Settings > WooCommerce > FIFU Product Gallery";<br>
122
+ 2) access "Appearance > your theme > Customize > Additional CSS";<br>
123
+ 3) add:<br>
124
+ &nbsp;&nbsp;&nbsp;&nbsp;div.rey-productSummary {justify-content:unset !important}<br>
125
+ &nbsp;&nbsp;&nbsp;&nbsp;div.fifu-woo-gallery {padding: 20px !important}<br>
126
+ 4) publish.<br>
127
+ </div>
128
+ </div>
129
+ <div class="box">
130
+ <table>
131
+ <tr>
132
+ <td style="border-bottom:none">2021-04-03</td>
133
+ <td style="border-bottom:none"><h3> Woodmart</h3></td>
134
+ <td style="border-bottom:none">theme</td>
135
+ </tr>
136
+ </table>
137
+ <div class="greybox" style="position: relative; top: -10px">
138
+ Product gallery doesn't work correctly. Two possible solutions:<br>
139
+ a) run "FIFU Settings > Metadata > Save Image Dimensions";<br>
140
+ b) enable "FIFU Settings > WooCommerce > FIFU Product Gallery".
141
+ </div>
142
+ </div>
143
+ <div class="box">
144
+ <table>
145
+ <tr>
146
+ <td style="border-bottom:none">2021-02-24</td>
147
+ <td style="border-bottom:none"><h3> YITH WooCommerce Badge Management</h3></td>
148
+ <td style="border-bottom:none">plugin</td>
149
+ </tr>
150
+ </table>
151
+ <div class="greybox" style="position: relative; top: -10px">
152
+ Badge is not being displayed when FIFU Product Gallery is enabled:<br>
153
+ 1) access "Appearance > your theme > Customize > Additional CSS";<br>
154
+ 2) add:<br>
155
+ &nbsp;&nbsp;&nbsp;&nbsp;.yith-wcbm-badge {z-index: 11}<br>
156
+ 3) publish.<br>
157
+ </div>
158
+ </div>
159
+ <div class="box">
160
+ <table>
161
+ <tr>
162
+ <td style="border-bottom:none">2021-02-19</td>
163
+ <td style="border-bottom:none"><h3> Gillion</h3></td>
164
+ <td style="border-bottom:none">theme</td>
165
+ </tr>
166
+ </table>
167
+ <div class="greybox" style="position: relative; top: -10px">
168
+ Theme hover effects are blocking featured video commands:<br>
169
+ 1) access "Appearance > Gillion > Customize > Additional CSS";<br>
170
+ 2) add:<br>
171
+ &nbsp;&nbsp;&nbsp;&nbsp;.fifu_wrapper ~ a.post-lightbox {display: none !important;}<br>
172
+ &nbsp;&nbsp;&nbsp;&nbsp;div.post-thumbnail > a.post-overlay {display: none;}<br>
173
+ 3) publish.<br>
174
+ </div>
175
+ </div>
176
+ <div class="box">
177
+ <table>
178
+ <tr>
179
+ <td style="border-bottom:none">2021-01-12</td>
180
+ <td style="border-bottom:none"><h3> Avada</h3></td>
181
+ <td style="border-bottom:none">theme</td>
182
+ </tr>
183
+ </table>
184
+ <div class="greybox" style="position: relative; top: -10px">
185
+ Procut gallery has style issues:<br>
186
+ 1) access "Avada Settings > WooCommerce > WooCommerce Product Images Layout";<br>
187
+ 2) select "WooCommerce" instead of "Avada";<br>
188
+ 3) click on "Save Changes".<br>
189
+ </div>
190
+ </div>
191
+ <div class="box">
192
+ <table>
193
+ <tr>
194
+ <td style="border-bottom:none">2020-12-03</td>
195
+ <td style="border-bottom:none"><h3> Rehub</h3></td>
196
+ <td style="border-bottom:none">theme</td>
197
+ </tr>
198
+ </table>
199
+ <div class="greybox" style="position: relative; top: -10px">
200
+ Featured slider is too big for Rehub sticky bar:<br>
201
+ 1) access "Appearance > Rehub > Customize > Additional CSS";<br>
202
+ 2) add:<br>
203
+ &nbsp;&nbsp;&nbsp;&nbsp;div.float-panel-woo-image > div.fifu-slider {max-width: 100px;}<br>
204
+ 3) publish.<br>
205
+ </div>
206
+ </div>
207
+ <div class="box">
208
+ <table>
209
+ <tr>
210
+ <td style="border-bottom:none">2020-10-16</td>
211
+ <td style="border-bottom:none"><h3> Facebook</h3></td>
212
+ <td style="border-bottom:none">social networking</td>
213
+ </tr>
214
+ </table>
215
+ <div class="greybox" style="position: relative; top: -10px">
216
+ Facebook doesn't share a featured image:<br>
217
+ 1) access https://developers.facebook.com/tools/debug/;<br>
218
+ 2) enter your post URL in the field (Facebook will clean its cache);<br>
219
+ 3) if Facebook shows your featured image, try to share the post again;<br>
220
+ 4) but if Facebook finds a different image, you probably have another component (plugin/theme) that is creating an og:image tag for a default image. Find out the component and check if it's possible to disable the default image.
221
+ </div>
222
+ </div>
223
+ <div class="box">
224
+ <table>
225
+ <tr>
226
+ <td style="border-bottom:none">2020-10-05</td>
227
+ <td style="border-bottom:none"><h3> "Warning: ..."</h3></td>
228
+ <td style="border-bottom:none">message</td>
229
+ </tr>
230
+ </table>
231
+ <div class="greybox" style="position: relative; top: -10px">
232
+ Warning on frontend after activating FIFU. Two possible solutions:<br>
233
+ a) open wp-config.php and before "Happy publishing" line add:<br>
234
+ define('WP_DEBUG_DISPLAY', false);<br>
235
+ b) look for ".../themes/[slug]/..." or ".../plugins/[slug]/..." in the message. The slug refers to the component responsible for the warning. Then please contact its developer informing the message and also that you are using FIFU, a plugin for external featured images. Warnings are usually easy to solve and happen because the component wasn't expecting for an external featured image.<br>
236
+ </div>
237
+ </div>
238
+ <div class="box">
239
+ <table>
240
+ <tr>
241
+ <td style="border-bottom:none">2020-10-01</td>
242
+ <td style="border-bottom:none"><h3> Divi</h3></td>
243
+ <td style="border-bottom:none">theme</td>
244
+ </tr>
245
+ </table>
246
+ <div class="greybox" style="position: relative; top: -10px">
247
+ External featured images are not being shown:<br>
248
+ 1) deactivate "Divi > Theme Options > General > Enable Responsive Images".<br>
249
+ </div>
250
+ </div>
251
+ <div class="box">
252
+ <table>
253
+ <tr>
254
+ <td style="border-bottom:none">2020-09-23</td>
255
+ <td style="border-bottom:none"><h3> Facebook</h3></td>
256
+ <td style="border-bottom:none">social networking</td>
257
+ </tr>
258
+ </table>
259
+ <div class="greybox" style="position: relative; top: -10px">
260
+ The featured image is being cropped when the post is shared in a Facebook page:<br>
261
+ x) there is no local solution and the issue happens even with internal featured images. Facebook pages expect 600x314px images and it will automatically crop images with a different aspect ratio. You may contact Facebook support and ask for changes.<br>
262
+ </div>
263
+ </div>
264
+ <div class="box">
265
+ <table>
266
+ <tr>
267
+ <td style="border-bottom:none">2020-09-21</td>
268
+ <td style="border-bottom:none"><h3> WooCommerce</h3></td>
269
+ <td style="border-bottom:none">plugin</td>
270
+ </tr>
271
+ </table>
272
+ <div class="greybox" style="position: relative; top: -10px">
273
+ Zoom doesn't work:<br>
274
+ 1) it normally happens when you use small images. Your image dimensions should be greater than the gallery dimensions.<br>
275
+ </div>
276
+ </div>
277
+ <div class="box">
278
+ <table>
279
+ <tr>
280
+ <td style="border-bottom:none">2020-08-27</td>
281
+ <td style="border-bottom:none"><h3> WP Super Cache</h3></td>
282
+ <td style="border-bottom:none">plugin</td>
283
+ </tr>
284
+ </table>
285
+ <div class="greybox" style="position: relative; top: -10px">
286
+ Images not visible after cleaning and generating FIFU metadata:<br>
287
+ 1) click on "Delete Cache".<br>
288
+ </div>
289
+ </div>
290
+ <div class="box">
291
+ <table>
292
+ <tr>
293
+ <td style="border-bottom:none">2020-08-26</td>
294
+ <td style="border-bottom:none"><h3> WordPress</h3></td>
295
+ <td style="border-bottom:none"></td>
296
+ </tr>
297
+ </table>
298
+ <div class="greybox" style="position: relative; top: -10px">
299
+ The image URL is not in the feed:<br>
300
+ 1) enable "FIFU Settings > Social > Media RSS Tags";<br>
301
+ 2) for single posts (only) it's necessary to add "?withoutcomments=1" in the end of the feed URL.<br>
302
+ </div>
303
+ </div>
304
+ <div class="box">
305
+ <table>
306
+ <tr>
307
+ <td style="border-bottom:none">2020-08-25</td>
308
+ <td style="border-bottom:none"><h3> Flatsome</h3></td>
309
+ <td style="border-bottom:none">theme</td>
310
+ </tr>
311
+ </table>
312
+ <div class="greybox" style="position: relative; top: -10px">
313
+ WooCommerce lightbox doesn't work. Two possible solutions:<br>
314
+ a) run "FIFU Settings > Metadata > Save Image Dimensions";<br>
315
+ b) select "Flatsome > Customize > WooCommerce > Product Page > Gallery > Product Image Lightbox > Flatsome Lightbox".<br>
316
+ </div>
317
+ </div>
318
+ <div class="box">
319
+ <table>
320
+ <tr>
321
+ <td style="border-bottom:none">2020-08-13</td>
322
+ <td style="border-bottom:none"><h3> WooCommerce REST API</h3></td>
323
+ <td style="border-bottom:none">API</td>
324
+ </tr>
325
+ </table>
326
+ <div class="greybox" style="position: relative; top: -10px">
327
+ The import of hundreds of thousands of products isn't fast enough:<br>
328
+ 1) deactivate FIFU;<br>
329
+ 2) import the products using the API;<br>
330
+ 3) activate FIFU;<br>
331
+ 4) run Metadata > Clean Metadata;<br>
332
+ 5) enable Metadata > Image Metadata.<br>
333
+ </div>
334
+ </div>
335
+ <div class="box">
336
+ <table>
337
+ <tr>
338
+ <td style="border-bottom:none">2020-07-26</td>
339
+ <td style="border-bottom:none"><h3> Gema Lite</h3></td>
340
+ <td style="border-bottom:none">theme</td>
341
+ </tr>
342
+ </table>
343
+ <div class="greybox" style="position: relative; top: -10px">
344
+ Style issue with featured videos:<br>
345
+ 1) enable "FIFU Settings > Lazy Load";<br>
346
+ 2) disable "FIFU Settings > Video > Video Thumbnail";<br>
347
+ 3) access "Appearance > Gema Lite > Customize > Additional CSS";<br>
348
+ 4) add:<br>
349
+ &nbsp;&nbsp;&nbsp;&nbsp;div.entry-featured > img.fifu-video {width:100%;}<br>
350
+ &nbsp;&nbsp;&nbsp;&nbsp;div.card__image-wrap div {position:absolute;top:0;height:100%;}<br>
351
+ &nbsp;&nbsp;&nbsp;&nbsp;div.fifu_wrapper + img {display:none;};<br>
352
+ 5) publish.<br>
353
+ </div>
354
+ </div>
355
+ <div class="box">
356
+ <table>
357
+ <tr>
358
+ <td style="border-bottom:none">2020-06-18</td>
359
+ <td style="border-bottom:none"><h3> Unyson</h3></td>
360
+ <td style="border-bottom:none">plugin</td>
361
+ </tr>
362
+ </table>
363
+ <div class="greybox" style="position: relative; top: -10px">
364
+ "There has been a critical error on your website" message:<br>
365
+ 1) open "unyson/framework/helpers/class-fw-resize.php";<br>
366
+ 2) search for the line that contains "$saved['file']";<br>
367
+ 3) add "if(!is_array($saved))return;" immediately above that.<br>
368
+ </div>
369
+ </div>
370
+ <div class="box">
371
+ <table>
372
+ <tr>
373
+ <td style="border-bottom:none">2020-06-03</td>
374
+ <td style="border-bottom:none"><h3> Klb Shortcode</h3></td>
375
+ <td style="border-bottom:none">plugin</td>
376
+ </tr>
377
+ </table>
378
+ <div class="greybox" style="position: relative; top: -10px">
379
+ Featured image not shown on carousel:<br>
380
+ 1) open "klb-shortcode/inc/klb-shortcode.php";<br>
381
+ 2) search for "$imageresize = dealsdot_resize( $image_src";<br>
382
+ 3) add "$imageresize = $imageresize ? $imageresize : $image_src;" immediately below that.<br>
383
+ </div>
384
+ </div>
385
+ <div class="box">
386
+ <table>
387
+ <tr>
388
+ <td style="border-bottom:none">2020-06-01</td>
389
+ <td style="border-bottom:none"><h3> Zapier (+YouTube)</h3></td>
390
+ <td style="border-bottom:none">service</td>
391
+ </tr>
392
+ </table>
393
+ <div class="greybox" style="position: relative; top: -10px">
394
+ Setting featured video automatically:<br>
395
+ 1) access "FIFU Settings > Automatic > Auto set featured media from post content";<br>
396
+ 2) enable "use the found image/video as featured image";<br>
397
+ 3) enable "hide the image/video from content";<br>
398
+ 4) access "Zapier > Make a Zap", select YouTube as the first app and configure as you want;<br>
399
+ 5) select WordPress as the second app;<br>
400
+ 6) click on "Choose Action Event", select "Create Post" and "Continue";<br>
401
+ 7) select your "WordPress account" and "Continue";<br>
402
+ 8) on "Customize Post", click on "Content" and select "Embed URL";<br>
403
+ 9) put the "Embed URL" in an iframe tag: &lt;iframe src="Embed URL"&gt;&lt;/iframe&gt;<br>
404
+ </div>
405
+ </div>
406
+ <div class="box">
407
+ <table>
408
+ <tr>
409
+ <td style="border-bottom:none">2020-05-31</td>
410
+ <td style="border-bottom:none"><h3> Publisher</h3></td>
411
+ <td style="border-bottom:none">theme</td>
412
+ </tr>
413
+ </table>
414
+ <div class="greybox" style="position: relative; top: -10px">
415
+ The theme lightbox doesn't work:<br>
416
+ x) there is no solution for now. It seems the lightbox only works with image addresses (internal or external) that contains "/wp-content/uploads/". You may contact the theme developer and ask him to remove the restriction.<br>
417
+ </div>
418
+ </div>
419
+ <div class="box">
420
+ <table>
421
+ <tr>
422
+ <td style="border-bottom:none">2020-05-20</td>
423
+ <td style="border-bottom:none"><h3> Bimber</h3></td>
424
+ <td style="border-bottom:none">theme</td>
425
+ </tr>
426
+ </table>
427
+ <div class="greybox" style="position: relative; top: -10px">
428
+ Home page images have different heights:<br>
429
+ 1) enable "FIFU Settings > Featured image > Same Height";<br>
430
+ 2) access "Selector" tab and add two selectors: "ul.g1-featured-items" and "ul.g1-collection-items";<br>
431
+ 3) access "Size Ratio" tab and set "16:9".<br>
432
+ </div>
433
+ </div>
434
+ <div class="box">
435
+ <table>
436
+ <tr>
437
+ <td style="border-bottom:none">2020-05-17</td>
438
+ <td style="border-bottom:none"><h3> BuddyForms</h3></td>
439
+ <td style="border-bottom:none">plugin</td>
440
+ </tr>
441
+ </table>
442
+ <div class="greybox" style="position: relative; top: -10px">
443
+ Adding "featured image" field to the form:<br>
444
+ 1) open the form editor;<br>
445
+ 2) select "Form Builder > Select Field Type > Url";<br>
446
+ 3) click on "+ Add Field" button;<br>
447
+ 4) a new field "Url" will be shown. Click on "Edit";<br>
448
+ 5) set "Featured image" for "Label";<br>
449
+ 6) set "Image URL" for "Description";<br>
450
+ 7) click on "Advanced";<br>
451
+ 8) set "fifu_image_url" for "Slug";<br>
452
+ 9) update.<br>
453
+ * for a "featured video" field, use the same steps above, but replacing "image" by "video".
454
+ </div>
455
+ </div>
456
+ <div class="box">
457
+ <table>
458
+ <tr>
459
+ <td style="border-bottom:none">2020-05-10</td>
460
+ <td style="border-bottom:none"><h3> Avada</h3></td>
461
+ <td style="border-bottom:none">theme</td>
462
+ </tr>
463
+ </table>
464
+ <div class="greybox" style="position: relative; top: -10px">
465
+ The video controls don't work on WooCommerce product gallery:<br>
466
+ 1) access "Appearance > Avada > Customize > Additional CSS";<br>
467
+ 2) add ".avada-product-gallery .avada-product-gallery-lightbox-trigger {position:unset;}";<br>
468
+ 3) publish.<br>
469
+ </div>
470
+ </div>
471
+ <div class="box">
472
+ <table>
473
+ <tr>
474
+ <td style="border-bottom:none">2020-05-09</td>
475
+ <td style="border-bottom:none"><h3> Post Sliders & Post Grids</h3></td>
476
+ <td style="border-bottom:none">plugin</td>
477
+ </tr>
478
+ </table>
479
+ <div class="greybox" style="position: relative; top: -10px">
480
+ The post grid doesn't show external featured images:<br>
481
+ x) there is no solution for now. "Post Sliders & Post Grids" only shows a featured image if that is stored in the media library. You may contact the author or install an alternative plugin, like <a href="https://wordpress.org/plugins/content-views-query-and-display-post-page/">this</a>.<br>
482
+ </div>
483
+ </div>
484
+ <div class="box">
485
+ <table>
486
+ <tr>
487
+ <td style="border-bottom:none">2020-05-01</td>
488
+ <td style="border-bottom:none"><h3> WooCommerce</h3></td>
489
+ <td style="border-bottom:none">plugin</td>
490
+ </tr>
491
+ </table>
492
+ <div class="greybox" style="position: relative; top: -10px">
493
+ Product gallery thumbnails have different heights:<br>
494
+ 1) enable "FIFU Settings > Featured image > Same Height";<br>
495
+ 2) access "Selector" tab and add "ol.flex-control-thumbs".<br>
496
+ </div>
497
+ </div>
498
+ <div class="box">
499
+ <table>
500
+ <tr>
501
+ <td style="border-bottom:none">2020-04-20</td>
502
+ <td style="border-bottom:none"><h3> Elementor</h3></td>
503
+ <td style="border-bottom:none">plugin</td>
504
+ </tr>
505
+ </table>
506
+ <div class="greybox" style="position: relative; top: -10px">
507
+ Video controls not accessible for "Posts" element, when configured as "Layout > Skin > Cards":<br>
508
+ 1) access "Style > Card > Hover Effect";<br>
509
+ 2) select "None".<br>
510
+ </div>
511
+ </div>
512
+ <div class="box">
513
+ <table>
514
+ <tr>
515
+ <td style="border-bottom:none">2020-04-03</td>
516
+ <td style="border-bottom:none"><h3> Elementor</h3></td>
517
+ <td style="border-bottom:none">plugin</td>
518
+ </tr>
519
+ </table>
520
+ <div class="greybox" style="position: relative; top: -10px">
521
+ Showing an external featured image/video:<br>
522
+ 1) open the default WordPress editor;<br>
523
+ 2) add the image URL into "Featured image" field (or the video URL into "Featured video");<br>
524
+ 3) click on "Edit with Elementor" button;<br>
525
+ 4) search for the "Featured Image" widget;<br>
526
+ 5) just drag the widget (no edition required).<br>
527
+ </div>
528
+ </div>
529
+ <div class="box">
530
+ <table>
531
+ <tr>
532
+ <td style="border-bottom:none">2020-04-02</td>
533
+ <td style="border-bottom:none"><h3> WordPress</h3></td>
534
+ <td style="border-bottom:none"></td>
535
+ </tr>
536
+ </table>
537
+ <div class="greybox" style="position: relative; top: -10px">
538
+ Removing the references to the internal featured images for all posts that have an external featured image as well:<br>
539
+ 1) run this SQL command: DELETE FROM wp_postmeta WHERE meta_key = '_thumbnail_id' AND post_id IN (SELECT post_id FROM (SELECT post_id FROM wp_postmeta WHERE meta_key = 'fifu_image_url') AS x);<br>
540
+ 2) enable "FIFU settings > Metadata > Clean Metadata";<br>
541
+ 3) enable "Image Metadata".<br>
542
+ </div>
543
+ </div>
544
+ <div class="box">
545
+ <table>
546
+ <tr>
547
+ <td style="border-bottom:none">2020-03-10</td>
548
+ <td style="border-bottom:none"><h3> Orienko</h3></td>
549
+ <td style="border-bottom:none">theme</td>
550
+ </tr>
551
+ </table>
552
+ <div class="greybox" style="position: relative; top: -10px">
553
+ Video lightbox isn't shown ("n.fancybox.getInstance is not a function" error):<br>
554
+ 1) access "orienko/includes/head-media.php";<br>
555
+ 2) remove the line that contains "wp_enqueue_script( 'fancybox".<br>
556
+ </div>
557
+ </div>
558
+ <div class="box">
559
+ <table>
560
+ <tr>
561
+ <td style="border-bottom:none">2020-03-09</td>
562
+ <td style="border-bottom:none"><h3> Google Chrome | Firefox</h3></td>
563
+ <td style="border-bottom:none">web browsers</td>
564
+ </tr>
565
+ </table>
566
+ <div class="greybox" style="position: relative; top: -10px">
567
+ Avoiding "Connection not secure" message:<br>
568
+ 1) use only https image URLs.<br>
569
+ </div>
570
+ </div>
571
+ <div class="box">
572
+ <table>
573
+ <tr>
574
+ <td style="border-bottom:none">2020-03-04</td>
575
+ <td style="border-bottom:none"><h3> Essential Grid</h3></td>
576
+ <td style="border-bottom:none">plugin</td>
577
+ </tr>
578
+ </table>
579
+ <div class="greybox" style="position: relative; top: -10px">
580
+ Showing external videos:<br>
581
+ 1) access "Ess. Grid > Editor / Preview";<br>
582
+ 2) for each video access "Edit Post Meta > Choose Specific Skin", select "YoutubeStream" or "VimeoStream" and click on "Save Post Meta".<br>
583
+ </div>
584
+ </div>
585
+ <div class="box">
586
+ <table>
587
+ <tr>
588
+ <td style="border-bottom:none">2019-01-30</td>
589
+ <td style="border-bottom:none"><h3>WooCommerce</h3></td>
590
+ <td style="border-bottom:none">plugin</td>
591
+ </tr>
592
+ </table>
593
+ <div class="greybox" style="position: relative; top: -10px">
594
+ Adding external "Product Image" and "Product Gallery" via SQL:<br>
595
+ 1) enable "FIFU Settings > Metadata > Schedule Metadata Generation";<br>
596
+ 2) run the SQL. Example: "insert into wp_postmeta (post_id, meta_key, meta_value) values (12345, 'fifu_list_url', 'URL1|URL2|URL3|URL4')"<br>
597
+ * the first URL is for the featured image and the others for the gallery<br>
598
+ </div>
599
+ </div>
600
+ <div class="box">
601
+ <table>
602
+ <tr>
603
+ <td style="border-bottom:none">2020-01-19</td>
604
+ <td style="border-bottom:none"><h3>WP All Import</h3></td>
605
+ <td style="border-bottom:none">plugin</td>
606
+ </tr>
607
+ </table>
608
+ <div class="greybox" style="position: relative; top: -10px">
609
+ Importing Variable Products to WooCommerce:<br>
610
+ 1) you should choose one of these options during the import:<br>
611
+ - "All my variable products have SKUs or some other unique identifier. Each variation is linked to its parent with its parent's SKU or other unique identifier.";<br>
612
+ - "All variations for a particular product have the same title as the parent product."<br>
613
+ Options where the parent is created automatically won't work well.
614
+ </div>
615
+ <div class="greybox" style="position: relative; top: -10px">
616
+ Avoiding updates on unchanged image data:<br>
617
+ 1) access "WP All Import > Import Settings";<br>
618
+ 2) select "Update existing posts/products with changed data in your file > Choose which data to update";<br>
619
+ 3) uncheck "Images" (otherwise WP All Import will delete the image metadata and FIFU will need to create that again);<br>
620
+ 4) select "Custom Fields > Update only these Custom Fields, leave the rest alone".<br>
621
+ </div>
622
+ </div>
623
+ <div class="box">
624
+ <table>
625
+ <tr>
626
+ <td style="border-bottom:none">2020-01-18</td>
627
+ <td style="border-bottom:none"><h3>Ajax Load More</h3></td>
628
+ <td style="border-bottom:none">plugin</td>
629
+ </tr>
630
+ </table>
631
+ <div class="greybox" style="position: relative; top: -10px">
632
+ Loading external featured videos:<br>
633
+ 1) check "Ajax Load More > Settings > Disable CSS".
634
+ </div>
635
+ </div>
636
+ <div class="box">
637
+ <table>
638
+ <tr>
639
+ <td style="border-bottom:none">2020-01-17</td>
640
+ <td style="border-bottom:none"><h3>Multisite Post Duplicator</h3></td>
641
+ <td style="border-bottom:none">plugin</td>
642
+ </tr>
643
+ </table>
644
+ <div class="greybox" style="position: relative; top: -10px">
645
+ Duplicating post and external featured image:<br>
646
+ 1) enable "FIFU Settings > Metadata > Schedule Metadata Generation";<br>
647
+ 2) access "Multisite Post Duplicator Settings";<br>
648
+ 3) disable "Copy featured image when duplicating";<br>
649
+ 4) disable "Copy post content images to destination media library";<br>
650
+ 5) set "_thumbnail_id" for "Post Meta to ignore".
651
+ </div>
652
+ </div>
653
+ <div class="box">
654
+ <table>
655
+ <tr>
656
+ <td style="border-bottom:none">2019-12-22</td>
657
+ <td style="border-bottom:none"><h3>Jetpack</h3></td>
658
+ <td style="border-bottom:none">plugin</td>
659
+ </tr>
660
+ </table>
661
+ <div class="greybox" style="position: relative; top: -10px">
662
+ Showing external images on "Related Posts":<br>
663
+ x) there is no local solution. Jetpack Related Posts documentation informs: "we do all the analysis, processing, and serving from our cloud". It means Jetpack would need to adapt its web service to work with the images provided by FIFU. So you may contact Jetpack support or install an alternative plugin for Related Posts, like <a href="https://wordpress.org/plugins/related-posts-thumbnails/">this</a>.<br>
664
+ </div>
665
+ </div>
666
+ <div class="box">
667
+ <table>
668
+ <tr>
669
+ <td style="border-bottom:none">2019-12-12</td>
670
+ <td style="border-bottom:none"><h3>PHP</h3></td>
671
+ <td style="border-bottom:none">programming language</td>
672
+ </tr>
673
+ </table>
674
+ <div class="greybox" style="position: relative; top: -10px">
675
+ Fixing fatal error "Allowed memory size of [...] bytes exhausted (tried to allocate [...] bytes) in /var/www/html/wp-includes/wp-db.php":<br>
676
+ 1) open /var/www/html/wp-config.php file;<br>
677
+ 2) add this code before "Happy publishing" line: define('WP_MEMORY_LIMIT', '2048M');<br>
678
+ </div>
679
+ <div class="greybox" style="position: relative; top: -10px">
680
+ Fixing fatal error "Maximum execution time of 30 seconds exceeded in /var/www/html/wp-includes/wp-db.php":<br>
681
+ 1) open /var/www/html/wp-config.php file;<br>
682
+ 2) add this code before "Happy publishing" line: set_time_limit(1800);<br>
683
+ </div>
684
+ </div>
685
+ <div class="box">
686
+ <table>
687
+ <tr>
688
+ <td style="border-bottom:none">2019-10-28</td>
689
+ <td style="border-bottom:none"><h3>https</h3></td>
690
+ <td style="border-bottom:none">protocol</td>
691
+ </tr>
692
+ </table>
693
+ <div class="greybox" style="position: relative; top: -10px">
694
+ Replacing http URLs by https:<br>
695
+ 1) run this SQL command: UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://', 'https://') WHERE meta_key = 'fifu_image_url' AND meta_value LIKE '%site.com%';<br>
696
+ 2) run "FIFU settings > Metadata > Clean Metadata";<br>
697
+ 3) enable "Image Metadata".<br>
698
+ * replace site.com by the domain of the URLs you want to update
699
+ </div>
700
+ </div>
701
+ <div class="box">
702
+ <table>
703
+ <tr>
704
+ <td style="border-bottom:none">2019-10-09</td>
705
+ <td style="border-bottom:none"><h3>Ecome</h3></td>
706
+ <td style="border-bottom:none">theme</td>
707
+ </tr>
708
+ </table>
709
+ <div class="greybox" style="position: relative; top: -10px">
710
+ Showing the external featured images:<br>
711
+ 1) open "ecome/framework/framework.php";<br>
712
+ 2) search for and remove "&& file_exists( $actual_file_path )".<br>
713
+ </div>
714
+ </div>
715
+ <div class="box">
716
+ <table>
717
+ <tr>
718
+ <td style="border-bottom:none">2019-10-02</td>
719
+ <td style="border-bottom:none"><h3>WPML Multilingual CMS + Translation Management</h3></td>
720
+ <td style="border-bottom:none">plugins</td>
721
+ </tr>
722
+ </table>
723
+ <div class="greybox" style="position: relative; top: -10px">
724
+ Copying the external featured image to the translation:<br>
725
+ 1) access "WPML > Settings > Custom Fields Translation";<br>
726
+ 2) search for "fifu_image_url", choose "Copy" and save;<br>
727
+ 3) if you use FIFU premium, enable "Metadata > Schedule Metadata Generation". That's all;<br>
728
+ 4) but if you use the free version, after the translation post is created, access the post editor and click on "Update" button.<br>
729
+ </div>
730
+ </div>
731
+ <div class="box">
732
+ <table>
733
+ <tr>
734
+ <td style="border-bottom:none">2019-09-27</td>
735
+ <td style="border-bottom:none"><h3>Nelio External Featured Image (discontinued)</h3></td>
736
+ <td style="border-bottom:none">plugin</td>
737
+ </tr>
738
+ </table>
739
+ <div class="greybox" style="position: relative; top: -10px">
740
+ Importing image URLs to FIFU:<br>
741
+ 0) make a backup (you might want to revert the changes later);<br>
742
+ 1) deactivate Nelio;<br>
743
+ 2) run this SQL command: INSERT INTO wp_postmeta (post_id, meta_key, meta_value) SELECT * FROM (SELECT post_id, 'fifu_image_url' AS meta_key, SUBSTRING_INDEX(SUBSTRING_INDEX(meta_value, '"', 2), '"', -1) AS meta_value FROM wp_postmeta WHERE meta_key = '_nelioefi_first_image') pm WHERE meta_value <> '';<br>
744
+ 3) run "FIFU settings > Metadata > Clean Metadata";<br>
745
+ 4) enable "Image Metadata".<br>
746
+ </div>
747
+ </div>
748
+ <div class="box">
749
+ <table>
750
+ <tr>
751
+ <td style="border-bottom:none">2019-09-25</td>
752
+ <td style="border-bottom:none"><h3>WP Telegram (Auto Post and Notifications)</h3></td>
753
+ <td style="border-bottom:none">plugin</td>
754
+ </tr>
755
+ </table>
756
+ <div class="greybox" style="position: relative; top: -10px">
757
+ Sharing external featured images on Telegram:<br>
758
+ 1) just enable "Featured Image" toggle on WP Telegram.<br>
759
+ </div>
760
+ </div>
761
+ <div class="box">
762
+ <table>
763
+ <tr>
764
+ <td style="border-bottom:none">2019-09-13</td>
765
+ <td style="border-bottom:none"><h3>Toolset Forms + Toolset Types</h3></td>
766
+ <td style="border-bottom:none">plugins</td>
767
+ </tr>
768
+ </table>
769
+ <div class="greybox" style="position: relative; top: -10px">
770
+ Adding "Featured image" field to an external post form:<br>
771
+ 1) add a new "Custom Fields Group";<br>
772
+ 2) add a new "Field";<br>
773
+ 3) set "fifu_image_url" for "Field slug".<br>
774
+ </div>
775
+ </div>
776
+ </div>
777
+ </ul>
778
+ </div>
779
+ </div>
admin/menu.php CHANGED
@@ -7,7 +7,7 @@ define('FIFU_SLUG', 'featured-image-from-url');
7
  add_action('admin_menu', 'fifu_insert_menu');
8
 
9
  function fifu_insert_menu() {
10
- if (strpos($_SERVER['REQUEST_URI'], 'featured-image-from-url') !== false) {
11
  wp_enqueue_script('font-awesome', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/js/all.min.js');
12
  wp_enqueue_style('jquery-ui-style1', 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css');
13
  wp_enqueue_style('jquery-ui-style2', 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.structure.min.css');
@@ -19,16 +19,61 @@ function fifu_insert_menu() {
19
  wp_enqueue_script('jquery-block-ui', 'https://cdnjs.cloudflare.com/ajax/libs/jquery.blockUI/2.70/jquery.blockUI.min.js');
20
 
21
  wp_enqueue_script('fifu-rest-route-js', plugins_url('/html/js/rest-route.js', __FILE__), array('jquery'), fifu_version_number());
 
 
 
 
 
 
 
22
  }
23
 
24
  add_menu_page('Featured Image from URL', 'Featured Image from URL', 'manage_options', 'featured-image-from-url', 'fifu_get_menu_html', 'dashicons-camera', 57);
25
  add_submenu_page('featured-image-from-url', 'FIFU Settings', __('Settings'), 'manage_options', 'featured-image-from-url');
 
 
26
  add_submenu_page('featured-image-from-url', 'FIFU Status', __('Status'), 'manage_options', 'fifu-support-data', 'fifu_support_data');
27
  add_submenu_page('featured-image-from-url', 'FIFU Pro', __('<a href="https://fifu.app/" target="_blank"><div style="padding:5px;color:white;background-color:#1da867">Upgrade to <b>PRO</b></div></a>'), 'manage_options', null, null);
28
 
29
  add_action('admin_init', 'fifu_get_menu_settings');
30
  }
31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  function fifu_support_data() {
33
  // css
34
  wp_enqueue_style('fifu-base-ui-css', plugins_url('/html/css/base-ui.css', __FILE__), array(), fifu_version_number());
7
  add_action('admin_menu', 'fifu_insert_menu');
8
 
9
  function fifu_insert_menu() {
10
+ if (strpos($_SERVER['REQUEST_URI'], 'featured-image-from-url') !== false || strpos($_SERVER['REQUEST_URI'], 'fifu') !== false) {
11
  wp_enqueue_script('font-awesome', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/js/all.min.js');
12
  wp_enqueue_style('jquery-ui-style1', 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css');
13
  wp_enqueue_style('jquery-ui-style2', 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.structure.min.css');
19
  wp_enqueue_script('jquery-block-ui', 'https://cdnjs.cloudflare.com/ajax/libs/jquery.blockUI/2.70/jquery.blockUI.min.js');
20
 
21
  wp_enqueue_script('fifu-rest-route-js', plugins_url('/html/js/rest-route.js', __FILE__), array('jquery'), fifu_version_number());
22
+
23
+ // register custom variables for the AJAX script
24
+ wp_localize_script('fifu-rest-route-js', 'fifuScriptVars', [
25
+ 'restUrl' => esc_url_raw(rest_url()),
26
+ 'homeUrl' => esc_url_raw(home_url()),
27
+ 'nonce' => wp_create_nonce('wp_rest'),
28
+ ]);
29
  }
30
 
31
  add_menu_page('Featured Image from URL', 'Featured Image from URL', 'manage_options', 'featured-image-from-url', 'fifu_get_menu_html', 'dashicons-camera', 57);
32
  add_submenu_page('featured-image-from-url', 'FIFU Settings', __('Settings'), 'manage_options', 'featured-image-from-url');
33
+ add_submenu_page('featured-image-from-url', 'FIFU Cloud', __('Cloud'), 'manage_options', 'fifu-cloud', 'fifu_cloud');
34
+ add_submenu_page('featured-image-from-url', 'FIFU Troubleshooting', __('Troubleshooting'), 'manage_options', 'fifu-troubleshooting', 'fifu_troubleshooting');
35
  add_submenu_page('featured-image-from-url', 'FIFU Status', __('Status'), 'manage_options', 'fifu-support-data', 'fifu_support_data');
36
  add_submenu_page('featured-image-from-url', 'FIFU Pro', __('<a href="https://fifu.app/" target="_blank"><div style="padding:5px;color:white;background-color:#1da867">Upgrade to <b>PRO</b></div></a>'), 'manage_options', null, null);
37
 
38
  add_action('admin_init', 'fifu_get_menu_settings');
39
  }
40
 
41
+ function fifu_cloud() {
42
+ flush();
43
+
44
+ $fifu = fifu_get_strings_settings();
45
+ $fifucloud = fifu_get_strings_cloud();
46
+
47
+ // css and js
48
+ wp_enqueue_script('fifu-cookie', 'https://cdnjs.cloudflare.com/ajax/libs/js-cookie/latest/js.cookie.min.js');
49
+ wp_enqueue_style('fifu-menu-su-css', plugins_url('/html/css/menu-su.css', __FILE__), array(), fifu_version_number());
50
+ wp_enqueue_script('fifu-menu-su-js', plugins_url('/html/js/menu-su.js', __FILE__), array('jquery'), fifu_version_number());
51
+
52
+ wp_enqueue_style('fifu-base-ui-css', plugins_url('/html/css/base-ui.css', __FILE__), array(), fifu_version_number());
53
+ wp_enqueue_style('fifu-menu-css', plugins_url('/html/css/menu.css', __FILE__), array(), fifu_version_number());
54
+ wp_enqueue_script('fifu-cloud-js', plugins_url('/html/js/cloud.js', __FILE__), array('jquery'), fifu_version_number());
55
+
56
+ wp_localize_script('fifu-cloud-js', 'fifuScriptCloudVars', [
57
+ 'woocommerce' => class_exists('WooCommerce'),
58
+ 'availableImages' => fifu_db_count_available_images(),
59
+ ]);
60
+
61
+ include 'html/cloud.html';
62
+ }
63
+
64
+ function fifu_troubleshooting() {
65
+ flush();
66
+
67
+ $fifu = fifu_get_strings_settings();
68
+
69
+ // css and js
70
+ wp_enqueue_style('fifu-base-ui-css', plugins_url('/html/css/base-ui.css', __FILE__), array(), fifu_version_number());
71
+ wp_enqueue_style('fifu-menu-css', plugins_url('/html/css/menu.css', __FILE__), array(), fifu_version_number());
72
+ wp_enqueue_script('fifu-troubleshooting-js', plugins_url('/html/js/troubleshooting.js', __FILE__), array('jquery'), fifu_version_number());
73
+
74
+ include 'html/troubleshooting.html';
75
+ }
76
+
77
  function fifu_support_data() {
78
  // css
79
  wp_enqueue_style('fifu-base-ui-css', plugins_url('/html/css/base-ui.css', __FILE__), array(), fifu_version_number());
admin/meta-box.php CHANGED
@@ -22,8 +22,8 @@ function remove_metaboxes() {
22
  global $post;
23
  $url = get_post_meta($post->ID, 'fifu_image_url', true);
24
  if ($url) {
25
- remove_meta_box('postimagediv', 'product', 'normal');
26
- remove_meta_box('woocommerce-product-images', 'product', 'normal');
27
  }
28
  }
29
 
@@ -122,7 +122,11 @@ function fifu_remove_first_image($data, $postarr) {
122
  return str_replace($img, fifu_hide_media($img), $data);
123
  }
124
 
 
125
  function fifu_has_properties() {
 
 
 
126
  foreach ($_POST as $key => $value) {
127
  if (strpos($key, 'fifu') !== false)
128
  return true;
@@ -198,9 +202,11 @@ function fifu_save_properties($post_id) {
198
  function fifu_save_dimensions($att_id, $width, $height) {
199
  if (!$att_id || !$width || !$height)
200
  return;
 
201
  $metadata = null;
202
  $metadata['width'] = $width;
203
  $metadata['height'] = $height;
 
204
  wp_update_attachment_metadata($att_id, $metadata);
205
  }
206
 
22
  global $post;
23
  $url = get_post_meta($post->ID, 'fifu_image_url', true);
24
  if ($url) {
25
+ remove_meta_box('postimagediv', 'product', 'side');
26
+ // remove_meta_box('woocommerce-product-images', 'product', 'side');
27
  }
28
  }
29
 
122
  return str_replace($img, fifu_hide_media($img), $data);
123
  }
124
 
125
+ // for wp all import: avoid duplicated images
126
  function fifu_has_properties() {
127
+ if (fifu_is_ol_scrapes_active())
128
+ return true;
129
+
130
  foreach ($_POST as $key => $value) {
131
  if (strpos($key, 'fifu') !== false)
132
  return true;
202
  function fifu_save_dimensions($att_id, $width, $height) {
203
  if (!$att_id || !$width || !$height)
204
  return;
205
+
206
  $metadata = null;
207
  $metadata['width'] = $width;
208
  $metadata['height'] = $height;
209
+
210
  wp_update_attachment_metadata($att_id, $metadata);
211
  }
212
 
admin/strings.php CHANGED
@@ -128,12 +128,12 @@ function fifu_get_strings_settings() {
128
 
129
  // chrome
130
  $fifu['chrome']['link'] = function() {
131
- _e("Chrome Extension available", FIFU_SLUG);
132
  };
133
 
134
  // referral
135
  $fifu['referral']['link'] = function() {
136
- _e("Affiliate program: earn money recommending this plugin", FIFU_SLUG);
137
  };
138
 
139
  // messages
@@ -1825,3 +1825,149 @@ function fifu_get_strings_help() {
1825
 
1826
  return $fifu;
1827
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
 
129
  // chrome
130
  $fifu['chrome']['link'] = function() {
131
+ _e("Chrome extension", FIFU_SLUG);
132
  };
133
 
134
  // referral
135
  $fifu['referral']['link'] = function() {
136
+ _e("Affiliate program", FIFU_SLUG);
137
  };
138
 
139
  // messages
1825
 
1826
  return $fifu;
1827
  }
1828
+
1829
+ function fifu_get_strings_cloud() {
1830
+ $fifu = array();
1831
+
1832
+ // title
1833
+ $fifu['title']['price'] = function() {
1834
+ return _e("Pricing", FIFU_SLUG);
1835
+ };
1836
+ $fifu['title']['signup'] = function() {
1837
+ return _e("Sign up", FIFU_SLUG);
1838
+ };
1839
+ $fifu['title']['login'] = function() {
1840
+ return _e("Log in", FIFU_SLUG);
1841
+ };
1842
+ $fifu['title']['logout'] = function() {
1843
+ return _e("Log out", FIFU_SLUG);
1844
+ };
1845
+ $fifu['title']['add'] = function() {
1846
+ return _e("Send to Cloud", FIFU_SLUG);
1847
+ };
1848
+ $fifu['title']['delete'] = function() {
1849
+ return _e("Delete from Cloud", FIFU_SLUG);
1850
+ };
1851
+ $fifu['title']['media'] = function() {
1852
+ return _e("Convert to FIFU", FIFU_SLUG);
1853
+ };
1854
+ $fifu['title']['waiting'] = function() {
1855
+ return _e("Waiting list", FIFU_SLUG);
1856
+ };
1857
+ $fifu['title']['tester'] = function() {
1858
+ return _e("Beta tester", FIFU_SLUG);
1859
+ };
1860
+
1861
+ // tabs
1862
+ $fifu['tabs']['welcome'] = function() {
1863
+ return _e("Welcome", FIFU_SLUG);
1864
+ };
1865
+ $fifu['tabs']['login'] = function() {
1866
+ return _e("Log in", FIFU_SLUG);
1867
+ };
1868
+ $fifu['tabs']['send'] = function() {
1869
+ return _e("Send", FIFU_SLUG);
1870
+ };
1871
+ $fifu['tabs']['delete'] = function() {
1872
+ return _e("Delete", FIFU_SLUG);
1873
+ };
1874
+ $fifu['tabs']['media'] = function() {
1875
+ return _e("Media library", FIFU_SLUG);
1876
+ };
1877
+
1878
+ // support
1879
+ $fifu['support']['whats'] = function() {
1880
+ _e("FIFU Cloud is a cloud service that stores your images in the Google Cloud infrastructure. The images are not only saved, but optimized and quickly served from the global Google Cloud Storage network. Thumbnails are automatically created for each image and all are served in webp format.", FIFU_SLUG);
1881
+ };
1882
+ $fifu['support']['save'] = function() {
1883
+ _e("Never lose an image again");
1884
+ };
1885
+ $fifu['support']['fast'] = function() {
1886
+ _e("Images loaded much faster");
1887
+ };
1888
+ $fifu['support']['process'] = function() {
1889
+ _e("Images processed in the cloud");
1890
+ };
1891
+ $fifu['support']['price'] = function() {
1892
+ _e("Pay per stored image");
1893
+ };
1894
+ $fifu['support']['save-desc'] = function() {
1895
+ _e("Image sources may remove their images or change their image URLs periodically due to an internal restructuring or even in order to prevent their images from being embedded on other websites. When images are deleted or their URLs change, websites that were embedding those images are seriously impacted because the images are lost and cannot be restored. FIFU Cloud solves that by saving your embedded images to the cloud and providing fixed image URLs to access them. Current URLs will be replaced by FIFU Cloud URLs, in a process that can be reverted.");
1896
+ };
1897
+ $fifu['support']['fast-desc'] = function() {
1898
+ _e("A big disadvantage of having external images embedded on your website is that you don't have thumbnails. Without thumbnails, your website loads the same huge image file on desktop or mobile, post or homepage. And sometimes the image is not optimized or is hosted on a slow server. FIFU Cloud solves all those problems by storing and serving optimized thumbnails from a fast CDN. Your visitors receive on each accessed page only the smallest image files necessary to display the images without quality loss. And the smaller the files, the faster the images are rendered.");
1899
+ };
1900
+ $fifu['support']['process-desc'] = function() {
1901
+ _e("Websites were not made to process images. But when you save an image in the media library, the WordPress core and even your theme and plugins start threads to process the image locally, converting, duplicating, rotating, resizing, cropping, compressing, etc. Depending on the number of images, it can take days and eventually the website needs to repeat the whole process again. It consumes a lot of storage, memory and processing, which can make the website slow for the users. But FIFU Cloud doesn't use your computing resources. We process your images 100% in Google Cloud servers. The power of the cloud allows us to process and store thousands of images simultaneously in seconds.");
1902
+ };
1903
+ $fifu['support']['price-desc'] = function() {
1904
+ _e("Similar cloud services often charge for the amount of hits to the images. Or they sell static plans where you pay for the amount of storage available, even if unused. But FIFU Cloud charges only for the average amount of images stored, every 30-day period. You don't pay for thumbnails. Example: on the first day, you stored 1000 images; ten days later, you deleted them all; ten days later, you added 1100, which were stored for ten days. So, on average, you used 700 images per day in a 30-day period and you will pay $3.50. If there are no changes in the next period, the average will be 1100 and the paid value will be $4.95. And if in the following period you remove all the images, there will be no cost.");
1905
+ };
1906
+ $fifu['support']['price-desc2'] = function() {
1907
+ _e("Similar cloud services often charge for the amount of hits to the images. Or they sell static plans where you pay for the amount of storage available, even if unused. But FIFU Cloud will charge only for the average amount of images stored, every 30-day period. You don't pay for thumbnails. Example: on the first day, you stored 1000 images; ten days later, you deleted them all; ten days later, you added 1100, which were stored for ten days. So, on average, you used 700 images per day in a 30-day period and you only pay for that. If there are no changes in the next period, the average will be 1100 and the paid value increases. And if in the following period you remove all the images, there will be no cost.");
1908
+ };
1909
+
1910
+ // pricing
1911
+ $fifu['pricing']['table']['quantity'] = function() {
1912
+ _e("Quantity of images");
1913
+ };
1914
+ $fifu['pricing']['desc'] = function() {
1915
+ _e("You pay for the average amount of images stored in FIFU Cloud, every 30-day period.");
1916
+ };
1917
+ $fifu['pricing']['thumbnails'] = function() {
1918
+ _e("You don't pay for the multiple image thumbnails created automatically by the service. Consider only the amount of images you sent to FIFU Cloud.");
1919
+ };
1920
+ $fifu['pricing']['example'] = function() {
1921
+ _e("Price calculation example");
1922
+ };
1923
+ $fifu['pricing']['table']['interval'] = function() {
1924
+ _e("30-day period interval");
1925
+ };
1926
+ $fifu['pricing']['table']['days'] = function() {
1927
+ _e("Number of days");
1928
+ };
1929
+ $fifu['pricing']['table']['stored'] = function() {
1930
+ _e("Quantity of images in FIFU Cloud");
1931
+ };
1932
+ $fifu['pricing']['table']['average'] = function() {
1933
+ _e("30-day average usage");
1934
+ };
1935
+ $fifu['pricing']['table']['price'] = function() {
1936
+ _e("Price per image");
1937
+ };
1938
+ $fifu['pricing']['table']['total'] = function() {
1939
+ _e("Total price");
1940
+ };
1941
+ $fifu['pricing']['suggestion']['total'] = function() {
1942
+ _e("Images found on your website");
1943
+ };
1944
+ $fifu['pricing']['suggestion']['question'] = function() {
1945
+ _e("What would be a fair price to FIFU Cloud optimize, store and serve all your images?");
1946
+ };
1947
+ $fifu['pricing']['suggestion']['button'] = function() {
1948
+ _e("suggest");
1949
+ };
1950
+
1951
+ // media
1952
+ $fifu['media']['desc'] = function() {
1953
+ _e("Before sending internal images to FIFU Cloud, the URLs need to be copied to FIFU custom fields, clicking on \"convert\" button. It is highly recommended to have a backup of the database, because some post metadata will be replaced, making FIFU responsible for displaying the images. Also, you shouldn't delete images from the media library before making sure they're saved in the cloud, otherwise you will lose the images.");
1954
+ };
1955
+
1956
+ // waiting list
1957
+ $fifu['waiting']['desc'] = function() {
1958
+ _e("For now FIFU Cloud has a short waiting list. We will contact you when your turn comes.");
1959
+ };
1960
+ $fifu['waiting']['button'] = function() {
1961
+ _e("notify me");
1962
+ };
1963
+
1964
+ // tester
1965
+ $fifu['tester']['desc'] = function() {
1966
+ _e("Start using FIFU Cloud today and without costs to report bugs and suggest improvements.");
1967
+ };
1968
+ $fifu['tester']['button'] = function() {
1969
+ _e("let's go");
1970
+ };
1971
+
1972
+ return $fifu;
1973
+ }
elementor/widgets/widget.php CHANGED
@@ -51,14 +51,14 @@ class Elementor_FIFU_Widget extends \Elementor\Widget_Base {
51
  'faq2',
52
  [
53
  'type' => \Elementor\Controls_Manager::RAW_HTML,
54
- 'raw' => __('<b><i>How to use the first image as featured image?</i></b><br>1) access Featured Image from URL settings;<br>2) enable Content URL > use the 1st image as featured image.<br>', 'plugin-name'),
55
  ]
56
  );
57
  $this->add_control(
58
  'faq3',
59
  [
60
  'type' => \Elementor\Controls_Manager::RAW_HTML,
61
- 'raw' => __('<b><i>I created a grid of images. How to have all with the same height?</i></b><br>1) access Featured Image from URL settings;<br>2) enable Featured image > Same Height;<br>3) add the selector "div.elementor-row".', 'plugin-name'),
62
  ]
63
  );
64
  $this->end_controls_section();
51
  'faq2',
52
  [
53
  'type' => \Elementor\Controls_Manager::RAW_HTML,
54
+ 'raw' => __('<b>How to use the first image as featured image?</b><br><br>1) access FIFU Settings > Automatic > Auto set featured media from post content;<br>2) enable the first toggle.<br><br>', 'plugin-name'),
55
  ]
56
  );
57
  $this->add_control(
58
  'faq3',
59
  [
60
  'type' => \Elementor\Controls_Manager::RAW_HTML,
61
+ 'raw' => __('<b>I created a grid of images. How to have all with the same height?</b><br><br>1) access FIFU Settings > Featured image;<br>2) enable Same Height;<br>3) add the selector "div.elementor-row".', 'plugin-name'),
62
  ]
63
  );
64
  $this->end_controls_section();
featured-image-from-url.php CHANGED
@@ -3,12 +3,12 @@
3
  /*
4
  * Plugin Name: Featured Image from URL (FIFU)
5
  * Plugin URI: https://fifu.app/
6
- * Description: Use an external image as featured image of a post or WooCommerce product. Includes Image Search, Video, Social Tags, SEO, Lazy Load, Gallery, Automation etc.
7
- * Version: 3.8.0
8
  * Author: fifu.app
9
  * Author URI: https://fifu.app/
10
  * WC requires at least: 4.0
11
- * WC tested up to: 5.9
12
  * Text Domain: featured-image-from-url
13
  * License: GPLv3
14
  * License URI: https://www.gnu.org/licenses/gpl-3.0.html
3
  /*
4
  * Plugin Name: Featured Image from URL (FIFU)
5
  * Plugin URI: https://fifu.app/
6
+ * Description: Use an external image/video as featured image/video of a post or WooCommerce product.
7
+ * Version: 3.8.1
8
  * Author: fifu.app
9
  * Author URI: https://fifu.app/
10
  * WC requires at least: 4.0
11
+ * WC tested up to: 6.0
12
  * Text Domain: featured-image-from-url
13
  * License: GPLv3
14
  * License URI: https://www.gnu.org/licenses/gpl-3.0.html
includes/html/css/lazyload.css CHANGED
@@ -16,4 +16,9 @@
16
  opacity: 1;
17
  transition: opacity 300ms;
18
  background: #f7f7f7 url('../../images/loading.gif') no-repeat center;
19
- }
 
 
 
 
 
16
  opacity: 1;
17
  transition: opacity 300ms;
18
  background: #f7f7f7 url('../../images/loading.gif') no-repeat center;
19
+ }
20
+
21
+ /* remove borders */
22
+ img:not([src]) {
23
+ visibility: hidden;
24
+ }
includes/html/js/image.js CHANGED
@@ -2,6 +2,14 @@ jQuery(document).ready(function ($) {
2
  // lazy load
3
  if (fifuImageVars.fifu_lazy)
4
  fifu_lazy();
 
 
 
 
 
 
 
 
5
 
6
  // woocommerce lightbox/zoom
7
  disableClick($);
2
  // lazy load
3
  if (fifuImageVars.fifu_lazy)
4
  fifu_lazy();
5
+ else {
6
+ // dont lazy the top images
7
+ jQuery('img').each(function (index) {
8
+ if (jQuery(this).offset().top < jQuery(window).height()) {
9
+ jQuery(this).removeAttr('loading');
10
+ }
11
+ });
12
+ }
13
 
14
  // woocommerce lightbox/zoom
15
  disableClick($);
includes/html/js/lazySizesConfig.js CHANGED
@@ -7,10 +7,14 @@
7
  window.lazySizesConfig.throttleDelay = 0;
8
  })();
9
 
10
- const FIFU_PLACEHOLDER = 'data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAABCAQAAABeK7cBAAAAC0lEQVR42mNkAAIAAAoAAv/lxKUAAAAASUVORK5CYII=';
 
11
 
12
  function fifu_lazy() {
13
  jQuery('img').each(function (index) {
 
 
 
14
  fifu_add_placeholder(this);
15
 
16
  // dont touch on slider
7
  window.lazySizesConfig.throttleDelay = 0;
8
  })();
9
 
10
+ // 1920x1: https://png-pixel.com/
11
+ const FIFU_PLACEHOLDER = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAB4AAAAABCAQAAACV4Hu+AAAAGklEQVR42u3BAQEAAAABIP6fNkTVAAAAwIEBHgIAAi1TyoIAAAAASUVORK5CYII=';
12
 
13
  function fifu_lazy() {
14
  jQuery('img').each(function (index) {
15
+ // remove wp lazy load
16
+ jQuery(this).removeAttr('loading');
17
+
18
  fifu_add_placeholder(this);
19
 
20
  // dont touch on slider
includes/jetpack.php CHANGED
@@ -50,6 +50,9 @@ function fifu_jetpack_photon_url($url, $args) {
50
  if (fifu_is_photon_url($url))
51
  return $url;
52
 
 
 
 
53
  if (fifu_jetpack_ssl($url))
54
  $args['ssl'] = 1;
55
 
50
  if (fifu_is_photon_url($url))
51
  return $url;
52
 
53
+ if (fifu_ends_with($url, '.svg'))
54
+ return $url;
55
+
56
  if (fifu_jetpack_ssl($url))
57
  $args['ssl'] = 1;
58
 
includes/util.php CHANGED
@@ -70,6 +70,10 @@ function fifu_starts_with($text, $substr) {
70
  return substr($text, 0, strlen($substr)) === $substr;
71
  }
72
 
 
 
 
 
73
  function fifu_get_tags($post_id) {
74
  $tags = get_the_tags($post_id);
75
  if (!$tags)
@@ -138,6 +142,10 @@ function fifu_is_amp_active() {
138
  return is_plugin_active('amp/amp.php');
139
  }
140
 
 
 
 
 
141
  // active themes
142
 
143
  function fifu_is_flatsome_active() {
70
  return substr($text, 0, strlen($substr)) === $substr;
71
  }
72
 
73
+ function fifu_ends_with($text, $substr) {
74
+ return substr($text, -strlen($substr)) === $substr;
75
+ }
76
+
77
  function fifu_get_tags($post_id) {
78
  $tags = get_the_tags($post_id);
79
  if (!$tags)
142
  return is_plugin_active('amp/amp.php');
143
  }
144
 
145
+ function fifu_is_ol_scrapes_active() {
146
+ return is_plugin_active('ol_scrapes/ol_scrapes.php');
147
+ }
148
+
149
  // active themes
150
 
151
  function fifu_is_flatsome_active() {
readme.txt CHANGED
@@ -4,11 +4,11 @@ Donate link: https://donorbox.org/fifu
4
  Tags: featured, image, url, video, woocommerce
5
  Requires at least: 5.3
6
  Tested up to: 5.8.2
7
- Stable tag: 3.8.0
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
11
- Use an external image as featured image of a post or WooCommerce product. Includes image search, video, social tags, SEO, lazy load, gallery, automation etc.
12
 
13
  == Description ==
14
 
@@ -225,20 +225,20 @@ Featured Image, Figurë e Zgjedhur, Image mise en avant, Uitgelichte afbeelding,
225
 
226
  == Changelog ==
227
 
 
 
 
228
  = 3.8.0 =
229
  * Fix: the regular featured image metabox will be closed and not longer removed when the post has an external featured image.
230
 
231
  = 3.7.9 =
232
  * Enhancement: hide internal image metaboxes when the post has an external featured image.
233
 
234
- = 3.7.8 =
235
- * CSV and JSON examples updated.
236
-
237
  = others =
238
  * [more](https://fifu.app/changelog)
239
 
240
 
241
  == Upgrade Notice ==
242
 
243
- = 3.8.0 =
244
- * Fix: the regular featured image metabox will be closed and not longer removed when the post has an external featured image.
4
  Tags: featured, image, url, video, woocommerce
5
  Requires at least: 5.3
6
  Tested up to: 5.8.2
7
+ Stable tag: 3.8.1
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
11
+ Use an external image/video as featured image/video of a post or WooCommerce product.
12
 
13
  == Description ==
14
 
225
 
226
  == Changelog ==
227
 
228
+ = 3.8.1 =
229
+ * New: FIFU Cloud; enhancement: Lazy Load (ignores top images for a better performance); enhancement: better integration with Octolook Scrapes plugin (Schedule Metadata Generation is not necessary anymore); fix: CDN + Optimized Thumbnails (conflict with SVG images); fix: WooCommerce (Product Gallery metabox not displayed when there was an external Product Image).
230
+
231
  = 3.8.0 =
232
  * Fix: the regular featured image metabox will be closed and not longer removed when the post has an external featured image.
233
 
234
  = 3.7.9 =
235
  * Enhancement: hide internal image metaboxes when the post has an external featured image.
236
 
 
 
 
237
  = others =
238
  * [more](https://fifu.app/changelog)
239
 
240
 
241
  == Upgrade Notice ==
242
 
243
+ = 3.8.1 =
244
+ * New: FIFU Cloud; enhancement: Lazy Load (ignores top images for a better performance); enhancement: better integration with Octolook Scrapes plugin (Schedule Metadata Generation is not necessary anymore); fix: CDN + Optimized Thumbnails (conflict with SVG images); fix: WooCommerce (Product Gallery metabox not displayed when there was an external Product Image).