Version Description
- New feature: Video Controls; enhancement: CDN + Optimized Thumbnails (works on Product Categories page now); deprecated: Black Background; fix: Quick Edit Column (style issues).
Download this release
Release Info
Developer | marceljm |
Plugin | Featured Image From URL |
Version | 3.9.4 |
Comparing to | |
See all releases |
Code changes from version 3.9.3 to 3.9.4
- admin/column.php +16 -5
- admin/html/cloud.html +21 -17
- admin/html/menu.html +5 -6
- admin/html/troubleshooting.html +15 -0
- admin/menu.php +3 -3
- admin/strings.php +14 -6
- featured-image-from-url.php +1 -1
- includes/attachment.php +4 -0
- includes/html/js/image.js +4 -0
- includes/jetpack.php +2 -2
- readme.txt +7 -7
admin/column.php
CHANGED
@@ -40,7 +40,9 @@ function fifu_admin_add_css_js() {
|
|
40 |
}
|
41 |
|
42 |
function fifu_column_head($default) {
|
43 |
-
$
|
|
|
|
|
44 |
return $default;
|
45 |
}
|
46 |
|
@@ -48,7 +50,7 @@ function fifu_ctgr_column_content($internal_image, $column, $term_id) {
|
|
48 |
if ($column == 'featured_image') {
|
49 |
$border = '';
|
50 |
$height = get_option('fifu_column_height');
|
51 |
-
$width = $height * 1
|
52 |
|
53 |
$is_ctgr = true;
|
54 |
$post_id = $term_id;
|
@@ -60,7 +62,7 @@ function fifu_ctgr_column_content($internal_image, $column, $term_id) {
|
|
60 |
$image_url = wp_get_attachment_url($thumb_id);
|
61 |
$border = 'border-color: #ca4a1f !important; border: 2px; border-style: dashed;';
|
62 |
}
|
63 |
-
$url =
|
64 |
include 'html/column.html';
|
65 |
} else
|
66 |
echo $internal_image;
|
@@ -70,7 +72,7 @@ function fifu_column_content($column, $post_id) {
|
|
70 |
if ($column == 'featured_image') {
|
71 |
$border = '';
|
72 |
$height = get_option('fifu_column_height');
|
73 |
-
$width = $height * 1
|
74 |
|
75 |
$is_ctgr = false;
|
76 |
$image_url = null;
|
@@ -80,7 +82,7 @@ function fifu_column_content($column, $post_id) {
|
|
80 |
$image_url = wp_get_attachment_url(get_post_thumbnail_id());
|
81 |
$border = 'border-color: #ca4a1f !important; border: 2px; border-style: dashed;';
|
82 |
}
|
83 |
-
$url =
|
84 |
include 'html/column.html';
|
85 |
}
|
86 |
}
|
@@ -90,3 +92,12 @@ function fifu_column_custom_post_type() {
|
|
90 |
add_filter('manage_edit-' . $post_type . '_columns', 'fifu_column_head');
|
91 |
}
|
92 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
}
|
41 |
|
42 |
function fifu_column_head($default) {
|
43 |
+
$fifu = fifu_get_strings_quick_edit();
|
44 |
+
$height = get_option('fifu_column_height');
|
45 |
+
$default['featured_image'] = "<center style='max-width:{$height}px'><span class='dashicons dashicons-camera' style='font-size:20px; cursor:help;' title='{$fifu['tip']['column']()}'></span></center>";
|
46 |
return $default;
|
47 |
}
|
48 |
|
50 |
if ($column == 'featured_image') {
|
51 |
$border = '';
|
52 |
$height = get_option('fifu_column_height');
|
53 |
+
$width = $height * 1.;
|
54 |
|
55 |
$is_ctgr = true;
|
56 |
$post_id = $term_id;
|
62 |
$image_url = wp_get_attachment_url($thumb_id);
|
63 |
$border = 'border-color: #ca4a1f !important; border: 2px; border-style: dashed;';
|
64 |
}
|
65 |
+
$url = fifu_optimized_column_image($image_url);
|
66 |
include 'html/column.html';
|
67 |
} else
|
68 |
echo $internal_image;
|
72 |
if ($column == 'featured_image') {
|
73 |
$border = '';
|
74 |
$height = get_option('fifu_column_height');
|
75 |
+
$width = $height * 1.;
|
76 |
|
77 |
$is_ctgr = false;
|
78 |
$image_url = null;
|
82 |
$image_url = wp_get_attachment_url(get_post_thumbnail_id());
|
83 |
$border = 'border-color: #ca4a1f !important; border: 2px; border-style: dashed;';
|
84 |
}
|
85 |
+
$url = fifu_optimized_column_image($image_url);
|
86 |
include 'html/column.html';
|
87 |
}
|
88 |
}
|
92 |
add_filter('manage_edit-' . $post_type . '_columns', 'fifu_column_head');
|
93 |
}
|
94 |
|
95 |
+
function fifu_optimized_column_image($url) {
|
96 |
+
if (fifu_is_on('fifu_photon')) {
|
97 |
+
$height = get_option('fifu_column_height');
|
98 |
+
return fifu_jetpack_photon_url($url, fifu_get_photon_args($height, $height));
|
99 |
+
}
|
100 |
+
|
101 |
+
return $url;
|
102 |
+
}
|
103 |
+
|
admin/html/cloud.html
CHANGED
@@ -113,13 +113,17 @@
|
|
113 |
<?php $fifucloud['pricing']['desc']() ?>
|
114 |
<br>
|
115 |
<br>
|
116 |
-
<
|
|
|
|
|
|
|
|
|
117 |
<tr class="color">
|
118 |
<th style="font-weight:bold;">
|
119 |
-
|
120 |
</th>
|
121 |
<th style="font-weight:bold;">
|
122 |
-
|
123 |
</th>
|
124 |
</tr>
|
125 |
<tr class="color">
|
@@ -162,26 +166,25 @@
|
|
162 |
$0.001
|
163 |
</td>
|
164 |
</tr>
|
165 |
-
</table
|
166 |
<br>
|
167 |
<?php $fifucloud['pricing']['thumbnails']() ?>
|
168 |
<br>
|
169 |
<br>
|
170 |
-
<
|
171 |
-
|
172 |
-
|
173 |
-
<
|
174 |
-
|
175 |
-
<table style="text-align:left; width:100%; background-color:white;">
|
176 |
<tr class="color">
|
177 |
<th style="font-weight:bold;">
|
178 |
-
|
179 |
</th>
|
180 |
<th style="font-weight:bold;">
|
181 |
-
|
182 |
</th>
|
183 |
<th style="font-weight:bold;">
|
184 |
-
|
185 |
</th>
|
186 |
</tr>
|
187 |
<tr class="color">
|
@@ -239,12 +242,13 @@
|
|
239 |
1229
|
240 |
</td>
|
241 |
</tr>
|
|
|
242 |
</table>
|
243 |
<br>
|
244 |
<table style="text-align:left; width:100%; background-color:white;">
|
245 |
<tr class="color">
|
246 |
<th style="font-weight:bold">
|
247 |
-
|
248 |
</th>
|
249 |
<th>
|
250 |
(2 x 352 + 9 x 1263 + 7 x 1104 + 8 x 901 + 4 x 1229) / 30 = 1064
|
@@ -252,7 +256,7 @@
|
|
252 |
</tr>
|
253 |
<tr class="color">
|
254 |
<td style="font-weight:bold">
|
255 |
-
|
256 |
</td>
|
257 |
<td>
|
258 |
$0.004
|
@@ -260,13 +264,13 @@
|
|
260 |
</tr>
|
261 |
<tr class="color">
|
262 |
<td style="font-weight:bold">
|
263 |
-
|
264 |
</td>
|
265 |
<td>
|
266 |
1064 x $0.004 = $4.25
|
267 |
</td>
|
268 |
</tr>
|
269 |
-
</table
|
270 |
</div>
|
271 |
<br>
|
272 |
¹ <?php $fifucloud['pricing']['table']['ps']() ?>
|
113 |
<?php $fifucloud['pricing']['desc']() ?>
|
114 |
<br>
|
115 |
<br>
|
116 |
+
<div style="background-color:#32373c; text-align:left; color:white; padding:8px; border-radius:5px;">
|
117 |
+
<b><?php $fifucloud['billing']['tiers']() ?></b>
|
118 |
+
</div>
|
119 |
+
<img src='https://storage.googleapis.com/featuredimagefromurl/tiers.jpg'>
|
120 |
+
<!--table style="text-align:left; width:100%; background-color:white;">
|
121 |
<tr class="color">
|
122 |
<th style="font-weight:bold;">
|
123 |
+
<?php $fifucloud['pricing']['table']['quantity']() ?>
|
124 |
</th>
|
125 |
<th style="font-weight:bold;">
|
126 |
+
<?php $fifucloud['pricing']['table']['price']() ?>
|
127 |
</th>
|
128 |
</tr>
|
129 |
<tr class="color">
|
166 |
$0.001
|
167 |
</td>
|
168 |
</tr>
|
169 |
+
</table-->
|
170 |
<br>
|
171 |
<?php $fifucloud['pricing']['thumbnails']() ?>
|
172 |
<br>
|
173 |
<br>
|
174 |
+
<div style="background-color:#32373c; text-align:left; color:white; padding:8px; border-radius:5px;">
|
175 |
+
<b><?php $fifucloud['pricing']['example']() ?></b>
|
176 |
+
</div>
|
177 |
+
<img src="https://storage.googleapis.com/featuredimagefromurl/price-calculation.jpg">
|
178 |
+
<!--table style="text-align:left; width:100%; background-color:white;">
|
|
|
179 |
<tr class="color">
|
180 |
<th style="font-weight:bold;">
|
181 |
+
<?php $fifucloud['pricing']['table']['interval']() ?>
|
182 |
</th>
|
183 |
<th style="font-weight:bold;">
|
184 |
+
<?php $fifucloud['pricing']['table']['days']() ?>
|
185 |
</th>
|
186 |
<th style="font-weight:bold;">
|
187 |
+
<?php $fifucloud['pricing']['table']['stored']() ?>
|
188 |
</th>
|
189 |
</tr>
|
190 |
<tr class="color">
|
242 |
1229
|
243 |
</td>
|
244 |
</tr>
|
245 |
+
<tr></tr>
|
246 |
</table>
|
247 |
<br>
|
248 |
<table style="text-align:left; width:100%; background-color:white;">
|
249 |
<tr class="color">
|
250 |
<th style="font-weight:bold">
|
251 |
+
<?php $fifucloud['pricing']['table']['average']() ?>
|
252 |
</th>
|
253 |
<th>
|
254 |
(2 x 352 + 9 x 1263 + 7 x 1104 + 8 x 901 + 4 x 1229) / 30 = 1064
|
256 |
</tr>
|
257 |
<tr class="color">
|
258 |
<td style="font-weight:bold">
|
259 |
+
<?php $fifucloud['pricing']['table']['price']() ?>
|
260 |
</td>
|
261 |
<td>
|
262 |
$0.004
|
264 |
</tr>
|
265 |
<tr class="color">
|
266 |
<td style="font-weight:bold">
|
267 |
+
<?php $fifucloud['pricing']['table']['total']() ?>
|
268 |
</td>
|
269 |
<td>
|
270 |
1064 x $0.004 = $4.25
|
271 |
</td>
|
272 |
</tr>
|
273 |
+
</table-->
|
274 |
</div>
|
275 |
<br>
|
276 |
¹ <?php $fifucloud['pricing']['table']['ps']() ?>
|
admin/html/menu.html
CHANGED
@@ -19,7 +19,7 @@
|
|
19 |
<li><a href="#tabs-n"><i class="fas fa-share-alt"></i> <?php $fifu['tab']['social']() ?></a></li>
|
20 |
<li><a href="#tabs-i"><i class="fas fa-tachometer-alt"></i> <?php $fifu['tab']['performance']() ?></a></li>
|
21 |
<li><a href="#tabs-o"><i class="fas fa-shopping-cart"></i> <?php $fifu['tab']['woo']() ?></a></li>
|
22 |
-
<li><a href="#tabs-p"><i class="fas fa-
|
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>
|
@@ -1495,11 +1495,11 @@
|
|
1495 |
<?php $fifu['tab']['video']() ?>
|
1496 |
</th>
|
1497 |
<th>
|
1498 |
-
<?php $fifu['title']['
|
1499 |
</th>
|
1500 |
<th></th>
|
1501 |
<th>
|
1502 |
-
wp fifu video --
|
1503 |
</th>
|
1504 |
<th>
|
1505 |
on, off
|
@@ -4158,9 +4158,9 @@
|
|
4158 |
|
4159 |
<div class="box">
|
4160 |
<div class="fifu-pro"><div class="fifu-pro-out"><a class="fifu-pro-link" href="https://fifu.app/" target="_blank" title="Unlock all features"><h4 class="fifu-pro-text"><span class="dashicons dashicons-lock fifu-pro-icon"></span>PRO</h4></a></div></div>
|
4161 |
-
<h2><?php $fifu['title']['
|
4162 |
<div class="greybox" id="grad2">
|
4163 |
-
<?php $fifu['
|
4164 |
</div>
|
4165 |
<br>
|
4166 |
<table style="text-align:left">
|
@@ -4174,7 +4174,6 @@
|
|
4174 |
style="display:block;border:none">
|
4175 |
</th>
|
4176 |
<th>
|
4177 |
-
<?php $fifu['player']['vimeo']() ?>
|
4178 |
</th>
|
4179 |
</tr>
|
4180 |
</table>
|
19 |
<li><a href="#tabs-n"><i class="fas fa-share-alt"></i> <?php $fifu['tab']['social']() ?></a></li>
|
20 |
<li><a href="#tabs-i"><i class="fas fa-tachometer-alt"></i> <?php $fifu['tab']['performance']() ?></a></li>
|
21 |
<li><a href="#tabs-o"><i class="fas fa-shopping-cart"></i> <?php $fifu['tab']['woo']() ?></a></li>
|
22 |
+
<li><a href="#tabs-p"><i class="fas fa-file-export"></i> <?php $fifu['tab']['wai']() ?></a></li>
|
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>
|
1495 |
<?php $fifu['tab']['video']() ?>
|
1496 |
</th>
|
1497 |
<th>
|
1498 |
+
<?php $fifu['title']['controls']() ?>
|
1499 |
</th>
|
1500 |
<th></th>
|
1501 |
<th>
|
1502 |
+
wp fifu video --controls <toggle>
|
1503 |
</th>
|
1504 |
<th>
|
1505 |
on, off
|
4158 |
|
4159 |
<div class="box">
|
4160 |
<div class="fifu-pro"><div class="fifu-pro-out"><a class="fifu-pro-link" href="https://fifu.app/" target="_blank" title="Unlock all features"><h4 class="fifu-pro-text"><span class="dashicons dashicons-lock fifu-pro-icon"></span>PRO</h4></a></div></div>
|
4161 |
+
<h2><?php $fifu['title']['controls']() ?></h2>
|
4162 |
<div class="greybox" id="grad2">
|
4163 |
+
<?php $fifu['controls']['desc']() ?>
|
4164 |
</div>
|
4165 |
<br>
|
4166 |
<table style="text-align:left">
|
4174 |
style="display:block;border:none">
|
4175 |
</th>
|
4176 |
<th>
|
|
|
4177 |
</th>
|
4178 |
</tr>
|
4179 |
</table>
|
admin/html/troubleshooting.html
CHANGED
@@ -9,6 +9,21 @@
|
|
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>
|
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">2022-04-30</td>
|
16 |
+
<td style="border-bottom:none"><h3>Product/Review CSV Import Export</h3></td>
|
17 |
+
<td style="border-bottom:none">plugin</td>
|
18 |
+
</tr>
|
19 |
+
</table>
|
20 |
+
<div class="greybox" style="position: relative; top: -10px">
|
21 |
+
Importing URLs to FIFU:<br>
|
22 |
+
1) enable "FIFU Settings > Metadata > Schedule Metadata Generation"<br>
|
23 |
+
2) use "custom fields" in the import template, as you would do for the WooCommerce import (take a look at "FIFU Settings > WooCommerce > Import")<br>
|
24 |
+
3) run the import
|
25 |
+
</div>
|
26 |
+
</div>
|
27 |
<div class="box">
|
28 |
<table>
|
29 |
<tr>
|
admin/menu.php
CHANGED
@@ -228,7 +228,7 @@ function fifu_get_setting($type) {
|
|
228 |
$arr1 = array('fifu_spinner_nth');
|
229 |
$arrEmpty = array('fifu_default_url', 'fifu_skip');
|
230 |
$arrDefaultType = array('fifu_default_cpt');
|
231 |
-
$
|
232 |
$arr1000 = array('fifu_spinner_db');
|
233 |
$arrOn = array('fifu_wc_zoom', 'fifu_wc_lbox');
|
234 |
$arrOnNo = array('fifu_fake', 'fifu_social');
|
@@ -241,8 +241,8 @@ function fifu_get_setting($type) {
|
|
241 |
update_option($type, 1);
|
242 |
else if (in_array($type, $arrDefaultType))
|
243 |
update_option($type, "post,page,product", 'no');
|
244 |
-
else if (in_array($type, $
|
245 |
-
update_option($type, "
|
246 |
else if (in_array($type, $arr1000))
|
247 |
update_option($type, 1000, 'no');
|
248 |
else if (in_array($type, $arrOn))
|
228 |
$arr1 = array('fifu_spinner_nth');
|
229 |
$arrEmpty = array('fifu_default_url', 'fifu_skip');
|
230 |
$arrDefaultType = array('fifu_default_cpt');
|
231 |
+
$arr40 = array('fifu_column_height');
|
232 |
$arr1000 = array('fifu_spinner_db');
|
233 |
$arrOn = array('fifu_wc_zoom', 'fifu_wc_lbox');
|
234 |
$arrOnNo = array('fifu_fake', 'fifu_social');
|
241 |
update_option($type, 1);
|
242 |
else if (in_array($type, $arrDefaultType))
|
243 |
update_option($type, "post,page,product", 'no');
|
244 |
+
else if (in_array($type, $arr40))
|
245 |
+
update_option($type, "40", 'no');
|
246 |
else if (in_array($type, $arr1000))
|
247 |
update_option($type, 1000, 'no');
|
248 |
else if (in_array($type, $arrOn))
|
admin/strings.php
CHANGED
@@ -327,8 +327,8 @@ function fifu_get_strings_settings() {
|
|
327 |
$fifu['title']['width'] = function() {
|
328 |
_e("Minimum Width", FIFU_SLUG);
|
329 |
};
|
330 |
-
$fifu['title']['
|
331 |
-
_e("
|
332 |
};
|
333 |
$fifu['title']['mouseover'] = function() {
|
334 |
_e("Mouseover Autoplay", FIFU_SLUG);
|
@@ -1341,10 +1341,9 @@ function fifu_get_strings_settings() {
|
|
1341 |
};
|
1342 |
|
1343 |
// black
|
1344 |
-
$fifu['
|
1345 |
-
_e("
|
1346 |
};
|
1347 |
-
|
1348 |
// mouseover
|
1349 |
$fifu['mouseover']['desc'] = function() {
|
1350 |
_e("Play a video on \"mouseover\" and pause on \"mouseout\".", FIFU_SLUG);
|
@@ -1807,6 +1806,9 @@ function fifu_get_strings_quick_edit() {
|
|
1807 |
};
|
1808 |
|
1809 |
// tips
|
|
|
|
|
|
|
1810 |
$fifu['tip']['image'] = function() {
|
1811 |
return __("Set the featured image using an image URL", FIFU_SLUG);
|
1812 |
};
|
@@ -1955,7 +1957,7 @@ function fifu_get_strings_cloud() {
|
|
1955 |
_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.");
|
1956 |
};
|
1957 |
$fifu['support']['process-desc'] = function() {
|
1958 |
-
_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
|
1959 |
};
|
1960 |
$fifu['support']['price-desc'] = function() {
|
1961 |
_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 daily average of stored images, 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.");
|
@@ -1998,6 +2000,9 @@ function fifu_get_strings_cloud() {
|
|
1998 |
$fifu['pricing']['table']['price'] = function() {
|
1999 |
_e("Price per image");
|
2000 |
};
|
|
|
|
|
|
|
2001 |
$fifu['pricing']['table']['total'] = function() {
|
2002 |
_e("Total price");
|
2003 |
};
|
@@ -2027,6 +2032,9 @@ function fifu_get_strings_cloud() {
|
|
2027 |
$fifu['billing']['current'] = function() {
|
2028 |
_e("Current 30-day period");
|
2029 |
};
|
|
|
|
|
|
|
2030 |
$fifu['billing']['column']['start'] = function() {
|
2031 |
_e("start date");
|
2032 |
};
|
327 |
$fifu['title']['width'] = function() {
|
328 |
_e("Minimum Width", FIFU_SLUG);
|
329 |
};
|
330 |
+
$fifu['title']['controls'] = function() {
|
331 |
+
_e("Video Controls", FIFU_SLUG);
|
332 |
};
|
333 |
$fifu['title']['mouseover'] = function() {
|
334 |
_e("Mouseover Autoplay", FIFU_SLUG);
|
1341 |
};
|
1342 |
|
1343 |
// black
|
1344 |
+
$fifu['controls']['desc'] = function() {
|
1345 |
+
_e("You can disable video controls here.", FIFU_SLUG);
|
1346 |
};
|
|
|
1347 |
// mouseover
|
1348 |
$fifu['mouseover']['desc'] = function() {
|
1349 |
_e("Play a video on \"mouseover\" and pause on \"mouseout\".", FIFU_SLUG);
|
1806 |
};
|
1807 |
|
1808 |
// tips
|
1809 |
+
$fifu['tip']['column'] = function() {
|
1810 |
+
return __("Quick edit", FIFU_SLUG);
|
1811 |
+
};
|
1812 |
$fifu['tip']['image'] = function() {
|
1813 |
return __("Set the featured image using an image URL", FIFU_SLUG);
|
1814 |
};
|
1957 |
_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.");
|
1958 |
};
|
1959 |
$fifu['support']['process-desc'] = function() {
|
1960 |
+
_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 weeks 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.");
|
1961 |
};
|
1962 |
$fifu['support']['price-desc'] = function() {
|
1963 |
_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 daily average of stored images, 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.");
|
2000 |
$fifu['pricing']['table']['price'] = function() {
|
2001 |
_e("Price per image");
|
2002 |
};
|
2003 |
+
$fifu['pricing']['table']['tier'] = function() {
|
2004 |
+
_e("Yours");
|
2005 |
+
};
|
2006 |
$fifu['pricing']['table']['total'] = function() {
|
2007 |
_e("Total price");
|
2008 |
};
|
2032 |
$fifu['billing']['current'] = function() {
|
2033 |
_e("Current 30-day period");
|
2034 |
};
|
2035 |
+
$fifu['billing']['tiers'] = function() {
|
2036 |
+
_e("Tiers");
|
2037 |
+
};
|
2038 |
$fifu['billing']['column']['start'] = function() {
|
2039 |
_e("start date");
|
2040 |
};
|
featured-image-from-url.php
CHANGED
@@ -4,7 +4,7 @@
|
|
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.9.
|
8 |
* Author: fifu.app
|
9 |
* Author URI: https://fifu.app/
|
10 |
* WC requires at least: 4.0
|
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.9.4
|
8 |
* Author: fifu.app
|
9 |
* Author URI: https://fifu.app/
|
10 |
* WC requires at least: 4.0
|
includes/attachment.php
CHANGED
@@ -321,6 +321,10 @@ function fifu_add_url_parameters($url, $att_id, $size) {
|
|
321 |
if (!$post_id)
|
322 |
return $url;
|
323 |
|
|
|
|
|
|
|
|
|
324 |
$post_thumbnail_id = get_post_thumbnail_id($post_id);
|
325 |
$post_thumbnail_id = $post_thumbnail_id ? $post_thumbnail_id : get_term_meta($post_id, 'thumbnail_id', true);
|
326 |
$featured = $post_thumbnail_id == $att_id ? 1 : 0;
|
321 |
if (!$post_id)
|
322 |
return $url;
|
323 |
|
324 |
+
// "categories" page
|
325 |
+
if (function_exists('get_current_screen') && isset(get_current_screen()->parent_file) && get_current_screen()->parent_file == 'edit.php?post_type=product' && get_current_screen()->id == 'edit-product_cat')
|
326 |
+
return fifu_optimized_column_image($url);
|
327 |
+
|
328 |
$post_thumbnail_id = get_post_thumbnail_id($post_id);
|
329 |
$post_thumbnail_id = $post_thumbnail_id ? $post_thumbnail_id : get_term_meta($post_id, 'thumbnail_id', true);
|
330 |
$featured = $post_thumbnail_id == $att_id ? 1 : 0;
|
includes/html/js/image.js
CHANGED
@@ -44,6 +44,10 @@ var observer = new MutationObserver(function (mutations) {
|
|
44 |
// ignore WooCommerce zoom
|
45 |
if (!jQuery(node).hasClass('pswp__zoom-wrap')) {
|
46 |
jQuery(node).find('img').each(function (index) {
|
|
|
|
|
|
|
|
|
47 |
fifu_lazy_ajax(this);
|
48 |
});
|
49 |
}
|
44 |
// ignore WooCommerce zoom
|
45 |
if (!jQuery(node).hasClass('pswp__zoom-wrap')) {
|
46 |
jQuery(node).find('img').each(function (index) {
|
47 |
+
// dont touch on slider
|
48 |
+
if (jQuery(this).attr('src') == 'null' || jQuery(this).hasClass('lazyload'))
|
49 |
+
return;
|
50 |
+
|
51 |
fifu_lazy_ajax(this);
|
52 |
});
|
53 |
}
|
includes/jetpack.php
CHANGED
@@ -31,7 +31,7 @@ function fifu_jetpack_blocked($url) {
|
|
31 |
if (fifu_is_photon_url($url))
|
32 |
return true;
|
33 |
|
34 |
-
$blocklist = array('amazon-adsystem.com', 'sapo.io', 'unsplash.com', 'i.guim.co.uk', 's.yimg.com', 's1.yimg.com', 'www.washingtonpost.com', 'pbs.twimg.com', 'www.aljazeera.com', 'image.influenster.com', 'api.screenshotmachine.com', 'rackcdn.com', 'googleusercontent.com', 'drive.google.com');
|
35 |
foreach ($blocklist as $domain) {
|
36 |
if (strpos($url, $domain) !== false)
|
37 |
return true;
|
@@ -58,7 +58,7 @@ function fifu_is_photon_url($url) {
|
|
58 |
}
|
59 |
|
60 |
function fifu_jetpack_photon_url($url, $args) {
|
61 |
-
if (
|
62 |
return $url;
|
63 |
|
64 |
if (fifu_ends_with($url, '.svg'))
|
31 |
if (fifu_is_photon_url($url))
|
32 |
return true;
|
33 |
|
34 |
+
$blocklist = array('amazon-adsystem.com', 'sapo.io', 'unsplash.com', 'i.guim.co.uk', 's.yimg.com', 's1.yimg.com', 'www.washingtonpost.com', 'pbs.twimg.com', 'www.aljazeera.com', 'image.influenster.com', 'api.screenshotmachine.com', 'rackcdn.com', 'googleusercontent.com', 'drive.google.com', 'cdn.fifu.app', 'cloud.fifu.app');
|
35 |
foreach ($blocklist as $domain) {
|
36 |
if (strpos($url, $domain) !== false)
|
37 |
return true;
|
58 |
}
|
59 |
|
60 |
function fifu_jetpack_photon_url($url, $args) {
|
61 |
+
if (fifu_jetpack_blocked($url))
|
62 |
return $url;
|
63 |
|
64 |
if (fifu_ends_with($url, '.svg'))
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://donorbox.org/fifu
|
|
4 |
Tags: featured, image, url, video, woocommerce
|
5 |
Requires at least: 5.3
|
6 |
Tested up to: 5.9.3
|
7 |
-
Stable tag: 3.9.
|
8 |
License: GPLv3
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -92,7 +92,7 @@ Supports videos from YouTube, Vimeo, Imgur, 9GAG, Cloudinary, Tumblr, Publitio,
|
|
92 |
* **[PRO]** Video thumbnail
|
93 |
* **[PRO]** Play button
|
94 |
* **[PRO]** Minimum width
|
95 |
-
* **[PRO]**
|
96 |
* **[PRO]** Mouseover autoplay
|
97 |
* **[PRO]** Autoplay
|
98 |
* **[PRO]** Loop
|
@@ -227,20 +227,20 @@ Featured Image, Figurë e Zgjedhur, Image mise en avant, Uitgelichte afbeelding,
|
|
227 |
|
228 |
== Changelog ==
|
229 |
|
|
|
|
|
|
|
230 |
= 3.9.3 =
|
231 |
* Enhancement: Featured Video (supports VideoPress now); fix: Social Tags (were being added to the front page); fix: conflict with Rank Math SEO plugin.
|
232 |
|
233 |
= 3.9.2 =
|
234 |
* News: FIFU Cloud (Smart Crop, Hotlink Protection and Pricing).
|
235 |
|
236 |
-
= 3.9.1 =
|
237 |
-
* New option: Auto set featured media from post content > skip URLs with.
|
238 |
-
|
239 |
= others =
|
240 |
* [more](https://fifu.app/changelog)
|
241 |
|
242 |
|
243 |
== Upgrade Notice ==
|
244 |
|
245 |
-
= 3.9.
|
246 |
-
*
|
4 |
Tags: featured, image, url, video, woocommerce
|
5 |
Requires at least: 5.3
|
6 |
Tested up to: 5.9.3
|
7 |
+
Stable tag: 3.9.4
|
8 |
License: GPLv3
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
92 |
* **[PRO]** Video thumbnail
|
93 |
* **[PRO]** Play button
|
94 |
* **[PRO]** Minimum width
|
95 |
+
* **[PRO]** Video controls
|
96 |
* **[PRO]** Mouseover autoplay
|
97 |
* **[PRO]** Autoplay
|
98 |
* **[PRO]** Loop
|
227 |
|
228 |
== Changelog ==
|
229 |
|
230 |
+
= 3.9.4 =
|
231 |
+
* New feature: Video Controls; enhancement: CDN + Optimized Thumbnails (works on Product Categories page now); deprecated: Black Background; fix: Quick Edit Column (style issues).
|
232 |
+
|
233 |
= 3.9.3 =
|
234 |
* Enhancement: Featured Video (supports VideoPress now); fix: Social Tags (were being added to the front page); fix: conflict with Rank Math SEO plugin.
|
235 |
|
236 |
= 3.9.2 =
|
237 |
* News: FIFU Cloud (Smart Crop, Hotlink Protection and Pricing).
|
238 |
|
|
|
|
|
|
|
239 |
= others =
|
240 |
* [more](https://fifu.app/changelog)
|
241 |
|
242 |
|
243 |
== Upgrade Notice ==
|
244 |
|
245 |
+
= 3.9.4 =
|
246 |
+
* New feature: Video Controls; enhancement: CDN + Optimized Thumbnails (works on Product Categories page now); deprecated: Black Background; fix: Quick Edit Column (style issues).
|