Featured Image From URL - Version 4.0.9

Version Description

  • New feature: Featured Audio; new feature: Featured video > Privacy Enhanced Mode; new option: Featured Slider > load slider on singular post types only; fix: CDN + Optimized Thumbnails > apply to content images (should skip images that cannot be served).
Download this release

Release Info

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

Code changes from version 4.0.8 to 4.0.9

admin/html/css/menu.css CHANGED
@@ -1,11 +1,11 @@
1
- .wrap {
2
- max-width: 1020px;
3
  margin: 0px;
4
  }
5
 
6
- .header-box {
7
- margin: 25px 0 0;
8
- background: #fff;
9
  padding-top: 0px;
10
  border-radius: 100px 45px 0px 0px;
11
  height: 48px !important;
@@ -13,28 +13,28 @@
13
  background-color:#23282d;
14
  float:left;
15
  width:100%;
16
- max-width: 1020px;
17
  }
18
 
19
- .box {
20
- margin: 17px 0 0;
21
  background: #ffffff85;
22
- border: 1px solid #dbdbdb;
23
- padding: 20px;
24
  padding-top: 10px;
25
  border-radius: 60px 15px 15px 15px;
26
  }
27
 
28
- .greybox {
29
- margin: 10px 0 0;
30
  background: #efefef;
31
- border: 1px solid #dbdbdb;
32
- padding: 20px;
33
  border-radius: 15px 15px 15px 15px;
34
  background: repeating-linear-gradient(-55deg,#efefef,#efefef 2px,#efefefb3 2px,#efefefb3 5px);
35
  }
36
 
37
- .greybox p {
38
  }
39
 
40
  #tabs-top{
@@ -45,17 +45,17 @@
45
  padding: 0 0 0;
46
  }
47
 
48
- .toggleon, .toggleoff {
49
- padding: 0;
50
- overflow: hidden;
51
- width: 72px;
52
- height: 24px;
53
- background: url("../../images/onoff.jpg") 0 0 no-repeat;
54
  text-align: center !important;
55
  }
56
 
57
- .toggleoff {
58
- background: url("../../images/onoff.jpg") -72px 0 no-repeat;
59
  }
60
 
61
  th, td {
@@ -97,7 +97,9 @@ tr.color:nth-child(even) {
97
  padding: 8px;
98
  }
99
 
100
- #thumbnail-size tr:nth-child(even){background-color: #f2f2f2;}
 
 
101
 
102
  #thumbnail-size th {
103
  padding-top: 6px;
@@ -170,7 +172,7 @@ tr.color:nth-child(even) {
170
  border-right-color: #000;
171
  border-left: 0;
172
  margin-top: -12px;
173
- margin-left: -12px;
174
  }
175
 
176
  .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {
@@ -205,10 +207,11 @@ div.fifu-referral {
205
  }
206
 
207
  div.polaroid {
208
- width: 100%;
209
- background-color: white;
210
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
211
  text-align: center;
 
212
  }
213
 
214
  .fifu-cloud-details {
1
+ .wrap {
2
+ max-width: 1020px;
3
  margin: 0px;
4
  }
5
 
6
+ .header-box {
7
+ margin: 25px 0 0;
8
+ background: #fff;
9
  padding-top: 0px;
10
  border-radius: 100px 45px 0px 0px;
11
  height: 48px !important;
13
  background-color:#23282d;
14
  float:left;
15
  width:100%;
16
+ max-width: 1020px;
17
  }
18
 
19
+ .box {
20
+ margin: 17px 0 0;
21
  background: #ffffff85;
22
+ border: 1px solid #dbdbdb;
23
+ padding: 20px;
24
  padding-top: 10px;
25
  border-radius: 60px 15px 15px 15px;
26
  }
27
 
28
+ .greybox {
29
+ margin: 10px 0 0;
30
  background: #efefef;
31
+ border: 1px solid #dbdbdb;
32
+ padding: 20px;
33
  border-radius: 15px 15px 15px 15px;
34
  background: repeating-linear-gradient(-55deg,#efefef,#efefef 2px,#efefefb3 2px,#efefefb3 5px);
35
  }
36
 
37
+ .greybox p {
38
  }
39
 
40
  #tabs-top{
45
  padding: 0 0 0;
46
  }
47
 
48
+ .toggleon, .toggleoff {
49
+ padding: 0;
50
+ overflow: hidden;
51
+ width: 72px;
52
+ height: 24px;
53
+ background: url("../../images/onoff.jpg") 0 0 no-repeat;
54
  text-align: center !important;
55
  }
56
 
57
+ .toggleoff {
58
+ background: url("../../images/onoff.jpg") -72px 0 no-repeat;
59
  }
60
 
61
  th, td {
97
  padding: 8px;
98
  }
99
 
100
+ #thumbnail-size tr:nth-child(even){
101
+ background-color: #f2f2f2;
102
+ }
103
 
104
  #thumbnail-size th {
105
  padding-top: 6px;
172
  border-right-color: #000;
173
  border-left: 0;
174
  margin-top: -12px;
175
+ margin-left: -12px;
176
  }
177
 
178
  .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {
207
  }
208
 
209
  div.polaroid {
210
+ width: 100%;
211
+ background-color: white;
212
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
213
  text-align: center;
214
+ border-radius: 15px;
215
  }
216
 
217
  .fifu-cloud-details {
admin/html/menu.html CHANGED
@@ -14,6 +14,7 @@
14
  <li><a href="#tabs-g"><i class="fas fa-image"></i> <?php $fifu['tab']['image']() ?></a></li>
15
  <li><a href="#tabs-c"><i class="fas fa-play"></i> <?php $fifu['tab']['video']() ?></a></li>
16
  <li><a href="#tabs-m"><i class="fas fa-images"></i> <?php $fifu['tab']['slider']() ?></a></li>
 
17
  <li><a href="#tabs-l"><i class="fas fa-code"></i> <?php $fifu['tab']['shortcode']() ?></a></li>
18
  <li><a href="#tabs-b"><i class="fas fa-robot"></i> <?php $fifu['tab']['auto']() ?></a></li>
19
  <li><a href="#tabs-n"><i class="fas fa-share-alt"></i> <?php $fifu['tab']['social']() ?></a></li>
@@ -580,6 +581,21 @@
580
  on, off
581
  </th>
582
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
583
  <tr class="color">
584
  <th>
585
  <?php $fifu['tab']['image']() ?>
@@ -1060,21 +1076,6 @@
1060
  300x400, 1920x1080...
1061
  </th>
1062
  </tr>
1063
- <tr class="color">
1064
- <th>
1065
- <?php $fifu['tab']['shortcode']() ?>
1066
- </th>
1067
- <th>
1068
- <?php $fifu['title']['shortcode']() ?>
1069
- </th>
1070
- <th></th>
1071
- <th>
1072
- wp fifu shortcode &lt;toggle&gt;
1073
- </th>
1074
- <th>
1075
- on, off
1076
- </th>
1077
- </tr>
1078
  <tr class="color">
1079
  <th>
1080
  <?php $fifu['tab']['slider']() ?>
@@ -1211,6 +1212,23 @@
1211
  on, off
1212
  </th>
1213
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1214
  <tr class="color">
1215
  <th>
1216
  <?php $fifu['tab']['slider']() ?>
@@ -1658,6 +1676,21 @@
1658
  on, off
1659
  </th>
1660
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1661
  <tr class="color">
1662
  <th>
1663
  <?php $fifu['tab']['video']() ?>
@@ -1897,6 +1930,21 @@
1897
  on, off
1898
  </th>
1899
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1900
  <tr class="color">
1901
  <th>
1902
  <?php $fifu['tab']['social']() ?>
@@ -2856,6 +2904,34 @@
2856
  </div>
2857
  </div>
2858
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2859
  <div id="tabs-g">
2860
 
2861
  <div class="box">
@@ -4007,6 +4083,12 @@
4007
 
4008
  <?php $fifu['video']['desc']() ?>
4009
 
 
 
 
 
 
 
4010
  </div>
4011
 
4012
  <br>
@@ -4378,6 +4460,30 @@
4378
  </table>
4379
  </div>
4380
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4381
  <div class="box">
4382
  <div class="fifu-pro"><a class="fifu-pro-link" href="https://fifu.app/" target="_blank" title="Unlock all PRO features"><span class="dashicons dashicons-lock fifu-pro-icon"></span></a></div>
4383
  <div class="fifu-cloud-details"><span class="dashicons dashicons-cloud fifu-cloud-details-icon" title="<?php $fifu['cloud']['details']['play']() ?>"></span></div>
@@ -4419,8 +4525,12 @@
4419
  <h2><?php $fifu['title']['slider']() ?></h2>
4420
  <div class="greybox" id="grad2">
4421
  <?php $fifu['slider']['desc']() ?><br><br>
4422
- <div class="polaroid" style="background-color: #ffffff;">
4423
- <img src="https://storage.googleapis.com/featuredimagefromurl/featured-slider.jpg">
 
 
 
 
4424
  </div>
4425
  </div>
4426
  <br>
@@ -4541,6 +4651,21 @@
4541
  <?php $fifu['slider']['crop']() ?>
4542
  </th>
4543
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4544
  <tr>
4545
  <th>
4546
  <input
@@ -5649,7 +5774,7 @@
5649
  <br>
5650
  <br>
5651
  <div class="polaroid">
5652
- <img src="https://storage.googleapis.com/featuredimagefromurl/fast-buy-1.jpg" style="width:100%">
5653
  </div>
5654
  <br>
5655
  <div class="polaroid" style="background-color:#373737">
@@ -5721,7 +5846,7 @@
5721
  <br>
5722
  <h3><?php $fifu['detail']['result']() ?></h3>
5723
  <div class="polaroid">
5724
- <img src="https://storage.googleapis.com/featuredimagefromurl/wp-all-import-result.jpg">
5725
  </div>
5726
  </div>
5727
  </div>
14
  <li><a href="#tabs-g"><i class="fas fa-image"></i> <?php $fifu['tab']['image']() ?></a></li>
15
  <li><a href="#tabs-c"><i class="fas fa-play"></i> <?php $fifu['tab']['video']() ?></a></li>
16
  <li><a href="#tabs-m"><i class="fas fa-images"></i> <?php $fifu['tab']['slider']() ?></a></li>
17
+ <li><a href="#tabs-e"><i class="fas fa-volume-high"></i> <?php $fifu['tab']['audio']() ?></a></li>
18
  <li><a href="#tabs-l"><i class="fas fa-code"></i> <?php $fifu['tab']['shortcode']() ?></a></li>
19
  <li><a href="#tabs-b"><i class="fas fa-robot"></i> <?php $fifu['tab']['auto']() ?></a></li>
20
  <li><a href="#tabs-n"><i class="fas fa-share-alt"></i> <?php $fifu['tab']['social']() ?></a></li>
581
  on, off
582
  </th>
583
  </tr>
584
+ <tr class="color">
585
+ <th>
586
+ <?php $fifu['tab']['audio']() ?>
587
+ </th>
588
+ <th>
589
+ <?php $fifu['title']['audio']() ?>
590
+ </th>
591
+ <th></th>
592
+ <th>
593
+ wp fifu audio &lt;toggle&gt;
594
+ </th>
595
+ <th>
596
+ on, off
597
+ </th>
598
+ </tr>
599
  <tr class="color">
600
  <th>
601
  <?php $fifu['tab']['image']() ?>
1076
  300x400, 1920x1080...
1077
  </th>
1078
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1079
  <tr class="color">
1080
  <th>
1081
  <?php $fifu['tab']['slider']() ?>
1212
  on, off
1213
  </th>
1214
  </tr>
1215
+ <tr class="color">
1216
+ <th>
1217
+ <?php $fifu['tab']['slider']() ?>
1218
+ </th>
1219
+ <th>
1220
+ <?php $fifu['title']['slider']() ?>
1221
+ </th>
1222
+ <th>
1223
+ <?php $fifu['slider']['single']() ?>
1224
+ </th>
1225
+ <th>
1226
+ wp fifu slider --single &lt;toggle&gt;
1227
+ </th>
1228
+ <th>
1229
+ on, off
1230
+ </th>
1231
+ </tr>
1232
  <tr class="color">
1233
  <th>
1234
  <?php $fifu['tab']['slider']() ?>
1676
  on, off
1677
  </th>
1678
  </tr>
1679
+ <tr class="color">
1680
+ <th>
1681
+ <?php $fifu['tab']['video']() ?>
1682
+ </th>
1683
+ <th>
1684
+ <?php $fifu['title']['privacy']() ?>
1685
+ </th>
1686
+ <th></th>
1687
+ <th>
1688
+ wp fifu video --privacy &lt;toggle&gt;
1689
+ </th>
1690
+ <th>
1691
+ on, off
1692
+ </th>
1693
+ </tr>
1694
  <tr class="color">
1695
  <th>
1696
  <?php $fifu['tab']['video']() ?>
1930
  on, off
1931
  </th>
1932
  </tr>
1933
+ <tr class="color">
1934
+ <th>
1935
+ <?php $fifu['tab']['shortcode']() ?>
1936
+ </th>
1937
+ <th>
1938
+ <?php $fifu['title']['shortcode']() ?>
1939
+ </th>
1940
+ <th></th>
1941
+ <th>
1942
+ wp fifu shortcode &lt;toggle&gt;
1943
+ </th>
1944
+ <th>
1945
+ on, off
1946
+ </th>
1947
+ </tr>
1948
  <tr class="color">
1949
  <th>
1950
  <?php $fifu['tab']['social']() ?>
2904
  </div>
2905
  </div>
2906
 
2907
+ <div id="tabs-e">
2908
+ <div class="box">
2909
+ <div class="fifu-pro"><a class="fifu-pro-link" href="https://fifu.app/" target="_blank" title="Unlock all PRO features"><span class="dashicons dashicons-lock fifu-pro-icon"></span></a></div>
2910
+ <h2><?php $fifu['title']['audio']() ?></h2>
2911
+ <div class="greybox" id="grad2">
2912
+ <?php $fifu['audio']['desc']() ?><br><br>
2913
+ <div class="polaroid" style="background-color: #f9f9f9">
2914
+ <img src="https://storage.googleapis.com/featuredimagefromurl/featured-audio-1.jpg" style="width:97%">
2915
+ </div>
2916
+ <br>
2917
+ <b><?php $fifu['detail']['requirement']() ?></b>: <?php $fifu['audio']['requirement']() ?>
2918
+ </div>
2919
+ <br>
2920
+ <table style="text-align:left">
2921
+ <tr>
2922
+ <th>
2923
+ <input
2924
+ type="submit"
2925
+ href="javascript:void(0)"
2926
+ class="toggleoff"
2927
+ value=""
2928
+ style="display:block;border:none">
2929
+ </th>
2930
+ </tr>
2931
+ </table>
2932
+ </div>
2933
+ </div>
2934
+
2935
  <div id="tabs-g">
2936
 
2937
  <div class="box">
4083
 
4084
  <?php $fifu['video']['desc']() ?>
4085
 
4086
+ <br><br>
4087
+
4088
+ <div class="polaroid" style="background-color: #f9f9f9">
4089
+ <img src="https://storage.googleapis.com/featuredimagefromurl/featured-video-1.jpg" style="width:97%">
4090
+ </div>
4091
+
4092
  </div>
4093
 
4094
  <br>
4460
  </table>
4461
  </div>
4462
 
4463
+ <div class="box">
4464
+ <div class="fifu-pro"><a class="fifu-pro-link" href="https://fifu.app/" target="_blank" title="Unlock all PRO features"><span class="dashicons dashicons-lock fifu-pro-icon"></span></a></div>
4465
+ <h2><?php $fifu['title']['privacy']() ?></h2>
4466
+ <div class="greybox" id="grad2">
4467
+ <?php $fifu['privacy']['desc']() ?>
4468
+ </div>
4469
+ <br>
4470
+ <table style="text-align:left">
4471
+ <tr>
4472
+ <th>
4473
+ <input
4474
+ type="submit"
4475
+ href="javascript:void(0)"
4476
+ class="toggleoff"
4477
+ value=""
4478
+ style="display:block;border:none">
4479
+ </th>
4480
+ <th>
4481
+ <?php $fifu['player']['youtube']() ?>
4482
+ </th>
4483
+ </tr>
4484
+ </table>
4485
+ </div>
4486
+
4487
  <div class="box">
4488
  <div class="fifu-pro"><a class="fifu-pro-link" href="https://fifu.app/" target="_blank" title="Unlock all PRO features"><span class="dashicons dashicons-lock fifu-pro-icon"></span></a></div>
4489
  <div class="fifu-cloud-details"><span class="dashicons dashicons-cloud fifu-cloud-details-icon" title="<?php $fifu['cloud']['details']['play']() ?>"></span></div>
4525
  <h2><?php $fifu['title']['slider']() ?></h2>
4526
  <div class="greybox" id="grad2">
4527
  <?php $fifu['slider']['desc']() ?><br><br>
4528
+ <div class="polaroid" style="background-color: #f9f9f9">
4529
+ <img src="https://storage.googleapis.com/featuredimagefromurl/featured-slider-2.jpg" width="97%">
4530
+ </div>
4531
+ <br>
4532
+ <div class="polaroid" style="background-color: #000000">
4533
+ <img src="https://storage.googleapis.com/featuredimagefromurl/featured-slider-gallery.jpg" width="97%">
4534
  </div>
4535
  </div>
4536
  <br>
4651
  <?php $fifu['slider']['crop']() ?>
4652
  </th>
4653
  </tr>
4654
+ <tr>
4655
+ <th>
4656
+ <input
4657
+ type="submit"
4658
+ href="javascript:void(0)"
4659
+ id="fifu_toggle_slider_single"
4660
+ name="fifu_toggle_slider_single"
4661
+ class="toggleoff"
4662
+ value=""
4663
+ style="display:block;border:none">
4664
+ </th>
4665
+ <th>
4666
+ <?php $fifu['slider']['single']() ?>
4667
+ </th>
4668
+ </tr>
4669
  <tr>
4670
  <th>
4671
  <input
5774
  <br>
5775
  <br>
5776
  <div class="polaroid">
5777
+ <img src="https://storage.googleapis.com/featuredimagefromurl/fast-buy-1.jpg" style="width:97%">
5778
  </div>
5779
  <br>
5780
  <div class="polaroid" style="background-color:#373737">
5846
  <br>
5847
  <h3><?php $fifu['detail']['result']() ?></h3>
5848
  <div class="polaroid">
5849
+ <img src="https://storage.googleapis.com/featuredimagefromurl/wp-all-import-result.jpg" style="width:97%">
5850
  </div>
5851
  </div>
5852
  </div>
admin/html/meta-box.html CHANGED
@@ -92,6 +92,7 @@
92
  <tr style="text-align: center;">
93
  <td style="width: 90px; font-size: 11px; background-color: #1da867; border-radius: 3px; box-shadow: 1px 1px black;"><a style="color:white; text-decoration: none" target="_blank" href="https://fifu.app/" title="Get started now">FIFU <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>
 
95
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured slider" class="dashicons dashicons-images-alt2" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
96
  <td style="padding: 0px 0px" class="fifu-hover"><span title="WooCommerce image/video gallery" class="dashicons dashicons-cart" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
97
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Integration with import plugins and REST API" class="dashicons dashicons-migrate" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
92
  <tr style="text-align: center;">
93
  <td style="width: 90px; font-size: 11px; background-color: #1da867; border-radius: 3px; box-shadow: 1px 1px black;"><a style="color:white; text-decoration: none" target="_blank" href="https://fifu.app/" title="Get started now">FIFU <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>
95
+ <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured audio" class="dashicons dashicons-controls-volumeon" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
96
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Featured slider" class="dashicons dashicons-images-alt2" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
97
  <td style="padding: 0px 0px" class="fifu-hover"><span title="WooCommerce image/video gallery" class="dashicons dashicons-cart" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
98
  <td style="padding: 0px 0px" class="fifu-hover"><span title="Integration with import plugins and REST API" class="dashicons dashicons-migrate" style="font-size:15px; display: unset; vertical-align:sub;"></span></td>
admin/strings.php CHANGED
@@ -4,1549 +4,1574 @@ function fifu_get_strings_settings() {
4
  $fifu = array();
5
 
6
  // php
7
- $fifu['php']['message']['wait'] = function() {
8
  return __("Please wait a few seconds...", FIFU_SLUG);
9
  };
10
 
11
  // buttons
12
- $fifu['button']['submit'] = function() {
13
  _e("Submit", FIFU_SLUG);
14
  };
15
- $fifu['button']['ok'] = function() {
16
  _e("OK", FIFU_SLUG);
17
  };
18
 
19
  // details
20
- $fifu['detail']['important'] = function() {
21
  _e("Important", FIFU_SLUG);
22
  };
23
- $fifu['detail']['requirement'] = function() {
24
  _e("Requirement", FIFU_SLUG);
25
  };
26
- $fifu['detail']['tip'] = function() {
27
  _e("Tip", FIFU_SLUG);
28
  };
29
- $fifu['detail']['suggestion'] = function() {
30
  _e("Suggestion", FIFU_SLUG);
31
  };
32
- $fifu['detail']['example'] = function() {
33
  _e("Example", FIFU_SLUG);
34
  };
35
- $fifu['detail']['eg'] = function() {
36
  _e("e.g.:", FIFU_SLUG);
37
  };
38
- $fifu['detail']['result'] = function() {
39
  _e("Result", FIFU_SLUG);
40
  };
41
- $fifu['detail']['notice'] = function() {
42
  _e("Notice", FIFU_SLUG);
43
  };
44
- $fifu['detail']['developers'] = function() {
45
  _e("Developers", FIFU_SLUG);
46
  };
47
 
48
  // words
49
- $fifu['word']['attribute'] = function() {
50
  _e("attribute", FIFU_SLUG);
51
  };
52
- $fifu['word']['selector'] = function() {
53
  _e("selector", FIFU_SLUG);
54
  };
55
- $fifu['word']['cover'] = function() {
56
  _e("cover", FIFU_SLUG);
57
  };
58
- $fifu['word']['contain'] = function() {
59
  _e("contain", FIFU_SLUG);
60
  };
61
- $fifu['word']['fill'] = function() {
62
  _e("fill", FIFU_SLUG);
63
  };
64
- $fifu['word']['width'] = function() {
65
  _e("width", FIFU_SLUG);
66
  };
67
- $fifu['word']['height'] = function() {
68
  _e("height", FIFU_SLUG);
69
  };
70
- $fifu['word']['color'] = function() {
71
  _e("color", FIFU_SLUG);
72
  };
73
- $fifu['word']['mode'] = function() {
74
  _e("mode", FIFU_SLUG);
75
  };
76
- $fifu['word']['inline'] = function() {
77
  _e("inline", FIFU_SLUG);
78
  };
79
- $fifu['word']['lightbox'] = function() {
80
  _e("lightbox", FIFU_SLUG);
81
  };
82
- $fifu['word']['zindex'] = function() {
83
  _e("z-index", FIFU_SLUG);
84
  };
85
- $fifu['word']['zoom'] = function() {
86
  _e("zoom", FIFU_SLUG);
87
  };
88
- $fifu['word']['function'] = function() {
89
  _e("Function", FIFU_SLUG);
90
  };
91
- $fifu['word']['field'] = function() {
92
  _e("Fields", FIFU_SLUG);
93
  };
94
- $fifu['word']['delimiter'] = function() {
95
  _e("Delimiter", FIFU_SLUG);
96
  };
97
- $fifu['word']['effect'] = function() {
98
  _e("Effect", FIFU_SLUG);
99
  };
100
- $fifu['word']['documentation'] = function() {
101
  _e("Documentation", FIFU_SLUG);
102
  };
103
- $fifu['word']['tags'] = function() {
104
  _e("Tags", FIFU_SLUG);
105
  };
106
 
107
  // where
108
- $fifu['where']['page'] = function() {
109
  _e("on page", FIFU_SLUG);
110
  };
111
- $fifu['where']['post'] = function() {
112
  _e("on post ", FIFU_SLUG);
113
  };
114
- $fifu['where']['cpt'] = function() {
115
  _e("on custom post type", FIFU_SLUG);
116
  };
117
- $fifu['where']['home'] = function() {
118
  _e("on home (or shop)", FIFU_SLUG);
119
  };
120
- $fifu['where']['single'] = function() {
121
  _e("on single post types", FIFU_SLUG);
122
  };
123
- $fifu['where']['desktop'] = function() {
124
  _e("on desktop", FIFU_SLUG);
125
  };
126
- $fifu['where']['mobile'] = function() {
127
  _e("on mobile", FIFU_SLUG);
128
  };
129
 
130
  // player
131
- $fifu['player']['youtube'] = function() {
132
  _e("for YouTube videos", FIFU_SLUG);
133
  };
134
- $fifu['player']['vimeo'] = function() {
135
  _e("for Vimeo videos", FIFU_SLUG);
136
  };
137
 
138
  // chrome
139
- $fifu['chrome']['link'] = function() {
140
  _e("Chrome extension", FIFU_SLUG);
141
  };
142
 
143
  // referral
144
- $fifu['referral']['link'] = function() {
145
  _e("Affiliate program", FIFU_SLUG);
146
  };
147
 
148
  // messages
149
- $fifu['message']['wait'] = function() {
150
  _e("Please wait a few seconds...", FIFU_SLUG);
151
  };
152
 
153
  // tabs
154
- $fifu['tab']['help'] = function() {
155
  _e("Help", FIFU_SLUG);
156
  };
157
- $fifu['tab']['admin'] = function() {
158
  _e("Admin", FIFU_SLUG);
159
  };
160
- $fifu['tab']['image'] = function() {
161
  _e("Featured image", FIFU_SLUG);
162
  };
163
- $fifu['tab']['auto'] = function() {
164
  _e("Automatic", FIFU_SLUG);
165
  };
166
- $fifu['tab']['metadata'] = function() {
167
  _e("Metadata", FIFU_SLUG);
168
  };
169
- $fifu['tab']['performance'] = function() {
170
  _e("Performance", FIFU_SLUG);
171
  };
172
- $fifu['tab']['api'] = function() {
173
  _e("REST API", FIFU_SLUG);
174
  };
175
- $fifu['tab']['shortcode'] = function() {
176
  _e("Shortcode", FIFU_SLUG);
177
  };
178
- $fifu['tab']['slider'] = function() {
179
  _e("Featured slider", FIFU_SLUG);
180
  };
181
- $fifu['tab']['social'] = function() {
 
 
 
182
  _e("Social", FIFU_SLUG);
183
  };
184
- $fifu['tab']['video'] = function() {
185
  _e("Featured video", FIFU_SLUG);
186
  };
187
- $fifu['tab']['woo'] = function() {
188
  _e("WooCommerce", FIFU_SLUG);
189
  };
190
- $fifu['tab']['wai'] = function() {
191
  _e("WP All Import", FIFU_SLUG);
192
  };
193
- $fifu['tab']['trouble'] = function() {
194
  _e("Troubleshooting", FIFU_SLUG);
195
  };
196
- $fifu['tab']['key'] = function() {
197
  _e("License key", FIFU_SLUG);
198
  };
199
 
200
  // titles
201
- $fifu['title']['support'] = function() {
202
  _e("Fast support", FIFU_SLUG);
203
  };
204
- $fifu['title']['start'] = function() {
205
  _e("Getting started", FIFU_SLUG);
206
  };
207
- $fifu['title']['dev'] = function() {
208
  _e("Integrate your plugin with FIFU", FIFU_SLUG);
209
  };
210
- $fifu['title']['column'] = function() {
211
  _e("Quick Edit Column", FIFU_SLUG);
212
  };
213
- $fifu['title']['fields'] = function() {
214
  _e("Product Gallery", FIFU_SLUG);
215
  };
216
- $fifu['title']['reset'] = function() {
217
  _e("Reset Settings", FIFU_SLUG);
218
  };
219
- $fifu['title']['cli'] = function() {
220
  _e("WP-CLI", FIFU_SLUG);
221
  };
222
- $fifu['title']['media'] = function() {
223
  _e("Save in the Media Library", FIFU_SLUG);
224
  };
225
- $fifu['title']['height'] = function() {
226
  _e("Same Height", FIFU_SLUG);
227
  };
228
- $fifu['title']['auto'] = function() {
229
  _e("Auto set featured image using post title and search engine", FIFU_SLUG);
230
  };
231
- $fifu['title']['isbn'] = function() {
232
  _e("Auto set featured image using ISBN and books API", FIFU_SLUG);
233
  };
234
- $fifu['title']['screenshot'] = function() {
235
  _e("Auto set screenshot as featured image", FIFU_SLUG);
236
  };
237
- $fifu['title']['finder'] = function() {
238
  _e("Auto set featured media using web page address", FIFU_SLUG);
239
  };
240
- $fifu['title']['tags'] = function() {
241
  _e("Auto set featured image from Unsplash using tags", FIFU_SLUG);
242
  };
243
- $fifu['title']['block'] = function() {
244
  _e("Disable right-click", FIFU_SLUG);
245
  };
246
- $fifu['title']['unsplash'] = function() {
247
  _e("Unsplash Image Size", FIFU_SLUG);
248
  };
249
- $fifu['title']['replace'] = function() {
250
  _e("Replace Not Found Image", FIFU_SLUG);
251
  };
252
- $fifu['title']['default'] = function() {
253
  _e("Default Featured Image", FIFU_SLUG);
254
  };
255
- $fifu['title']['content'] = function() {
256
  _e("Featured Image in Content", FIFU_SLUG);
257
  };
258
- $fifu['title']['hide'] = function() {
259
  _e("Hide Featured Media", FIFU_SLUG);
260
  };
261
- $fifu['title']['redirection'] = function() {
262
  _e("Page Redirection", FIFU_SLUG);
263
  };
264
- $fifu['title']['hover'] = function() {
265
  _e("Hover Effects", FIFU_SLUG);
266
  };
267
- $fifu['title']['validation'] = function() {
268
  _e("Image Validation", FIFU_SLUG);
269
  };
270
- $fifu['title']['html'] = function() {
271
  _e("Auto set featured media from post content", FIFU_SLUG);
272
  };
273
- $fifu['title']['metadata'] = function() {
274
  _e("Image Metadata", FIFU_SLUG);
275
  };
276
- $fifu['title']['clean'] = function() {
277
  _e("Clean Metadata", FIFU_SLUG);
278
  };
279
- $fifu['title']['dimensions'] = function() {
280
  _e("Save Image Dimensions", FIFU_SLUG);
281
  };
282
- $fifu['title']['schedule'] = function() {
283
  _e("Schedule Metadata Generation", FIFU_SLUG);
284
  };
285
- $fifu['title']['database'] = function() {
286
  _e("Database", FIFU_SLUG);
287
  };
288
- $fifu['title']['delete'] = function() {
289
  _e("Delete All URLs", FIFU_SLUG);
290
  };
291
- $fifu['title']['lazy'] = function() {
 
 
 
292
  _e("Lazy Load", FIFU_SLUG);
293
  };
294
- $fifu['title']['jetpack'] = function() {
295
  _e("CDN + Optimized Thumbnails", FIFU_SLUG);
296
  };
297
- $fifu['title']['api'] = function() {
298
  _e("WP / WooCommerce REST API", FIFU_SLUG);
299
  };
300
- $fifu['title']['shortcode'] = function() {
301
  _e("Featured Shortcode", FIFU_SLUG);
302
  };
303
- $fifu['title']['shortcodes'] = function() {
304
  _e("FIFU Shortcodes", FIFU_SLUG);
305
  };
306
- $fifu['title']['slider'] = function() {
307
  _e("Featured Slider", FIFU_SLUG);
308
  };
309
- $fifu['title']['social'] = function() {
310
  _e("Social Tags", FIFU_SLUG);
311
  };
312
- $fifu['title']['bbpress'] = function() {
313
  _e("bbPress", FIFU_SLUG);
314
  };
315
- $fifu['title']['rss'] = function() {
316
  _e("Media RSS Tags", FIFU_SLUG);
317
  };
318
- $fifu['title']['title'] = function() {
319
  _e("Auto Set Image Title", FIFU_SLUG);
320
  };
321
- $fifu['title']['video'] = function() {
322
  _e("Featured Video", FIFU_SLUG);
323
  };
324
- $fifu['title']['thumbnail'] = function() {
325
  _e("Video Thumbnail", FIFU_SLUG);
326
  };
327
- $fifu['title']['play'] = function() {
328
  _e("Play Button", FIFU_SLUG);
329
  };
330
- $fifu['title']['width'] = function() {
331
  _e("Minimum Width", FIFU_SLUG);
332
  };
333
- $fifu['title']['controls'] = function() {
334
  _e("Video Controls", FIFU_SLUG);
335
  };
336
- $fifu['title']['mouseover'] = function() {
337
  _e("Mouseover Autoplay", FIFU_SLUG);
338
  };
339
- $fifu['title']['autoplay'] = function() {
340
  _e("Autoplay", FIFU_SLUG);
341
  };
342
- $fifu['title']['loop'] = function() {
343
  _e("Loop", FIFU_SLUG);
344
  };
345
- $fifu['title']['mute'] = function() {
346
  _e("Mute", FIFU_SLUG);
347
  };
348
- $fifu['title']['background'] = function() {
349
  _e("Background Video", FIFU_SLUG);
350
  };
351
- $fifu['title']['icon'] = function() {
 
 
 
352
  _e("Gallery Icon", FIFU_SLUG);
353
  };
354
- $fifu['title']['zoom'] = function() {
355
  _e("Lightbox and Zoom", FIFU_SLUG);
356
  };
357
- $fifu['title']['category'] = function() {
358
  _e("Auto Set Category Images", FIFU_SLUG);
359
  };
360
- $fifu['title']['grid'] = function() {
361
  _e("Category Image on Grid", FIFU_SLUG);
362
  };
363
- $fifu['title']['variable'] = function() {
364
  _e("Variable Product", FIFU_SLUG);
365
  };
366
- $fifu['title']['import'] = function() {
367
  _e("Import", FIFU_SLUG);
368
  };
369
- $fifu['title']['addon'] = function() {
370
  _e("Add-On", FIFU_SLUG);
371
  };
372
- $fifu['title']['key'] = function() {
373
  _e("License Key", FIFU_SLUG);
374
  };
375
- $fifu['title']['gallery'] = function() {
376
  _e("FIFU Product Gallery", FIFU_SLUG);
377
  };
378
- $fifu['title']['buy'] = function() {
379
  _e("Fast Buy", FIFU_SLUG);
380
  };
381
 
382
  // support
383
- $fifu['support']['email'] = function() {
384
  _e("If you need help, you can refer to troubleshooting or send an email to", FIFU_SLUG);
385
  };
386
- $fifu['support']['with'] = function() {
387
  _e("with this", FIFU_SLUG);
388
  };
389
- $fifu['support']['status'] = function() {
390
  _e("status", FIFU_SLUG);
391
  };
392
- $fifu['support']['disappeared'] = function() {
393
  _e("All my images disappeared", FIFU_SLUG);
394
  };
395
- $fifu['support']['plugin'] = function() {
396
  _e("A plugin doesn't work with FIFU ", FIFU_SLUG);
397
  };
398
- $fifu['support']['style'] = function() {
399
  _e("I'm having style issues ", FIFU_SLUG);
400
  };
401
- $fifu['support']['facebook'] = function() {
402
  _e("Facebook doesn't share my images", FIFU_SLUG);
403
  };
404
- $fifu['support']['null'] = function() {
405
  _e("\"Nulled\" Premium doesn't work", FIFU_SLUG);
406
  };
407
- $fifu['support']['money'] = function() {
408
  _e("Broken image icon is being displayed", FIFU_SLUG);
409
  };
410
- $fifu['support']['speed'] = function() {
411
  _e("PageSpeed and GTmetrix issues", FIFU_SLUG);
412
  };
413
- $fifu['support']['disappeared-desc'] = function() {
414
  _e("You were probably using a deprecated feature. Just do it: 1) access Metadata tab; 2) run Clean Metadata; 3) enable Image Metadata (~50,000 URLs/min); 4) clean your cache (optional).", FIFU_SLUG);
415
  };
416
- $fifu['support']['plugin-desc'] = function() {
417
  _e("Contact us. If you are available to discuss the details and the plugin is free, we should provide an integration. Or contact its developer and ask him to use the FIFU integration functions below.", FIFU_SLUG);
418
  };
419
- $fifu['support']['style-desc'] = function() {
420
  _e("Some themes and plugins aren't responsive enough to work with external images. You may solve that by using <b>FIFU Cloud</b> (fast) or running Metadata > Save Image Dimensions (slow).", FIFU_SLUG);
421
  };
422
- $fifu['support']['facebook-desc'] = function() {
423
  _e("You probably have a plugin or theme that sets a default image as the Facebook image (og:image tag). Just find and disable the option. And make sure Social > Social Tags is enabled.", FIFU_SLUG);
424
  };
425
- $fifu['support']['null-desc'] = function() {
426
  _e("This plugin has no nulled versions, but modified versions. Don't install that. It's illegal and may ruin your site. Moreover, sales of the original premium version keep this project alive.", FIFU_SLUG);
427
  };
428
- $fifu['support']['money-desc'] = function() {
429
  _e("Possibilities: a) image file deleted by owner; b) URL has changed; c) hotlink protection; d) URL is wrong. Use <b>FIFU Cloud</b> to prevent image loss or bypass hotlink protection.", FIFU_SLUG);
430
  };
431
- $fifu['support']['speed-desc'] = function() {
432
  _e("Solve that by activating Performance > CDN + Optimized Thumbnails or <b>FIFU Cloud</b> (much better). Even large images hosted on slow servers should load quickly on your website.", FIFU_SLUG);
433
  };
434
 
435
  // start
436
- $fifu['start']['url']['external'] = function() {
437
  _e("Hi, I'm an EXTERNAL image!", FIFU_SLUG);
438
  };
439
- $fifu['start']['url']['not'] = function() {
440
  _e("It means I'm NOT in your media library and I'm NOT an attached plugin file too.", FIFU_SLUG);
441
  };
442
- $fifu['start']['url']['url'] = function() {
443
  _e("Don't you believe me? So why don't you check my Internet address (also known as URL)?", FIFU_SLUG);
444
  };
445
- $fifu['start']['url']['right'] = function() {
446
  _e("1) right click me now;", FIFU_SLUG);
447
  };
448
- $fifu['start']['url']['copy'] = function() {
449
  _e("2) select \"Copy image address\";", FIFU_SLUG);
450
  };
451
- $fifu['start']['url']['paste'] = function() {
452
  _e("3) paste it here:", FIFU_SLUG);
453
  };
454
- $fifu['start']['url']['drag'] = function() {
455
  _e("or just drag and drop me here", FIFU_SLUG);
456
  };
457
- $fifu['start']['url']['click'] = function() {
458
  _e("Right click me!", FIFU_SLUG);
459
  };
460
- $fifu['start']['post']['famous'] = function() {
461
  _e("Since now you have my address (also known as URL), how about making me famous?", FIFU_SLUG);
462
  };
463
- $fifu['start']['post']['create'] = function() {
464
  _e("You just need to create a post and use me as the featured image:", FIFU_SLUG);
465
  };
466
- $fifu['start']['post']['new'] = function() {
467
  _e("1) add a new post;", FIFU_SLUG);
468
  };
469
- $fifu['start']['post']['box'] = function() {
470
  _e("2) find the box", FIFU_SLUG);
471
  };
472
- $fifu['start']['post']['featured'] = function() {
473
  _e("Featured image", FIFU_SLUG);
474
  };
475
- $fifu['start']['post']['address'] = function() {
476
  _e("3) paste my address into \"Image URL\" field.", FIFU_SLUG);
477
  };
478
- $fifu['start']['post']['storage'] = function() {
479
  _e("And don't worry about storage. I will remain EXTERNAL. I WON'T be uploaded to your media library.", FIFU_SLUG);
480
  };
481
 
482
  // dev
483
- $fifu['dev']['function'] = function() {
484
  _e("Are you a WordPress developer? So now you can easily integrate your code with FIFU using the functions below.", FIFU_SLUG);
485
  };
486
- $fifu['dev']['args'] = function() {
487
  _e("All you need is to inform the post id and the image url(s). And FIFU will set the custom fields and create the metadata.", FIFU_SLUG);
488
  };
489
- $fifu['dev']['plugins'] = function() {
490
  _e("Plugins that make use of FIFU integration functions:", FIFU_SLUG);
491
  };
492
- $fifu['dev']['field']['image'] = function() {
493
  _e("Featured image", FIFU_SLUG);
494
  };
495
- $fifu['dev']['field']['video'] = function() {
496
  _e("Featured video", FIFU_SLUG);
497
  };
498
- $fifu['dev']['field']['product'] = function() {
499
  _e("Product image", FIFU_SLUG);
500
  };
501
- $fifu['dev']['field']['gallery'] = function() {
502
  _e("Image gallery", FIFU_SLUG);
503
  };
504
- $fifu['dev']['field']['category']['image'] = function() {
505
  _e("Product category image", FIFU_SLUG);
506
  };
507
- $fifu['dev']['field']['category']['video'] = function() {
508
  _e("Product category video", FIFU_SLUG);
509
  };
510
 
511
  // column
512
- $fifu['column']['desc'] = function() {
513
  _e("The plugin adds a \"Quick Edit\" column to \"Posts > All Posts\". Below you can choose the height (px) of the images in the column. To disable that, just uncheck \"Quick Edit\" in the Screen Options.", FIFU_SLUG);
514
  };
515
 
516
  // cli
517
- $fifu['cli']['desc'] = function() {
518
  _e("Configure FIFU via command line.", FIFU_SLUG);
519
  };
520
- $fifu['cli']['tab']['commands'] = function() {
521
  _e("Commands", FIFU_SLUG);
522
  };
523
- $fifu['cli']['tab']['documentation'] = function() {
524
  _e("Documentation", FIFU_SLUG);
525
  };
526
- $fifu['cli']['documentation']['site'] = function() {
527
  _e("WP-CLI", FIFU_SLUG);
528
  };
529
- $fifu['cli']['column']['tab'] = function() {
530
  _e("Tab", FIFU_SLUG);
531
  };
532
- $fifu['cli']['column']['section'] = function() {
533
  _e("Section", FIFU_SLUG);
534
  };
535
- $fifu['cli']['column']['feature'] = function() {
536
  _e("Feature", FIFU_SLUG);
537
  };
538
- $fifu['cli']['column']['option'] = function() {
539
  _e("Option", FIFU_SLUG);
540
  };
541
- $fifu['cli']['column']['command'] = function() {
542
  _e("Command", FIFU_SLUG);
543
  };
544
- $fifu['cli']['column']['eg'] = function() {
545
  _e("e.g. (args)", FIFU_SLUG);
546
  };
547
 
548
  // fields
549
- $fifu['fields']['desc'] = function() {
550
  _e("Choose the number of fields in the product editor.", FIFU_SLUG);
551
  };
552
- $fifu['fields']['image'] = function() {
553
  _e("Image gallery", FIFU_SLUG);
554
  };
555
- $fifu['fields']['video'] = function() {
556
  _e("Video gallery", FIFU_SLUG);
557
  };
558
- $fifu['fields']['slider'] = function() {
559
  _e("number of fields in the post editor", FIFU_SLUG);
560
  };
561
 
562
  // reset
563
- $fifu['reset']['desc'] = function() {
564
  _e("Reset FIFU settings to the default configuration.", FIFU_SLUG);
565
  };
566
- $fifu['reset']['reset'] = function() {
567
  _e("reset settings", FIFU_SLUG);
568
  };
569
 
570
  // media library
571
- $fifu['media']['desc'] = function() {
572
  _e("It's possible to save the external images in the media library and set those new local images as standard WordPress/WooCommerce featured/gallery images automatically. Make a backup before running the cron job, because after making an image local it can't be external again, so FIFU will have no more control over that.", FIFU_SLUG);
573
  };
574
- $fifu['media']['upload'] = function() {
575
  _e("show upload button on post editor", FIFU_SLUG);
576
  };
577
- $fifu['media']['job'] = function() {
578
  _e("run a cron job that searches for external images and saves them in the media library periodically.", FIFU_SLUG);
579
  };
580
- $fifu['media']['dev'] = function() {
581
  _e("php function that runs the upload process once and immediately (i.e. without a cron job).", FIFU_SLUG);
582
  };
583
- $fifu['media']['run'] = function() {
584
  _e("Run now", FIFU_SLUG);
585
  };
586
- $fifu['media']['tab']['main'] = function() {
587
  _e("Main", FIFU_SLUG);
588
  };
589
- $fifu['media']['tab']['proxy'] = function() {
590
  _e("Proxy", FIFU_SLUG);
591
  };
592
- $fifu['media']['tab']['dev'] = function() {
593
  _e("Developer", FIFU_SLUG);
594
  };
595
- $fifu['media']['proxy']['desc'] = function() {
596
  _e("Proxies are used to bypass IP ban, what may happen when your site downloads too many images from the same host. As disadvantages, a proxy can limit the number of requests and its IP can be banned as well. Both will force the plugin to try other proxies until find a good one. So proxies should make the process much slower, except if you have access to a private proxy. By default, FIFU works with a list of public proxies updated every 30 minutes and caches the ones that are working with your image URLs.", FIFU_SLUG);
597
  };
598
- $fifu['media']['proxy']['toggle'] = function() {
599
  _e("use proxies to intermediate the traffic between your site and the image hosts", FIFU_SLUG);
600
  };
601
- $fifu['media']['proxy']['private'] = function() {
602
  _e("Private proxy", FIFU_SLUG);
603
  };
604
- $fifu['media']['proxy']['placeholder'] = function() {
605
  _e("192.168.0.1:80, 127.0.0.1:8080, username:password@172.16.0.0:443", FIFU_SLUG);
606
  };
607
 
608
  // height
609
- $fifu['height']['desc'] = function() {
610
  _e("If you have different sizes of images on your home (or shop), enable the toggle below to show them in the same height. Depending on your theme, it may be necessary to use a selector to inform where is the group of images that you want to resize.", FIFU_SLUG);
611
  };
612
- $fifu['height']['tab']['height'] = function() {
613
  _e("Same height", FIFU_SLUG);
614
  };
615
- $fifu['height']['tab']['selector'] = function() {
616
  _e("Add selector", FIFU_SLUG);
617
  };
618
- $fifu['height']['tab']['default'] = function() {
619
  _e("Default selectors", FIFU_SLUG);
620
  };
621
- $fifu['height']['tab']['ignore'] = function() {
622
  _e("Ignore images", FIFU_SLUG);
623
  };
624
- $fifu['height']['tab']['ratio'] = function() {
625
  _e("Size ratio", FIFU_SLUG);
626
  };
627
- $fifu['height']['tab']['fit'] = function() {
628
  _e("Object fit", FIFU_SLUG);
629
  };
630
- $fifu['height']['tab']['delay'] = function() {
631
  _e("Delay", FIFU_SLUG);
632
  };
633
- $fifu['height']['selector']['desc'] = function() {
634
  _e("Examples of selectors...", FIFU_SLUG);
635
  };
636
- $fifu['height']['default']['desc'] = function() {
637
  _e("Default selectors:", FIFU_SLUG);
638
  };
639
- $fifu['height']['ignore']['desc'] = function() {
640
  _e("Ignore images...", FIFU_SLUG);
641
  };
642
- $fifu['height']['ignore']['parent'] = function() {
643
  _e("Parent selectors:", FIFU_SLUG);
644
  };
645
- $fifu['height']['height']['ratio'] = function() {
646
  _e("and you want a 4:3 size ratio", FIFU_SLUG);
647
  };
648
- $fifu['height']['height']['fit'] = function() {
649
  _e("and you want a 4:3 size ratio and cover as object fit", FIFU_SLUG);
650
  };
651
- $fifu['height']['ratio']['desc'] = function() {
652
  _e("Examples of valid size ratios", FIFU_SLUG);
653
  };
654
- $fifu['height']['fit']['cover'] = function() {
655
  _e("crops the images (the options center, top and bottom will be available in the post editor);", FIFU_SLUG);
656
  };
657
- $fifu['height']['fit']['contain'] = function() {
658
  _e("shows full images (in smaller sizes);", FIFU_SLUG);
659
  };
660
- $fifu['height']['fit']['fill'] = function() {
661
  _e("deforms the images.", FIFU_SLUG);
662
  };
663
- $fifu['height']['delay']['time'] = function() {
664
  _e("time (in ms)", FIFU_SLUG);
665
  };
666
 
667
  // auto set
668
- $fifu['auto']['desc'] = function() {
669
  _e("Set featured images automatically. FIFU will check every minute if there are post types without featured images and will perform web searches based on post titles to get the image URLs (~10/min).", FIFU_SLUG);
670
  };
671
- $fifu['auto']['tab']['auto'] = function() {
672
  _e("Auto set", FIFU_SLUG);
673
  };
674
- $fifu['auto']['tab']['filters'] = function() {
675
  _e("Filters", FIFU_SLUG);
676
  };
677
- $fifu['auto']['tab']['blocklist'] = function() {
678
  _e("Blocklist", FIFU_SLUG);
679
  };
680
- $fifu['auto']['tab']['cpt'] = function() {
681
  _e("Post types", FIFU_SLUG);
682
  };
683
- $fifu['auto']['tab']['source'] = function() {
684
  _e("Source", FIFU_SLUG);
685
  };
686
- $fifu['auto']['filter']['width'] = function() {
687
  _e("minimum width (px)", FIFU_SLUG);
688
  };
689
- $fifu['auto']['filter']['height'] = function() {
690
  _e("minimum height (px)", FIFU_SLUG);
691
  };
692
- $fifu['auto']['filter']['blocklist'] = function() {
693
  _e("List of strings that shouldn't be in the image URL:", FIFU_SLUG);
694
  };
695
- $fifu['auto']['cpt']['desc'] = function() {
696
  _e("This feature is pre configured to work only with the post type \"post\". But you can include more post types below (delimited by \",\").", FIFU_SLUG);
697
  };
698
- $fifu['auto']['cpt']['found'] = function() {
699
  _e("Post types found on your site: ", FIFU_SLUG);
700
  };
701
- $fifu['auto']['source']['desc'] = function() {
702
  _e("Here you can limit the search to a single site, such as \"unsplash.com\".", FIFU_SLUG);
703
  };
704
 
705
  // isbn
706
- $fifu['isbn']['desc'] = function() {
707
  _e("Set featured images automatically. FIFU will check every minute if there are post types without featured images and will perform web searches based on ISBN to get the image URLs.", FIFU_SLUG);
708
  };
709
- $fifu['isbn']['tab']['auto'] = function() {
710
  _e("Auto set", FIFU_SLUG);
711
  };
712
- $fifu['isbn']['tab']['custom'] = function() {
713
  _e("Custom field", FIFU_SLUG);
714
  };
715
- $fifu['isbn']['custom']['desc'] = function() {
716
  _e("If you already have the ISBN saved in your database, you could inform its custom field name here. FIFU would access that and import the value. For example, if the ISBN is saved in the SKU field, you could add \"_sku\", which is the field where the SKU is stored.", FIFU_SLUG);
717
  };
718
 
719
  // screenshot
720
- $fifu['screenshot']['desc'] = function() {
721
  _e("Set screenshots from external web pages as featured images automatically. FIFU will check every minute if there are post types without featured images and will access the informed web page URLs to get their screenshots. The screenshots are saved in the media library and are automatically updated once a month.", FIFU_SLUG);
722
  };
723
- $fifu['screenshot']['tab']['auto'] = function() {
724
  _e("Auto set", FIFU_SLUG);
725
  };
726
- $fifu['screenshot']['tab']['crop'] = function() {
727
  _e("Crop", FIFU_SLUG);
728
  };
729
- $fifu['screenshot']['tab']['scale'] = function() {
730
  _e("Scale", FIFU_SLUG);
731
  };
732
- $fifu['screenshot']['tab']['resolution'] = function() {
733
  _e("High resolution", FIFU_SLUG);
734
  };
735
- $fifu['screenshot']['crop']['height'] = function() {
736
  _e("height (px)", FIFU_SLUG);
737
  };
738
- $fifu['screenshot']['scale']['width'] = function() {
739
  _e("width (px)", FIFU_SLUG);
740
  };
741
- $fifu['screenshot']['resolution']['desc'] = function() {
742
  _e("The default screenshot size is 500x348px. Enable the option below to have full screenshots, i.e., without cropping.", FIFU_SLUG);
743
  };
744
 
745
  // find
746
- $fifu['finder']['desc'] = function() {
747
  _e("Set images from external web pages as featured images automatically. FIFU will check every minute if there are post types without featured images and will access the informed web page URLs to get the main image. For that FIFU looks for the Open Graph tag image (used for sharing on social media). If og:image is not found, FIFU will get the larger image found. It's also able to look for embedded videos and set the first one found as featured video. Videos have priority over images.", FIFU_SLUG);
748
  };
749
- $fifu['finder']['auto'] = function() {
750
  _e("auto set featured media", FIFU_SLUG);
751
  };
752
- $fifu['finder']['video'] = function() {
753
  _e("look for embedded videos", FIFU_SLUG);
754
  };
755
- $fifu['finder']['tab']['auto'] = function() {
756
  _e("Auto set", FIFU_SLUG);
757
  };
758
- $fifu['finder']['tab']['custom'] = function() {
759
  _e("Custom field", FIFU_SLUG);
760
  };
761
- $fifu['finder']['tab']['amazon'] = function() {
762
  _e("Amazon", FIFU_SLUG);
763
  };
764
- $fifu['finder']['custom']['desc'] = function() {
765
  _e("If you already have the web page address saved in your database, you could inform its custom field name here. FIFU would access that and import the value. For example, if the web page URL is saved in the Product URL field, you could add \"_product_url\", which is the field where the external URL to the product is stored.", FIFU_SLUG);
766
  };
767
 
768
  // tags
769
- $fifu['tags']['desc'] = function() {
770
  _e("Set images from Unsplash as featured images automatically. FIFU will check every minute if there are post types without featured images and will perform Unsplash searches based on the tags to get the image URLs.", FIFU_SLUG);
771
  };
772
 
773
  // block
774
- $fifu['block']['desc'] = function() {
775
  _e("Disable right-click on images.", FIFU_SLUG);
776
  };
777
 
778
  // redirection
779
- $fifu['redirection']['desc'] = function() {
780
  _e("Adds a new meta box in the post editor where you can specify a forwarding URL. Then, when accessing a post and clicking on the featured image, the user will be redirected to the specified address.", FIFU_SLUG);
781
  };
782
 
783
  // unsplash
784
- $fifu['unsplash']['desc'] = function() {
785
  _e("Choose the size of the Unsplash images (loaded randomly or via keywords/tags search). Examples of valid sizes: 500x500, 300x400, 1920x1080... Or leave this field empty to get the original size.", FIFU_SLUG);
786
  };
787
 
788
  // replace
789
- $fifu['replace']['desc'] = function() {
790
  _e("Define the URL of an image to be shown in case of image not found error.", FIFU_SLUG);
791
  };
792
 
793
  // default
794
- $fifu['default']['desc'] = function() {
795
  _e("Define the URL of a default image to be displayed when you create (or update) a post type with no featured image.", FIFU_SLUG);
796
  };
797
- $fifu['default']['tab']['url'] = function() {
798
  _e("Image URL", FIFU_SLUG);
799
  };
800
- $fifu['default']['tab']['cpt'] = function() {
801
  _e("Post types", FIFU_SLUG);
802
  };
803
- $fifu['default']['cpt']['found'] = function() {
804
  _e("Post types found on your site: ", FIFU_SLUG);
805
  };
806
- $fifu['default']['cpt']['info'] = function() {
807
  _e("After adding or removing a post type, you need to restart the feature by disabling and enabling the toggle below.", FIFU_SLUG);
808
  };
809
 
810
  // content
811
- $fifu['content']['desc'] = function() {
812
  _e("Some themes don't show the featured image on posts (only on home). If that's is your case and you would like to show the featured image on posts, just enable the toggle. The featured image will appear at the beginning of the content, before the text.", FIFU_SLUG);
813
  };
814
 
815
  // hide
816
- $fifu['hide']['desc'] = function() {
817
  _e("Hide the featured media (image, video or slider) on posts but keeping its visibility on home.", FIFU_SLUG);
818
  };
819
- $fifu['hide']['exception'] = function() {
820
  _e("(except WooCommerce products)", FIFU_SLUG);
821
  };
822
 
823
  // hover
824
- $fifu['hover']['desc'] = function() {
825
  _e("Choose a hover effect to be applied to the featured images on home.", FIFU_SLUG);
826
  };
827
- $fifu['hover']['placeholder'] = function() {
828
  _e("CSS selectors (optional)", FIFU_SLUG);
829
  };
830
- $fifu['hover']['hover17'] = function() {
831
  _e("315 Degrees", FIFU_SLUG);
832
  };
833
- $fifu['hover']['hover02'] = function() {
834
  _e("360 Degrees", FIFU_SLUG);
835
  };
836
- $fifu['hover']['hover07'] = function() {
837
  _e("Blur", FIFU_SLUG);
838
  };
839
- $fifu['hover']['hover10'] = function() {
840
  _e("Blur Gray Scale", FIFU_SLUG);
841
  };
842
- $fifu['hover']['hover04'] = function() {
843
  _e("Brighten", FIFU_SLUG);
844
  };
845
- $fifu['hover']['hover15'] = function() {
846
  _e("Circle", FIFU_SLUG);
847
  };
848
- $fifu['hover']['hover13'] = function() {
849
  _e("Flashing", FIFU_SLUG);
850
  };
851
- $fifu['hover']['hover08'] = function() {
852
  _e("Gray Scale", FIFU_SLUG);
853
  };
854
- $fifu['hover']['hover16'] = function() {
855
  _e("Horizontal Rotation", FIFU_SLUG);
856
  };
857
- $fifu['hover']['hover12'] = function() {
858
  _e("Opacity Color", FIFU_SLUG);
859
  };
860
- $fifu['hover']['hover11'] = function() {
861
  _e("Opacity White", FIFU_SLUG);
862
  };
863
- $fifu['hover']['hover18'] = function() {
864
  _e("Rainbow", FIFU_SLUG);
865
  };
866
- $fifu['hover']['hover06'] = function() {
867
  _e("Rotate", FIFU_SLUG);
868
  };
869
- $fifu['hover']['hover09'] = function() {
870
  _e("Sepia", FIFU_SLUG);
871
  };
872
- $fifu['hover']['hover14'] = function() {
873
  _e("Shine", FIFU_SLUG);
874
  };
875
- $fifu['hover']['hover05'] = function() {
876
  _e("Vertical Rotation", FIFU_SLUG);
877
  };
878
- $fifu['hover']['hover01'] = function() {
879
  _e("Zoom In", FIFU_SLUG);
880
  };
881
- $fifu['hover']['hover03'] = function() {
882
  _e("Zoom Out", FIFU_SLUG);
883
  };
884
 
885
  // validation
886
- $fifu['validation']['desc'] = function() {
887
  _e("It checks images addresses and, when an image is not found, its URL is not saved. However, each validation can take a few seconds.", FIFU_SLUG);
888
  };
889
 
890
  // configuration
891
- $fifu['html']['desc'] = function() {
892
  _e("Set featured images/videos automatically. FIFU will read the HTML of your post and use the 1st image/video URL found as featured media. It happens when you click on Publish/Update button. Images URLs must be in \"img\" tags.", FIFU_SLUG);
893
  };
894
- $fifu['html']['tab']['auto'] = function() {
895
  _e("Auto set", FIFU_SLUG);
896
  };
897
- $fifu['html']['tab']['all'] = function() {
898
  _e("Run for all posts", FIFU_SLUG);
899
  };
900
- $fifu['html']['tab']['run'] = function() {
901
  _e("Run now", FIFU_SLUG);
902
  };
903
- $fifu['html']['tab']['schedule'] = function() {
904
  _e("Scheduling", FIFU_SLUG);
905
  };
906
- $fifu['html']['tab']['important'] = function() {
907
  _e("Important", FIFU_SLUG);
908
  };
909
- $fifu['html']['tab']['requirement'] = function() {
910
  _e("Requirement", FIFU_SLUG);
911
  };
912
- $fifu['html']['position'] = function() {
913
  _e("image/video position", FIFU_SLUG);
914
  };
915
- $fifu['html']['first'] = function() {
916
  _e("use the found image/video as featured image/video", FIFU_SLUG);
917
  };
918
- $fifu['html']['hide'] = function() {
919
  _e("hide the image/video from content", FIFU_SLUG);
920
  };
921
- $fifu['html']['query'] = function() {
922
  _e("remove query strings (whatever follows the question mark sign \"?\")", FIFU_SLUG);
923
  };
924
- $fifu['html']['overwrite'] = function() {
925
  _e("overwrite the existing featured image/video", FIFU_SLUG);
926
  };
927
- $fifu['html']['prioritize'] = function() {
928
  _e("prioritize video than image (if both exist)", FIFU_SLUG);
929
  };
930
- $fifu['html']['decode'] = function() {
931
  _e("decode HTML entities", FIFU_SLUG);
932
  };
933
- $fifu['html']['check'] = function() {
934
  _e("check \"don't get URL from post content\" option, in the post editor, by default", FIFU_SLUG);
935
  };
936
- $fifu['html']['skip']['desc'] = function() {
937
  _e("skip URLs with", FIFU_SLUG);
938
  };
939
- $fifu['html']['skip']['placeholder'] = function() {
940
  _e("example.com,anotherexample,onemore", FIFU_SLUG);
941
  };
942
 
943
  // all
944
- $fifu['all']['desc'] = function() {
945
  _e("Update all your posts applying the configuration above. To repeat the process enable the toggle again.", FIFU_SLUG);
946
  };
947
- $fifu['all']['important'] = function() {
948
  _e("This process can take several minutes and can't be undone, so make a backup.", FIFU_SLUG);
949
  };
950
- $fifu['all']['requirement'] = function() {
951
  _e("If you have thousands of posts, access wp-config.php and add \"set_time_limit(1800);\" before the \"Happy publishing\" line. This ensures the process won't be killed before 30 minutes (the default value is 30 seconds).", FIFU_SLUG);
952
  };
953
- $fifu['all']['tip'] = function() {
954
  _e("To schedule this process (hourly, daily etc), you can use the hook fifu_event with your favorite cron event plugin.", FIFU_SLUG);
955
  };
956
- $fifu['all']['ignore'] = function() {
957
  _e("ignore posts that already have a featured image/video", FIFU_SLUG);
958
  };
959
- $fifu['all']['update'] = function() {
960
  _e("update all your posts now", FIFU_SLUG);
961
  };
962
 
963
  // metadata
964
- $fifu['metadata']['desc'] = function() {
965
  _e("Generate the database registers that helps WordPress components to work with the external images.", FIFU_SLUG);
966
  };
967
- $fifu['metadata']['generate'] = function() {
968
  _e("generate the missing metadata now", FIFU_SLUG);
969
  };
970
 
971
  // clean
972
- $fifu['clean']['desc'] = function() {
973
  _e("Clean the Image Metadata generated by FIFU, but not the URLs. This option might be necessary if you intend to deactivate the plugin and use only local featured images again.", FIFU_SLUG);
974
  };
975
- $fifu['clean']['disabled'] = function() {
976
  _e("it will be automatically disabled when finished", FIFU_SLUG);
977
  };
978
 
979
  // dimensions
980
- $fifu['dimensions']['desc'] = function() {
981
  _e("Some themes and plugins may not work correctly without image dimensions. Then you can run this feature to get the dimensions of ~150 images by minute. Problems with the product gallery can be better solved by FIFU Settings > WooCommerce > FIFU Product Gallery.", FIFU_SLUG);
982
  };
983
- $fifu['dimensions']['now'] = function() {
984
  _e("save the dimensions of all featured images now", FIFU_SLUG);
985
  };
986
 
987
  // schedule
988
- $fifu['schedule']['desc'] = function() {
989
  _e("If you are setting the image URLs in a nonstandard way, the images probably won't be shown at front-end because some extra metadata is required. Here you can schedule an event to run each N minutes and check if there is some image URL without metadata and create that. The FIFU keys are listed on REST API > Custom Fields.", FIFU_SLUG);
990
  };
991
- $fifu['schedule']['interval'] = function() {
992
  _e("Interval (minutes)", FIFU_SLUG);
993
  };
994
 
995
  // database
996
- $fifu['database']['desc'] = function() {
997
  _e("Limit of rows to UPDATE, INSERT or DELETE by query. Higher this number, faster the features Content URL > All Posts, Image Metadata and Clean Metadata. However, if you have too limited resources, don't increase this value too much, otherwise your database can bring down.", FIFU_SLUG);
998
  };
999
- $fifu['database']['limit'] = function() {
1000
  _e("Rows limit", FIFU_SLUG);
1001
  };
1002
 
1003
  // delete
1004
- $fifu['delete']['important'] = function() {
1005
  _e("this plugin doesn't save images in the media library. It means that enabling the two toggles below all post types that have an external featured image will no longer have any featured image. And you can't undo this action later. This also applies to FIFU galleries, videos, sliders and shortcodes.", FIFU_SLUG);
1006
  };
1007
- $fifu['delete']['confirm'] = function() {
1008
  _e("confirm that you are ready to lose your featured images", FIFU_SLUG);
1009
  };
1010
- $fifu['delete']['now'] = function() {
1011
  _e("delete all your URLs now", FIFU_SLUG);
1012
  };
1013
- $fifu['delete']['requirement'] = function() {
1014
  _e("Requirement: access Plugins -> Plugin Editor -> Select plugin to edit -> Featured Image from URL -> Select. Then change the value of FIFU_DELETE_ALL_URLS from false to true.", FIFU_SLUG);
1015
  };
1016
 
1017
  // jetpack
1018
- $fifu['jetpack']['desc'] = function() {
1019
  _e("Your external images will be automatically optimized and served from a free CDN. And to make things even faster FIFU will load the thumbnails in the exact size your site needs.", FIFU_SLUG);
1020
  };
1021
- $fifu['jetpack']['requirement'] = function() {
1022
  _e("for images added in an automated way, the Lazy Load feature below should be enabled.", FIFU_SLUG);
1023
  };
1024
- $fifu['jetpack']['toggle']['cdn'] = function() {
1025
  _e("CDN + optimized thumbnails", FIFU_SLUG);
1026
  };
1027
- $fifu['jetpack']['toggle']['social'] = function() {
1028
  _e("use CDN URLs in social tags and media RSS tags", FIFU_SLUG);
1029
  };
1030
- $fifu['jetpack']['toggle']['crop'] = function() {
1031
  _e("crop featured images (to keep the aspect ratio defined by theme or WordPress media settings)", FIFU_SLUG);
1032
  };
1033
- $fifu['jetpack']['toggle']['content'] = function() {
1034
  _e("apply to content images (requires Lazy Load)", FIFU_SLUG);
1035
  };
1036
 
 
 
 
 
 
 
 
 
1037
  // lazy
1038
- $fifu['lazy']['desc'] = function() {
1039
  _e("With lazy load, images and videos won't be loaded until user scrolls to them. It makes your home (or shop) faster.", FIFU_SLUG);
1040
  };
1041
- $fifu['lazy']['important'] = function() {
1042
  _e("some themes and plugins have their own lazy load implementations, causing conflicts. Your images may not load if you have more than one lazy load component running at the same time.", FIFU_SLUG);
1043
  };
1044
 
1045
  // api
1046
- $fifu['api']['tab']['endpoints'] = function() {
1047
  _e("Endpoints", FIFU_SLUG);
1048
  };
1049
- $fifu['api']['tab']['custom'] = function() {
1050
  _e("Custom fields", FIFU_SLUG);
1051
  };
1052
- $fifu['api']['tab']['product'] = function() {
1053
  _e("Creating your first product", FIFU_SLUG);
1054
  };
1055
- $fifu['api']['tab']['category'] = function() {
1056
  _e("product category", FIFU_SLUG);
1057
  };
1058
- $fifu['api']['tab']['variable'] = function() {
1059
  _e("variable product", FIFU_SLUG);
1060
  };
1061
- $fifu['api']['tab']['variation'] = function() {
1062
  _e("product variation", FIFU_SLUG);
1063
  };
1064
- $fifu['api']['tab']['batch-product'] = function() {
1065
  _e("batch product", FIFU_SLUG);
1066
  };
1067
- $fifu['api']['tab']['batch-category'] = function() {
1068
  _e("batch category", FIFU_SLUG);
1069
  };
1070
- $fifu['api']['tab']['post'] = function() {
1071
  _e("post", FIFU_SLUG);
1072
  };
1073
- $fifu['api']['tab']['documentation'] = function() {
1074
  _e("Documentation", FIFU_SLUG);
1075
  };
1076
- $fifu['api']['endpoint']['product'] = function() {
1077
  _e("Product", FIFU_SLUG);
1078
  };
1079
- $fifu['api']['endpoint']['category'] = function() {
1080
  _e("Product category", FIFU_SLUG);
1081
  };
1082
- $fifu['api']['endpoint']['variation'] = function() {
1083
  _e("Product variation", FIFU_SLUG);
1084
  };
1085
- $fifu['api']['endpoint']['batch-product'] = function() {
1086
  _e("Batch product", FIFU_SLUG);
1087
  };
1088
- $fifu['api']['endpoint']['batch-category'] = function() {
1089
  _e("Batch category", FIFU_SLUG);
1090
  };
1091
- $fifu['api']['endpoint']['post'] = function() {
1092
  _e("Post", FIFU_SLUG);
1093
  };
1094
- $fifu['api']['endpoint']['cpt'] = function() {
1095
  _e("Custom post type", FIFU_SLUG);
1096
  };
1097
- $fifu['api']['custom']['image'] = function() {
1098
  _e("Image", FIFU_SLUG);
1099
  };
1100
- $fifu['api']['custom']['title'] = function() {
1101
  _e("Image title", FIFU_SLUG);
1102
  };
1103
- $fifu['api']['custom']['images'] = function() {
1104
  _e("Product image + gallery (URLs delimited by \"|\")", FIFU_SLUG);
1105
  };
1106
- $fifu['api']['custom']['titles'] = function() {
1107
  _e("Product image title + gallery titles (delimited by \"|\")", FIFU_SLUG);
1108
  };
1109
- $fifu['api']['custom']['video'] = function() {
1110
  _e("Video", FIFU_SLUG);
1111
  };
1112
- $fifu['api']['custom']['videos'] = function() {
1113
  _e("Product video + gallery (URLs delimited by \"|\")", FIFU_SLUG);
1114
  };
1115
- $fifu['api']['custom']['slider'] = function() {
1116
  _e("Slider", FIFU_SLUG);
1117
  };
1118
- $fifu['api']['custom']['isbn'] = function() {
1119
  _e("ISBN", FIFU_SLUG);
1120
  };
1121
- $fifu['api']['custom']['finder'] = function() {
1122
  _e("Media finder (webpage URL)", FIFU_SLUG);
1123
  };
1124
- $fifu['api']['custom']['screenshot'] = function() {
1125
  _e("Screenshot (webpage URL)", FIFU_SLUG);
1126
  };
1127
- $fifu['api']['custom']['key'] = function() {
1128
  _e("Key", FIFU_SLUG);
1129
  };
1130
- $fifu['api']['documentation']['wordpress'] = function() {
1131
  _e("WordPress REST API", FIFU_SLUG);
1132
  };
1133
- $fifu['api']['documentation']['woocommerce'] = function() {
1134
  _e("WooCommerce REST API", FIFU_SLUG);
1135
  };
1136
 
1137
  // shortcode
1138
- $fifu['shortcode']['desc'] = function() {
1139
  _e("This feature adds a field where you can input a shortcode instead of an URL. This way you could have a featured map, featured music etc.", FIFU_SLUG);
1140
  };
1141
- $fifu['shortcode']['important'] = function() {
1142
  _e("FIFU has no control over your shortcode content or how your theme or plugins (or even other FIFU features) will deal with that. So normally there are style issues, except if you use a simple theme, such as Twenty Twenty. Featured Shortcode shouldn't work with page builders, lightboxes, sliders and ajax calls (the shortcode conversion happens on backend). If your theme use background-images, this feature won't work as well.", FIFU_SLUG);
1143
  };
1144
- $fifu['shortcode']['start1'] = function() {
1145
  _e("install and active a shortcode plugin.", FIFU_SLUG);
1146
  };
1147
- $fifu['shortcode']['start2'] = function() {
1148
  _e("create a shortcode that contains an HTML code, such as:", FIFU_SLUG);
1149
  };
1150
- $fifu['shortcode']['start3'] = function() {
1151
  _e("create a new post and paste your [shortcode] into Featured Shortcode field on post editor;", FIFU_SLUG);
1152
  };
1153
- $fifu['shortcode']['start4'] = function() {
1154
  _e("add a ratio (required field) and publish.", FIFU_SLUG);
1155
  };
1156
- $fifu['shortcode']['facebook'] = function() {
1157
  _e("Facebook video", FIFU_SLUG);
1158
  };
1159
- $fifu['shortcode']['map'] = function() {
1160
  _e("Google map", FIFU_SLUG);
1161
  };
1162
- $fifu['shortcode']['spotify'] = function() {
1163
  _e("Spotify playlist", FIFU_SLUG);
1164
  };
1165
- $fifu['shortcode']['tab']['featured'] = function() {
1166
  _e("Featured shortcode", FIFU_SLUG);
1167
  };
1168
- $fifu['shortcode']['tab']['important'] = function() {
1169
  _e("Important", FIFU_SLUG);
1170
  };
1171
- $fifu['shortcode']['tab']['start'] = function() {
1172
  _e("Getting started", FIFU_SLUG);
1173
  };
1174
 
1175
  // FIFU shortcodes
1176
- $fifu['shortcodes']['desc'] = function() {
1177
  _e("Add FIFU elements anywhere with a shortcode.", FIFU_SLUG);
1178
  };
1179
- $fifu['shortcodes']['tab']['shortcodes'] = function() {
1180
  _e("Shortcodes", FIFU_SLUG);
1181
  };
1182
- $fifu['shortcodes']['column']['shortcode'] = function() {
1183
  _e("Shortcode", FIFU_SLUG);
1184
  };
1185
- $fifu['shortcodes']['column']['description'] = function() {
1186
  _e("Description", FIFU_SLUG);
1187
  };
1188
- $fifu['shortcodes']['column']['optional'] = function() {
1189
  _e("Optional parameters", FIFU_SLUG);
1190
  };
1191
- $fifu['shortcodes']['description']['fifu'] = function() {
1192
  _e("Displays the featured image/video of the current post.", FIFU_SLUG);
1193
  };
1194
- $fifu['shortcodes']['description']['slider'] = function() {
1195
  _e("Displays the featured slider of the current post.", FIFU_SLUG);
1196
  };
1197
- $fifu['shortcodes']['description']['gallery'] = function() {
1198
  _e("Displays the product gallery of the current product.", FIFU_SLUG);
1199
  };
1200
 
1201
  // slider
1202
- $fifu['slider']['desc'] = function() {
1203
- _e("This feature allows you to have a slider of images instead of a regular featured image. It's often quite useful on some types of websites, such as real estate. It can run fast even with a huge amount of big images (just follow the performance tips below).", FIFU_SLUG);
1204
  };
1205
- $fifu['slider']['tab']['configuration'] = function() {
1206
  _e("Configuration", FIFU_SLUG);
1207
  };
1208
- $fifu['slider']['featured'] = function() {
1209
  _e("featured slider", FIFU_SLUG);
1210
  };
1211
- $fifu['slider']['pause'] = function() {
1212
  _e("pause autoplay on hover", FIFU_SLUG);
1213
  };
1214
- $fifu['slider']['buttons'] = function() {
1215
  _e("show prev/next buttons", FIFU_SLUG);
1216
  };
1217
- $fifu['slider']['start'] = function() {
1218
  _e("start automatically", FIFU_SLUG);
1219
  };
1220
- $fifu['slider']['click'] = function() {
1221
  _e("show gallery on click", FIFU_SLUG);
1222
  };
1223
- $fifu['slider']['thumb'] = function() {
1224
  _e("show thumbnails gallery", FIFU_SLUG);
1225
  };
1226
- $fifu['slider']['counter'] = function() {
1227
  _e("show counter", FIFU_SLUG);
1228
  };
1229
- $fifu['slider']['crop'] = function() {
1230
  _e("display images in the same height", FIFU_SLUG);
1231
  };
1232
- $fifu['slider']['vertical'] = function() {
 
 
 
1233
  _e("vertical mode", FIFU_SLUG);
1234
  };
1235
- $fifu['slider']['time'] = function() {
1236
  _e("time between each transition (in ms)", FIFU_SLUG);
1237
  };
1238
- $fifu['slider']['duration'] = function() {
1239
  _e("transition duration (in ms)", FIFU_SLUG);
1240
  };
1241
- $fifu['slider']['left'] = function() {
1242
  _e("Prev button", FIFU_SLUG);
1243
  };
1244
- $fifu['slider']['right'] = function() {
1245
  _e("Next button", FIFU_SLUG);
1246
  };
1247
- $fifu['slider']['optional'] = function() {
1248
  _e("image URL (optional)", FIFU_SLUG);
1249
  };
1250
 
1251
  // social
1252
- $fifu['social']['desc'] = function() {
1253
  _e("Use social tags to share your posts (and their featured images) on the social media.", FIFU_SLUG);
1254
  };
1255
- $fifu['social']['add'] = function() {
1256
  _e("add social tags", FIFU_SLUG);
1257
  };
1258
- $fifu['social']['only'] = function() {
1259
  _e("only image tags", FIFU_SLUG);
1260
  };
1261
 
1262
  // rss
1263
- $fifu['rss']['desc'] = function() {
1264
  _e("Add media RSS tags in the RSS feed. This way, services that make use of RSS, such as Google News, can show the featured images.", FIFU_SLUG);
1265
  };
1266
- $fifu['rss']['documentation']['publisher'] = function() {
1267
  _e("<a href='https://support.google.com/news/publisher-center/answer/9545245?hl=en' target='_blank'>Google News: Feed content guidelines</a>", FIFU_SLUG);
1268
  };
1269
 
1270
  // bbpress
1271
- $fifu['bbpress']['desc'] = function() {
1272
  _e("Allows you to add featured images/videos to bbPress forums and topics.", FIFU_SLUG);
1273
  };
1274
- $fifu['bbpress']['fields'] = function() {
1275
  _e("add featured image/video fields to bbPress forms", FIFU_SLUG);
1276
  };
1277
- $fifu['bbpress']['title'] = function() {
1278
  _e("display featured image before forum/topic title", FIFU_SLUG);
1279
  };
1280
- $fifu['bbpress']['avatar'] = function() {
1281
  _e("replace profile picture by featured image", FIFU_SLUG);
1282
  };
1283
- $fifu['bbpress']['copy'] = function() {
1284
  _e("copy the featured image/video to the forum/topic content", FIFU_SLUG);
1285
  };
1286
 
1287
  // title
1288
- $fifu['title']['desc'] = function() {
1289
  _e("Set the title of a featured image with the post title.", FIFU_SLUG);
1290
  };
1291
- $fifu['title']['copy'] = function() {
1292
  _e("copy the post title to FIFU alt/title field (it has effect when you click on Publish button in the post editor)", FIFU_SLUG);
1293
  };
1294
- $fifu['title']['always'] = function() {
1295
  _e("always use the post title as image title (it will ignore FIFU alt/title field)", FIFU_SLUG);
1296
  };
1297
 
1298
  // video
1299
- $fifu['video']['desc'] = function() {
1300
  _e("FIFU supports videos from YouTube, Vimeo, Imgur, 9GAG, Cloudinary, Tumblr, Publitio, JW Player, VideoPress, Sprout and your media library. Videos hosted elsewhere are not supported.", FIFU_SLUG);
1301
  };
1302
- $fifu['video']['tab']['video'] = function() {
1303
  _e("Featured video", FIFU_SLUG);
1304
  };
1305
- $fifu['video']['tab']['local'] = function() {
1306
  _e("Media library", FIFU_SLUG);
1307
  };
1308
- $fifu['video']['local']['desc'] = function() {
1309
  _e("It's possible to use mp4 videos from your media library as featured videos. However it's required to create a video thumbnail, that will be stored in your media library. For that, in the \"Feature video\" meta box, forward the video to a frame you like and click on \"set this frame as thumbnail\" button. Save the post and that's it.", FIFU_SLUG);
1310
  };
1311
 
1312
  // thumbnail
1313
- $fifu['thumbnail']['desc'] = function() {
1314
  _e("Show the video thumbnail instead of the video. Thumbnails are images, so they are loaded much faster than embedded videos.", FIFU_SLUG);
1315
  };
1316
 
1317
  // play
1318
- $fifu['play']['desc'] = function() {
1319
  _e("Add play button to video thumbnail. Clicking on that, the video starts inline or in a lightbox.", FIFU_SLUG);
1320
  };
1321
- $fifu['play']['hide'] = function() {
1322
  _e("hide from grid", FIFU_SLUG);
1323
  };
1324
 
1325
  // width
1326
- $fifu['width']['desc'] = function() {
1327
  _e("Define a minimum width that a theme area should have to show a video. FIFU automatically shows a thumbnail when the minimum width is not reached.", FIFU_SLUG);
1328
  };
1329
 
1330
  // black
1331
- $fifu['controls']['desc'] = function() {
1332
  _e("You can disable video controls here.", FIFU_SLUG);
1333
  };
1334
  // mouseover
1335
- $fifu['mouseover']['desc'] = function() {
1336
- _e("Play a video on \"mouseover\" and pause on \"mouseout\".", FIFU_SLUG);
1337
  };
1338
 
1339
  // autoplay
1340
- $fifu['autoplay']['desc'] = function() {
1341
  _e("Autoplay videos (available for YouTube, Vimeo and local videos).", FIFU_SLUG);
1342
  };
1343
 
1344
  // loop
1345
- $fifu['loop']['desc'] = function() {
1346
  _e("Loop videos (available for YouTube, Vimeo and local videos).", FIFU_SLUG);
1347
  };
1348
 
1349
  // mute
1350
- $fifu['mute']['desc'] = function() {
1351
  _e("Start the videos without audio (available for YouTube, Vimeo and local videos).", FIFU_SLUG);
1352
  };
1353
 
1354
  // background
1355
- $fifu['background']['desc'] = function() {
1356
  _e("Start the videos in background, which means autoplay, no controls and no sound.", FIFU_SLUG);
1357
  };
1358
 
 
 
 
 
 
1359
  // icon
1360
- $fifu['icon']['desc'] = function() {
1361
  _e("Add icons to the video thumbnails in the WooCommerce gallery.", FIFU_SLUG);
1362
  };
1363
- $fifu['icon']['css'] = function() {
1364
  _e("CSS selector", FIFU_SLUG);
1365
  };
1366
- $fifu['icon']['info'] = function() {
1367
  _e("In order to FIFU identify your gallery, it's necessary to inform its CSS selector here. The default value is ol.flex-control-thumbs, but you may need a different selector if your theme overwrites the original WooCommerce layout.", FIFU_SLUG);
1368
  };
1369
 
1370
  // zoom
1371
- $fifu['zoom']['desc'] = function() {
1372
  _e("Disable lightbox and zoom from image gallery.", FIFU_SLUG);
1373
  };
1374
 
1375
  // category
1376
- $fifu['category']['desc'] = function() {
1377
  _e("Set one image to each category. The chosen image is the featured image from the most recent product from that category.", FIFU_SLUG);
1378
  };
1379
 
1380
  // grid
1381
- $fifu['grid']['desc'] = function() {
1382
  _e("Show the category image on the category page, immediately before the product grid.", FIFU_SLUG);
1383
  };
1384
 
1385
  // gallery
1386
- $fifu['gallery']['desc'] = function() {
1387
  _e("It is known that some galleries provided by some themes work only when the dimensions of the images are saved in the database, which is often impracticable due to the slowness of this process. So FIFU offers a product gallery that does not depend on the dimensions of the external images to work correctly. You can configure the behavior of this gallery in the \"Featured slider\" tab. To change the aspect ratio, access \"Featured image > Same Height > Size ratio\".", FIFU_SLUG);
1388
  };
1389
- $fifu['gallery']['toggle'] = function() {
1390
  _e("product gallery", FIFU_SLUG);
1391
  };
1392
- $fifu['gallery']['adaptive'] = function() {
1393
  _e("adaptive height", FIFU_SLUG);
1394
  };
1395
- $fifu['gallery']['videos'] = function() {
1396
  _e("videos before images", FIFU_SLUG);
1397
  };
1398
 
1399
  // buy
1400
- $fifu['buy']['desc'] = function() {
1401
  _e("That's a faster alternative to the WooCommerce single product page. Click on a product image from the shop page to have the main product information in a lightbox. The \"Buy Now\" button adds the product to the cart and redirects to the checkout page.", FIFU_SLUG);
1402
  };
1403
 
1404
  // variable
1405
- $fifu['variable']['desc'] = function() {
1406
  _e("Add FIFU fields (featured image and image gallery) to product variations.", FIFU_SLUG);
1407
  };
1408
- $fifu['variable']['important'] = function() {
1409
  _e("variation image gallery requires FIFU Product Gallery or <a href='https://woocommerce.com/products/woocommerce-additional-variation-images/' target='_blank'>WooCommerce Additional Variation Images</a>. Unofficial solutions are not supported.", FIFU_SLUG);
1410
  };
1411
 
1412
  // import
1413
- $fifu['import']['desc'] = function() {
1414
  _e("Use FIFU with WooCommerce import.", FIFU_SLUG);
1415
  };
1416
- $fifu['import']['tab']['import'] = function() {
1417
  _e("Importing products...", FIFU_SLUG);
1418
  };
1419
- $fifu['import']['tab']['custom'] = function() {
1420
  _e("Custom fields", FIFU_SLUG);
1421
  };
1422
- $fifu['import']['tab']['priority'] = function() {
1423
  _e("Priority", FIFU_SLUG);
1424
  };
1425
- $fifu['import']['import']['csv'] = function() {
1426
  _e("CSV example", FIFU_SLUG);
1427
  };
1428
- $fifu['import']['custom']['key'] = function() {
1429
  _e("Key", FIFU_SLUG);
1430
  };
1431
- $fifu['import']['custom']['image'] = function() {
1432
  _e("Featured image URL", FIFU_SLUG);
1433
  };
1434
- $fifu['import']['custom']['alt'] = function() {
1435
  _e("Featured image title", FIFU_SLUG);
1436
  };
1437
- $fifu['import']['custom']['video'] = function() {
1438
  _e("Featured video URL", FIFU_SLUG);
1439
  };
1440
- $fifu['import']['custom']['images'] = function() {
1441
  _e("Product image URL + gallery URLs (delimited by \"|\")", FIFU_SLUG);
1442
  };
1443
- $fifu['import']['custom']['titles'] = function() {
1444
  _e("Product image title + gallery titles (delimited by \"|\")", FIFU_SLUG);
1445
  };
1446
- $fifu['import']['custom']['videos'] = function() {
1447
  _e("Product video URL + gallery URLs (delimited by \"|\")", FIFU_SLUG);
1448
  };
1449
- $fifu['import']['custom']['slider'] = function() {
1450
  _e("Featured slider URLs (delimited by \"|\")", FIFU_SLUG);
1451
  };
1452
- $fifu['import']['custom']['isbn'] = function() {
1453
  _e("ISBN", FIFU_SLUG);
1454
  };
1455
- $fifu['import']['custom']['finder'] = function() {
1456
  _e("Media finder (webpage URL)", FIFU_SLUG);
1457
  };
1458
- $fifu['import']['custom']['screenshot'] = function() {
1459
  _e("Screenshot (webpage URL)", FIFU_SLUG);
1460
  };
1461
- $fifu['import']['priority']['lists'] = function() {
1462
  _e("prioritize fifu_list_video_url than fifu_list_url (if both exist) ", FIFU_SLUG);
1463
  };
1464
 
1465
  // addon
1466
- $fifu['addon']['desc'] = function() {
1467
  _e("FIFU automatically adds its add-on to WP All Import.", FIFU_SLUG);
1468
  };
1469
- $fifu['addon']['tab']['import'] = function() {
1470
  _e("Importing products...", FIFU_SLUG);
1471
  };
1472
- $fifu['addon']['tab']['faq'] = function() {
1473
  _e("FAQ", FIFU_SLUG);
1474
  };
1475
- $fifu['addon']['import']['csv'] = function() {
1476
  _e("CSV example", FIFU_SLUG);
1477
  };
1478
- $fifu['addon']['faq']['woocommerce'] = function() {
1479
  _e("<a href='http://www.wpallimport.com/documentation/woocommerce/variable-products/'>Importing variable products to WooCommerce</a>", FIFU_SLUG);
1480
  };
1481
- $fifu['addon']['faq']['variation-child-xml'] = function() {
1482
  _e('Examples for "Variations As Child XML Elements"', FIFU_SLUG);
1483
  };
1484
- $fifu['addon']['faq']['xml'] = function() {
1485
  _e("XML", FIFU_SLUG);
1486
  };
1487
- $fifu['addon']['faq']['template'] = function() {
1488
  _e("import template", FIFU_SLUG);
1489
  };
1490
 
1491
  // key
1492
- $fifu['key']['desc'] = function() {
1493
  _e("Please insert your email and license key below to receive updates and use this plugin without limitations.", FIFU_SLUG);
1494
  };
1495
- $fifu['key']['buy'] = function() {
1496
  _e("if you intend to use FIFU in multiple distinct sites you can buy more license keys <a href='https://fifu.app/#price' target='_blank'>here</a>", FIFU_SLUG);
1497
  };
1498
- $fifu['key']['renew'] = function() {
1499
  _e("you can renew your license key(s) or get more information about that <a href='https://ws.featuredimagefromurl.com/keys/' target='_blank'>here</a>", FIFU_SLUG);
1500
  };
1501
- $fifu['key']['email'] = function() {
1502
  _e("Email", FIFU_SLUG);
1503
  };
1504
- $fifu['key']['address'] = function() {
1505
  _e("Email address where you received the license key", FIFU_SLUG);
1506
  };
1507
- $fifu['key']['key'] = function() {
1508
  _e("License key", FIFU_SLUG);
1509
  };
1510
- $fifu['key']['tab']['activation'] = function() {
1511
  _e("Activation", FIFU_SLUG);
1512
  };
1513
- $fifu['key']['tab']['documentation'] = function() {
1514
  _e("Documentation", FIFU_SLUG);
1515
  };
1516
- $fifu['key']['documentation'] = function() {
1517
  _e("FIFU activation is based on the domain. So submitting your license key on the site example.com, [subdomain].example.com or example.com/[anything] will activate the domain example.com. After that you could use the same license key on the sites example.com, [subdomain].example.com and example.com/[anything]. You also could use the same license key to activate a second domain for your test/development/stage site. If your domain has changed, please contact the support.", FIFU_SLUG);
1518
  };
1519
- $fifu['key']['important'] = function() {
1520
  _e("even though with 1 license you could use FIFU on unlimited sites from the same domain, the technical support is still limited to 1 site.", FIFU_SLUG);
1521
  };
1522
 
1523
  // cloud
1524
 
1525
- $fifu['cloud']['details']['social'] = function() {
1526
  _e("FIFU Cloud improves the social sharing by smart cropping the images in the size defined by the main social medias (~1200x630). The smart crop is specially useful when you're sharing a portrait image, because a standard central crop may lead to a picture where the main object is not shown or people appears without their heads.", FIFU_SLUG);
1527
  };
1528
- $fifu['cloud']['details']['rss'] = function() {
1529
  _e("FIFU Cloud improves the RSS feed by smart cropping the images in the size defined by Google News (~1200x800). The smart crop is specially useful when you're sharing a portrait image, because a standard central crop may lead to a picture where the main object is not shown or people appears without their heads.", FIFU_SLUG);
1530
  };
1531
- $fifu['cloud']['details']['photon'] = function() {
1532
  _e("FIFU Cloud can also serve optimized thumbnails from a global CDN, but with many advantages: image storage (not only cache), supports any image source, technical support, smart crop, hotlink protection and more.", FIFU_SLUG);
1533
  };
1534
- $fifu['cloud']['details']['click'] = function() {
1535
  _e("FIFU Clouds improves the security of your images by offering hotlink protection. With that, even if a bot or someone else gets image URLs from the source code of your website, it won't be possible to embed them on other websites. An error message is displayed instead of the images.", FIFU_SLUG);
1536
  };
1537
- $fifu['cloud']['details']['dimensions'] = function() {
1538
  _e("FIFU Cloud eliminates the need for this feature by writing the image dimensions in the image URL. So there are no waiting or style issues anymore.", FIFU_SLUG);
1539
  };
1540
- $fifu['cloud']['details']['library'] = function() {
1541
  _e("FIFU Cloud can work as an alternative to the WordPress media library. Both store images, but FIFU Cloud process them in the cloud, while WordPress core consumes a lot of your website resources. Also, FIFU Cloud is able to process and store thousands of images simultaneously in a few seconds while the media library will work with one image at a time.", FIFU_SLUG);
1542
  };
1543
- $fifu['cloud']['details']['crop'] = function() {
1544
  _e("FIFU Cloud overcomes this feature by serving real cropped thumbnails in the exact size requested by your theme. FIFU Cloud doesn't require any configuration or CSS knowledge and will load your images much faster. Moreover, its smart crop makes use of AI to make your cropped images more attractive.", FIFU_SLUG);
1545
  };
1546
- $fifu['cloud']['details']['replace'] = function() {
1547
  _e("FIFU Cloud prevents image loss by saving your local or external images in the cloud.", FIFU_SLUG);
1548
  };
1549
- $fifu['cloud']['details']['play'] = function() {
1550
  _e("FIFU Cloud overcomes this feature by drawing a play icon on the video image thumbnails. With that, the plugin doesn't need to add any additional HTML or CSS, what might conflict with the theme.", FIFU_SLUG);
1551
  };
1552
 
@@ -1557,70 +1582,70 @@ function fifu_get_strings_meta_box() {
1557
  $fifu = array();
1558
 
1559
  // word
1560
- $fifu['word']['remove'] = function() {
1561
  _e("Remove", FIFU_SLUG);
1562
  };
1563
 
1564
  // common
1565
- $fifu['common']['alt'] = function() {
1566
  _e("alt/title attribute (optional)", FIFU_SLUG);
1567
  };
1568
- $fifu['common']['image'] = function() {
1569
  _e("Image URL", FIFU_SLUG);
1570
  };
1571
- $fifu['common']['preview'] = function() {
1572
  _e("Preview", FIFU_SLUG);
1573
  };
1574
- $fifu['common']['video'] = function() {
1575
  _e("Video URL", FIFU_SLUG);
1576
  };
1577
- $fifu['common']['capture'] = function() {
1578
  _e("set this frame as thumbnail", FIFU_SLUG);
1579
  };
1580
 
1581
  // details
1582
- $fifu['detail']['ratio'] = function() {
1583
  _e("Ratio", FIFU_SLUG);
1584
  };
1585
- $fifu['detail']['eg'] = function() {
1586
  _e("e.g.:", FIFU_SLUG);
1587
  };
1588
 
1589
  // titles
1590
- $fifu['title']['category']['video'] = function() {
1591
  _e("Featured video", FIFU_SLUG);
1592
  };
1593
- $fifu['title']['category']['image'] = function() {
1594
  _e("Featured image", FIFU_SLUG);
1595
  };
1596
 
1597
  // shortcode
1598
- $fifu['shortcode']['placeholder'] = function() {
1599
  _e("Shortcode", FIFU_SLUG);
1600
  };
1601
 
1602
  // video
1603
- $fifu['video']['remove'] = function() {
1604
  _e("remove external featured video", FIFU_SLUG);
1605
  };
1606
 
1607
  // image
1608
- $fifu['image']['ignore'] = function() {
1609
  _e("don't get URL from post content", FIFU_SLUG);
1610
  };
1611
- $fifu['image']['keywords'] = function() {
1612
  _e("Image URL or Keywords", FIFU_SLUG);
1613
  };
1614
- $fifu['image']['remove'] = function() {
1615
  _e("remove external featured image", FIFU_SLUG);
1616
  };
1617
- $fifu['image']['sirv']['add'] = function() {
1618
  _e("Add image from Sirv", FIFU_SLUG);
1619
  };
1620
- $fifu['image']['sirv']['choose'] = function() {
1621
  _e("Choose Sirv image", FIFU_SLUG);
1622
  };
1623
- $fifu['image']['upload'] = function() {
1624
  _e("upload to media library", FIFU_SLUG);
1625
  };
1626
 
@@ -1631,71 +1656,74 @@ function fifu_get_strings_meta_box_php() {
1631
  $fifu = array();
1632
 
1633
  // common
1634
- $fifu['common']['wait'] = function() {
1635
  return __("Please wait a few seconds...", FIFU_SLUG);
1636
  };
1637
- $fifu['common']['image'] = function() {
1638
  return __("Image URL", FIFU_SLUG);
1639
  };
1640
- $fifu['common']['video'] = function() {
1641
  return __("Video URL", FIFU_SLUG);
1642
  };
1643
 
1644
  // wait
1645
- $fifu['title']['product']['image'] = function() {
1646
  return __("Product image", FIFU_SLUG);
1647
  };
1648
- $fifu['title']['product']['images'] = function() {
1649
  return __("Image gallery", FIFU_SLUG);
1650
  };
1651
- $fifu['title']['product']['video'] = function() {
1652
  return __("Featured video", FIFU_SLUG);
1653
  };
1654
- $fifu['title']['product']['videos'] = function() {
1655
  return __("Video gallery", FIFU_SLUG);
1656
  };
1657
- $fifu['title']['product']['slider'] = function() {
1658
  return __("Featured slider", FIFU_SLUG);
1659
  };
1660
- $fifu['title']['post']['image'] = function() {
1661
  return __("Featured image", FIFU_SLUG);
1662
  };
1663
- $fifu['title']['post']['video'] = function() {
1664
  return __("Featured video", FIFU_SLUG);
1665
  };
1666
- $fifu['title']['post']['slider'] = function() {
1667
  return __("Featured slider", FIFU_SLUG);
1668
  };
1669
- $fifu['title']['post']['shortcode'] = function() {
1670
  return __("Featured shortcode", FIFU_SLUG);
1671
  };
1672
- $fifu['title']['post']['isbn'] = function() {
1673
  return __("ISBN", FIFU_SLUG);
1674
  };
1675
- $fifu['title']['post']['screenshot'] = function() {
1676
  return __("Screenshot", FIFU_SLUG);
1677
  };
1678
- $fifu['title']['post']['finder'] = function() {
1679
  return __("Media finder", FIFU_SLUG);
1680
  };
1681
- $fifu['title']['post']['redirection'] = function() {
 
 
 
1682
  return __("Page redirection", FIFU_SLUG);
1683
  };
1684
 
1685
  // variation
1686
- $fifu['variation']['field'] = function() {
1687
  return __("Product Image (URL)", FIFU_SLUG);
1688
  };
1689
- $fifu['variation']['info'] = function() {
1690
  return __("Powered by Featured Image from URL plugin", FIFU_SLUG);
1691
  };
1692
- $fifu['variation']['image'] = function() {
1693
  return __("Image URL", FIFU_SLUG);
1694
  };
1695
- $fifu['variation']['images'] = function() {
1696
  return __("Gallery Image (URL)", FIFU_SLUG);
1697
  };
1698
- $fifu['variation']['upload'] = function() {
1699
  return __("upload to media library", FIFU_SLUG);
1700
  };
1701
 
@@ -1706,51 +1734,51 @@ function fifu_get_strings_wai() {
1706
  $fifu = array();
1707
 
1708
  // titles
1709
- $fifu['title']['image'] = function() {
1710
  return __("Featured image (URL)", FIFU_SLUG);
1711
  };
1712
- $fifu['title']['title'] = function() {
1713
  return __("Featured image title", FIFU_SLUG);
1714
  };
1715
- $fifu['title']['video'] = function() {
1716
  return __("Featured video (URL)", FIFU_SLUG);
1717
  };
1718
- $fifu['title']['images'] = function() {
1719
  return __("Product image URL + gallery URLs", FIFU_SLUG);
1720
  };
1721
- $fifu['title']['titles'] = function() {
1722
  return __("Product image title + gallery titles", FIFU_SLUG);
1723
  };
1724
- $fifu['title']['videos'] = function() {
1725
  return __("Product video URL + gallery URLs", FIFU_SLUG);
1726
  };
1727
- $fifu['title']['slider'] = function() {
1728
  return __("Featured slider (URLs)", FIFU_SLUG);
1729
  };
1730
- $fifu['title']['delimiter'] = function() {
1731
  return __("List delimiter", FIFU_SLUG);
1732
  };
1733
- $fifu['title']['isbn'] = function() {
1734
  return __("ISBN", FIFU_SLUG);
1735
  };
1736
- $fifu['title']['finder'] = function() {
1737
  return __("Media finder (webpage URL)", FIFU_SLUG);
1738
  };
1739
- $fifu['title']['screenshot'] = function() {
1740
  return __("Screenshot (webpage URL)", FIFU_SLUG);
1741
  };
1742
 
1743
  // info
1744
- $fifu['info']['delimited'] = function() {
1745
  return __("Delimited by |", FIFU_SLUG);
1746
  };
1747
- $fifu['info']['default'] = function() {
1748
  return __("Default values is |", FIFU_SLUG);
1749
  };
1750
- $fifu['info']['finder'] = function() {
1751
  return __("Works with \"Auto set featured media using web page address\"", FIFU_SLUG);
1752
  };
1753
- $fifu['info']['screenshot'] = function() {
1754
  return __("Works with \"Auto set screenshot as featured image\"", FIFU_SLUG);
1755
  };
1756
 
@@ -1761,24 +1789,24 @@ function fifu_get_strings_widget() {
1761
  $fifu = array();
1762
 
1763
  // titles
1764
- $fifu['title']['media'] = function() {
1765
  return __("Featured media", FIFU_SLUG);
1766
  };
1767
- $fifu['title']['grid'] = function() {
1768
  return __("Featured grid", FIFU_SLUG);
1769
  };
1770
- $fifu['title']['gallery'] = function() {
1771
  return __("Product gallery", FIFU_SLUG);
1772
  };
1773
 
1774
  // description
1775
- $fifu['description']['media'] = function() {
1776
  return __("Displays the featured image, video or slider from the current post, page or custom post type.", FIFU_SLUG);
1777
  };
1778
- $fifu['description']['grid'] = function() {
1779
  return __("Displays the images from featured slider in a grid format.", FIFU_SLUG);
1780
  };
1781
- $fifu['description']['gallery'] = function() {
1782
  return __("Displays the product gallery.", FIFU_SLUG);
1783
  };
1784
 
@@ -1789,38 +1817,38 @@ function fifu_get_strings_quick_edit() {
1789
  $fifu = array();
1790
 
1791
  // titles
1792
- $fifu['title']['image'] = function() {
1793
  return __("Featured image", FIFU_SLUG);
1794
  };
1795
- $fifu['title']['video'] = function() {
1796
  return __("Featured video", FIFU_SLUG);
1797
  };
1798
- $fifu['title']['search'] = function() {
1799
  return __("Image search", FIFU_SLUG);
1800
  };
1801
 
1802
  // tips
1803
- $fifu['tip']['column'] = function() {
1804
  return __("Quick edit", FIFU_SLUG);
1805
  };
1806
- $fifu['tip']['image'] = function() {
1807
  return __("Set the featured image using an image URL", FIFU_SLUG);
1808
  };
1809
- $fifu['tip']['video'] = function() {
1810
  return __("Set the featured video using a video URL", FIFU_SLUG);
1811
  };
1812
- $fifu['tip']['search'] = function() {
1813
  return __("Search for Unsplash images. Example: sun,sea", FIFU_SLUG);
1814
  };
1815
 
1816
  // placeholder
1817
- $fifu['url']['image'] = function() {
1818
  return __("Image URL", FIFU_SLUG);
1819
  };
1820
- $fifu['url']['video'] = function() {
1821
  return __("Video URL", FIFU_SLUG);
1822
  };
1823
- $fifu['image']['keywords'] = function() {
1824
  return __("Keywords", FIFU_SLUG);
1825
  };
1826
 
@@ -1831,25 +1859,25 @@ function fifu_get_strings_help() {
1831
  $fifu = array();
1832
 
1833
  // title
1834
- $fifu['title']['examples'] = function() {
1835
  return __("Examples", FIFU_SLUG);
1836
  };
1837
- $fifu['title']['keywords'] = function() {
1838
  return __("Keywords", FIFU_SLUG);
1839
  };
1840
- $fifu['title']['more'] = function() {
1841
  return __("More", FIFU_SLUG);
1842
  };
1843
- $fifu['title']['url'] = function() {
1844
  return __("Image URL", FIFU_SLUG);
1845
  };
1846
- $fifu['desc']['empty'] = function() {
1847
  return __("If empty, returns a random image.", FIFU_SLUG);
1848
  };
1849
- $fifu['desc']['size'] = function() {
1850
  return __("You can define the images dimensions at FIFU Settings > Featured image > Unsplash Image Size. For sharing on Facebook, the best size is 1200x630.", FIFU_SLUG);
1851
  };
1852
- $fifu['desc']['more'] = function() {
1853
  return __("FIFU is able to auto set the images based on the post title, post tags, external web page address and more. Take a look at FIFU Settings > Automatic.", FIFU_SLUG);
1854
  };
1855
 
@@ -1860,228 +1888,228 @@ function fifu_get_strings_cloud() {
1860
  $fifu = array();
1861
 
1862
  // title
1863
- $fifu['title']['price'] = function() {
1864
  return _e("Pricing", FIFU_SLUG);
1865
  };
1866
- $fifu['title']['getting'] = function() {
1867
  return _e("Getting started", FIFU_SLUG);
1868
  };
1869
- $fifu['title']['signup'] = function() {
1870
  return _e("Sign up", FIFU_SLUG);
1871
  };
1872
- $fifu['title']['login'] = function() {
1873
  return _e("Log in", FIFU_SLUG);
1874
  };
1875
- $fifu['title']['logout'] = function() {
1876
  return _e("Log out", FIFU_SLUG);
1877
  };
1878
- $fifu['title']['cancel'] = function() {
1879
  return _e("Account", FIFU_SLUG);
1880
  };
1881
- $fifu['title']['payment'] = function() {
1882
  return _e("Payment method and billing information", FIFU_SLUG);
1883
  };
1884
- $fifu['title']['add'] = function() {
1885
  return _e("Upload to Cloud", FIFU_SLUG);
1886
  };
1887
- $fifu['title']['delete'] = function() {
1888
  return _e("Delete from Cloud", FIFU_SLUG);
1889
  };
1890
- $fifu['title']['media'] = function() {
1891
  return _e("Link local image URLs to FIFU plugin", FIFU_SLUG);
1892
  };
1893
- $fifu['title']['billing'] = function() {
1894
  return _e("Billing", FIFU_SLUG);
1895
  };
1896
 
1897
  // tabs
1898
- $fifu['tabs']['welcome'] = function() {
1899
  return _e("Welcome", FIFU_SLUG);
1900
  };
1901
- $fifu['tabs']['login'] = function() {
1902
  return _e("Log in", FIFU_SLUG);
1903
  };
1904
- $fifu['tabs']['send'] = function() {
1905
  return _e("Upload", FIFU_SLUG);
1906
  };
1907
- $fifu['tabs']['delete'] = function() {
1908
  return _e("Delete", FIFU_SLUG);
1909
  };
1910
- $fifu['tabs']['media'] = function() {
1911
  return _e("Local images", FIFU_SLUG);
1912
  };
1913
- $fifu['tabs']['trash'] = function() {
1914
  return _e("Trash", FIFU_SLUG);
1915
  };
1916
- $fifu['tabs']['bill'] = function() {
1917
  return _e("Billing", FIFU_SLUG);
1918
  };
1919
 
1920
  // info
1921
- $fifu['icon']['cancel'] = function() {
1922
  _e("You'll receive a confirmation link by email.", FIFU_SLUG);
1923
  };
1924
- $fifu['icon']['payment'] = function() {
1925
  _e("You'll receive an access link by email.", FIFU_SLUG);
1926
  };
1927
 
1928
  // support
1929
- $fifu['support']['whats'] = function() {
1930
  _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's Edge Network. Thumbnails are automatically created for each image and all are served in webp format.", FIFU_SLUG);
1931
  };
1932
- $fifu['support']['save'] = function() {
1933
  _e("Never lose an image again");
1934
  };
1935
- $fifu['support']['fast'] = function() {
1936
  _e("Images loaded much faster");
1937
  };
1938
- $fifu['support']['process'] = function() {
1939
  _e("Images processed in the cloud");
1940
  };
1941
- $fifu['support']['price'] = function() {
1942
  _e("Pay per stored image");
1943
  };
1944
- $fifu['support']['smart'] = function() {
1945
  _e("Smart crop");
1946
  };
1947
- $fifu['support']['hotlink'] = function() {
1948
  _e("Hotlink protection");
1949
  };
1950
- $fifu['support']['save-desc'] = function() {
1951
  _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.");
1952
  };
1953
- $fifu['support']['fast-desc'] = function() {
1954
  _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.");
1955
  };
1956
- $fifu['support']['process-desc'] = function() {
1957
  _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.");
1958
  };
1959
- $fifu['support']['price-desc'] = function() {
1960
  _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.");
1961
  };
1962
- $fifu['support']['price-desc2'] = 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 will charge 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 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.");
1964
  };
1965
- $fifu['support']['smart-desc'] = function() {
1966
  _e("WordPress themes and social media platforms work with predefined sizes of images and, when they receive an image with non-standard dimensions, they crop the central area of the image, which is not very smart, as often the main object is not located in the center. Facebook, Twitter and LinkedIn, for example, display the featured image at ~1200×630 pixels (landscape orientation), and when you try to share a full body photo (portrait), the cropped person will likely lose its head and feet. But FIFU Cloud detects faces and objects so its cropped images can show what really matters, without compromising style or information.");
1967
  };
1968
- $fifu['support']['hotlink-desc'] = function() {
1969
  _e("You cannot prevent bots from accessing and extracting content from your website, including text and image URLs. And unfortunately, after being stored, the data set can be used to replicate your entire website elsewhere, which will receive visitors that should be yours by right. Fortunately, FIFU Cloud offers hotlink protection, which means that other websites, with the exception of social media, will not be able to display your images. And while this doesn't completely solve the problem, it will certainly inhibit web scraping on your website, because posts with blocked images become much less attractive.");
1970
  };
1971
 
1972
  // getting started
1973
- $fifu['getting']['important'] = function() {
1974
  _e("Important");
1975
  };
1976
- $fifu['getting']['signup']['title'] = function() {
1977
  _e("Sign up");
1978
  };
1979
- $fifu['getting']['login']['title'] = function() {
1980
  _e("Log in");
1981
  };
1982
- $fifu['getting']['upload']['title'] = function() {
1983
  _e("Upload");
1984
  };
1985
- $fifu['getting']['signup']['description'] = function() {
1986
  _e("email confirmation + Stripe subscription");
1987
  };
1988
- $fifu['getting']['login']['description'] = function() {
1989
  _e("two-factor authentication app");
1990
  };
1991
- $fifu['getting']['upload']['description'] = function() {
1992
  _e("selected images");
1993
  };
1994
- $fifu['getting']['description'] = function() {
1995
  _e("in order to load the thumbnails in their best sizes, FIFU Settings > Performance > Lazy Load must be enabled, otherwise the images won't be displayed. If you have any issues or would like to suggest improvements, please contact us at <b>cloud@fifu.app</b>.");
1996
  };
1997
 
1998
  // pricing
1999
- $fifu['pricing']['table']['quantity'] = function() {
2000
  _e("Quantity of images");
2001
  };
2002
- $fifu['pricing']['desc'] = function() {
2003
  _e("You pay for the daily average of stored images in FIFU Cloud, every 30-day period.");
2004
  };
2005
- $fifu['pricing']['thumbnails'] = function() {
2006
  _e("You don't pay for the multiple image thumbnails created automatically by the service. Consider only the amount of images you uploaded to FIFU Cloud.");
2007
  };
2008
- $fifu['pricing']['example'] = function() {
2009
  _e("Price calculation example");
2010
  };
2011
- $fifu['pricing']['table']['interval'] = function() {
2012
  _e("30-day period interval");
2013
  };
2014
- $fifu['pricing']['table']['days'] = function() {
2015
  _e("Number of days");
2016
  };
2017
- $fifu['pricing']['table']['stored'] = function() {
2018
  _e("Quantity of images in FIFU Cloud");
2019
  };
2020
- $fifu['pricing']['table']['average'] = function() {
2021
  _e("30-day average usage");
2022
  };
2023
- $fifu['pricing']['table']['price'] = function() {
2024
  _e("Price per image");
2025
  };
2026
- $fifu['pricing']['table']['tier'] = function() {
2027
  _e("Yours");
2028
  };
2029
- $fifu['pricing']['table']['total'] = function() {
2030
  _e("Total price");
2031
  };
2032
 
2033
  // upload
2034
- $fifu['upload']['desc'] = function() {
2035
  _e("When an image is uploaded to the cloud, it starts to generate costs from the uploaded date.");
2036
  };
2037
 
2038
  // delete
2039
- $fifu['delete']['desc'] = function() {
2040
  _e("When an image is deleted from the cloud, you stop being charged for it from the next day.");
2041
  };
2042
 
2043
  // media
2044
- $fifu['media']['desc'] = function() {
2045
  _e("Before uploading local images to the cloud, the URLs need to be copied to FIFU custom fields, clicking on \"link\" 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.");
2046
  };
2047
 
2048
  // billing
2049
- $fifu['billing']['desc'] = function() {
2050
  _e("FIFU Cloud will charge you for the daily average of stored images, every 30-day period. The following data is updated hourly.");
2051
  };
2052
- $fifu['billing']['current'] = function() {
2053
  _e("Current 30-day period");
2054
  };
2055
- $fifu['billing']['tiers'] = function() {
2056
  _e("Tiers");
2057
  };
2058
- $fifu['billing']['column']['start'] = function() {
2059
  _e("start date");
2060
  };
2061
- $fifu['billing']['column']['end'] = function() {
2062
  _e("end date");
2063
  };
2064
- $fifu['billing']['column']['average'] = function() {
2065
  _e("daily average of stored images");
2066
  };
2067
- $fifu['billing']['column']['cost'] = function() {
2068
  _e("current cost");
2069
  };
2070
 
2071
  // keys
2072
- $fifu['keys']['header'] = function() {
2073
  _e("Multiple image selection");
2074
  };
2075
- $fifu['keys']['adjacent'] = function() {
2076
  _e("Adjacent");
2077
  };
2078
- $fifu['keys']['non-adjacent'] = function() {
2079
  _e("Non-adjacent");
2080
  };
2081
- $fifu['keys']['shift'] = function() {
2082
  _e("click on the first image, press <b>SHIFT</b> key and hold it. While holding Shift, click on the last image.");
2083
  };
2084
- $fifu['keys']['ctrl'] = function() {
2085
  _e("click on the first image, press <b>CTRL</b> key and hold it. While holding Ctrl, click each of the other images you want to select.");
2086
  };
2087
 
4
  $fifu = array();
5
 
6
  // php
7
+ $fifu['php']['message']['wait'] = function () {
8
  return __("Please wait a few seconds...", FIFU_SLUG);
9
  };
10
 
11
  // buttons
12
+ $fifu['button']['submit'] = function () {
13
  _e("Submit", FIFU_SLUG);
14
  };
15
+ $fifu['button']['ok'] = function () {
16
  _e("OK", FIFU_SLUG);
17
  };
18
 
19
  // details
20
+ $fifu['detail']['important'] = function () {
21
  _e("Important", FIFU_SLUG);
22
  };
23
+ $fifu['detail']['requirement'] = function () {
24
  _e("Requirement", FIFU_SLUG);
25
  };
26
+ $fifu['detail']['tip'] = function () {
27
  _e("Tip", FIFU_SLUG);
28
  };
29
+ $fifu['detail']['suggestion'] = function () {
30
  _e("Suggestion", FIFU_SLUG);
31
  };
32
+ $fifu['detail']['example'] = function () {
33
  _e("Example", FIFU_SLUG);
34
  };
35
+ $fifu['detail']['eg'] = function () {
36
  _e("e.g.:", FIFU_SLUG);
37
  };
38
+ $fifu['detail']['result'] = function () {
39
  _e("Result", FIFU_SLUG);
40
  };
41
+ $fifu['detail']['notice'] = function () {
42
  _e("Notice", FIFU_SLUG);
43
  };
44
+ $fifu['detail']['developers'] = function () {
45
  _e("Developers", FIFU_SLUG);
46
  };
47
 
48
  // words
49
+ $fifu['word']['attribute'] = function () {
50
  _e("attribute", FIFU_SLUG);
51
  };
52
+ $fifu['word']['selector'] = function () {
53
  _e("selector", FIFU_SLUG);
54
  };
55
+ $fifu['word']['cover'] = function () {
56
  _e("cover", FIFU_SLUG);
57
  };
58
+ $fifu['word']['contain'] = function () {
59
  _e("contain", FIFU_SLUG);
60
  };
61
+ $fifu['word']['fill'] = function () {
62
  _e("fill", FIFU_SLUG);
63
  };
64
+ $fifu['word']['width'] = function () {
65
  _e("width", FIFU_SLUG);
66
  };
67
+ $fifu['word']['height'] = function () {
68
  _e("height", FIFU_SLUG);
69
  };
70
+ $fifu['word']['color'] = function () {
71
  _e("color", FIFU_SLUG);
72
  };
73
+ $fifu['word']['mode'] = function () {
74
  _e("mode", FIFU_SLUG);
75
  };
76
+ $fifu['word']['inline'] = function () {
77
  _e("inline", FIFU_SLUG);
78
  };
79
+ $fifu['word']['lightbox'] = function () {
80
  _e("lightbox", FIFU_SLUG);
81
  };
82
+ $fifu['word']['zindex'] = function () {
83
  _e("z-index", FIFU_SLUG);
84
  };
85
+ $fifu['word']['zoom'] = function () {
86
  _e("zoom", FIFU_SLUG);
87
  };
88
+ $fifu['word']['function'] = function () {
89
  _e("Function", FIFU_SLUG);
90
  };
91
+ $fifu['word']['field'] = function () {
92
  _e("Fields", FIFU_SLUG);
93
  };
94
+ $fifu['word']['delimiter'] = function () {
95
  _e("Delimiter", FIFU_SLUG);
96
  };
97
+ $fifu['word']['effect'] = function () {
98
  _e("Effect", FIFU_SLUG);
99
  };
100
+ $fifu['word']['documentation'] = function () {
101
  _e("Documentation", FIFU_SLUG);
102
  };
103
+ $fifu['word']['tags'] = function () {
104
  _e("Tags", FIFU_SLUG);
105
  };
106
 
107
  // where
108
+ $fifu['where']['page'] = function () {
109
  _e("on page", FIFU_SLUG);
110
  };
111
+ $fifu['where']['post'] = function () {
112
  _e("on post ", FIFU_SLUG);
113
  };
114
+ $fifu['where']['cpt'] = function () {
115
  _e("on custom post type", FIFU_SLUG);
116
  };
117
+ $fifu['where']['home'] = function () {
118
  _e("on home (or shop)", FIFU_SLUG);
119
  };
120
+ $fifu['where']['single'] = function () {
121
  _e("on single post types", FIFU_SLUG);
122
  };
123
+ $fifu['where']['desktop'] = function () {
124
  _e("on desktop", FIFU_SLUG);
125
  };
126
+ $fifu['where']['mobile'] = function () {
127
  _e("on mobile", FIFU_SLUG);
128
  };
129
 
130
  // player
131
+ $fifu['player']['youtube'] = function () {
132
  _e("for YouTube videos", FIFU_SLUG);
133
  };
134
+ $fifu['player']['vimeo'] = function () {
135
  _e("for Vimeo videos", FIFU_SLUG);
136
  };
137
 
138
  // chrome
139
+ $fifu['chrome']['link'] = function () {
140
  _e("Chrome extension", FIFU_SLUG);
141
  };
142
 
143
  // referral
144
+ $fifu['referral']['link'] = function () {
145
  _e("Affiliate program", FIFU_SLUG);
146
  };
147
 
148
  // messages
149
+ $fifu['message']['wait'] = function () {
150
  _e("Please wait a few seconds...", FIFU_SLUG);
151
  };
152
 
153
  // tabs
154
+ $fifu['tab']['help'] = function () {
155
  _e("Help", FIFU_SLUG);
156
  };
157
+ $fifu['tab']['admin'] = function () {
158
  _e("Admin", FIFU_SLUG);
159
  };
160
+ $fifu['tab']['image'] = function () {
161
  _e("Featured image", FIFU_SLUG);
162
  };
163
+ $fifu['tab']['auto'] = function () {
164
  _e("Automatic", FIFU_SLUG);
165
  };
166
+ $fifu['tab']['metadata'] = function () {
167
  _e("Metadata", FIFU_SLUG);
168
  };
169
+ $fifu['tab']['performance'] = function () {
170
  _e("Performance", FIFU_SLUG);
171
  };
172
+ $fifu['tab']['api'] = function () {
173
  _e("REST API", FIFU_SLUG);
174
  };
175
+ $fifu['tab']['shortcode'] = function () {
176
  _e("Shortcode", FIFU_SLUG);
177
  };
178
+ $fifu['tab']['slider'] = function () {
179
  _e("Featured slider", FIFU_SLUG);
180
  };
181
+ $fifu['tab']['audio'] = function () {
182
+ _e("Featured audio", FIFU_SLUG);
183
+ };
184
+ $fifu['tab']['social'] = function () {
185
  _e("Social", FIFU_SLUG);
186
  };
187
+ $fifu['tab']['video'] = function () {
188
  _e("Featured video", FIFU_SLUG);
189
  };
190
+ $fifu['tab']['woo'] = function () {
191
  _e("WooCommerce", FIFU_SLUG);
192
  };
193
+ $fifu['tab']['wai'] = function () {
194
  _e("WP All Import", FIFU_SLUG);
195
  };
196
+ $fifu['tab']['trouble'] = function () {
197
  _e("Troubleshooting", FIFU_SLUG);
198
  };
199
+ $fifu['tab']['key'] = function () {
200
  _e("License key", FIFU_SLUG);
201
  };
202
 
203
  // titles
204
+ $fifu['title']['support'] = function () {
205
  _e("Fast support", FIFU_SLUG);
206
  };
207
+ $fifu['title']['start'] = function () {
208
  _e("Getting started", FIFU_SLUG);
209
  };
210
+ $fifu['title']['dev'] = function () {
211
  _e("Integrate your plugin with FIFU", FIFU_SLUG);
212
  };
213
+ $fifu['title']['column'] = function () {
214
  _e("Quick Edit Column", FIFU_SLUG);
215
  };
216
+ $fifu['title']['fields'] = function () {
217
  _e("Product Gallery", FIFU_SLUG);
218
  };
219
+ $fifu['title']['reset'] = function () {
220
  _e("Reset Settings", FIFU_SLUG);
221
  };
222
+ $fifu['title']['cli'] = function () {
223
  _e("WP-CLI", FIFU_SLUG);
224
  };
225
+ $fifu['title']['media'] = function () {
226
  _e("Save in the Media Library", FIFU_SLUG);
227
  };
228
+ $fifu['title']['height'] = function () {
229
  _e("Same Height", FIFU_SLUG);
230
  };
231
+ $fifu['title']['auto'] = function () {
232
  _e("Auto set featured image using post title and search engine", FIFU_SLUG);
233
  };
234
+ $fifu['title']['isbn'] = function () {
235
  _e("Auto set featured image using ISBN and books API", FIFU_SLUG);
236
  };
237
+ $fifu['title']['screenshot'] = function () {
238
  _e("Auto set screenshot as featured image", FIFU_SLUG);
239
  };
240
+ $fifu['title']['finder'] = function () {
241
  _e("Auto set featured media using web page address", FIFU_SLUG);
242
  };
243
+ $fifu['title']['tags'] = function () {
244
  _e("Auto set featured image from Unsplash using tags", FIFU_SLUG);
245
  };
246
+ $fifu['title']['block'] = function () {
247
  _e("Disable right-click", FIFU_SLUG);
248
  };
249
+ $fifu['title']['unsplash'] = function () {
250
  _e("Unsplash Image Size", FIFU_SLUG);
251
  };
252
+ $fifu['title']['replace'] = function () {
253
  _e("Replace Not Found Image", FIFU_SLUG);
254
  };
255
+ $fifu['title']['default'] = function () {
256
  _e("Default Featured Image", FIFU_SLUG);
257
  };
258
+ $fifu['title']['content'] = function () {
259
  _e("Featured Image in Content", FIFU_SLUG);
260
  };
261
+ $fifu['title']['hide'] = function () {
262
  _e("Hide Featured Media", FIFU_SLUG);
263
  };
264
+ $fifu['title']['redirection'] = function () {
265
  _e("Page Redirection", FIFU_SLUG);
266
  };
267
+ $fifu['title']['hover'] = function () {
268
  _e("Hover Effects", FIFU_SLUG);
269
  };
270
+ $fifu['title']['validation'] = function () {
271
  _e("Image Validation", FIFU_SLUG);
272
  };
273
+ $fifu['title']['html'] = function () {
274
  _e("Auto set featured media from post content", FIFU_SLUG);
275
  };
276
+ $fifu['title']['metadata'] = function () {
277
  _e("Image Metadata", FIFU_SLUG);
278
  };
279
+ $fifu['title']['clean'] = function () {
280
  _e("Clean Metadata", FIFU_SLUG);
281
  };
282
+ $fifu['title']['dimensions'] = function () {
283
  _e("Save Image Dimensions", FIFU_SLUG);
284
  };
285
+ $fifu['title']['schedule'] = function () {
286
  _e("Schedule Metadata Generation", FIFU_SLUG);
287
  };
288
+ $fifu['title']['database'] = function () {
289
  _e("Database", FIFU_SLUG);
290
  };
291
+ $fifu['title']['delete'] = function () {
292
  _e("Delete All URLs", FIFU_SLUG);
293
  };
294
+ $fifu['title']['audio'] = function () {
295
+ _e("Featured Audio", FIFU_SLUG);
296
+ };
297
+ $fifu['title']['lazy'] = function () {
298
  _e("Lazy Load", FIFU_SLUG);
299
  };
300
+ $fifu['title']['jetpack'] = function () {
301
  _e("CDN + Optimized Thumbnails", FIFU_SLUG);
302
  };
303
+ $fifu['title']['api'] = function () {
304
  _e("WP / WooCommerce REST API", FIFU_SLUG);
305
  };
306
+ $fifu['title']['shortcode'] = function () {
307
  _e("Featured Shortcode", FIFU_SLUG);
308
  };
309
+ $fifu['title']['shortcodes'] = function () {
310
  _e("FIFU Shortcodes", FIFU_SLUG);
311
  };
312
+ $fifu['title']['slider'] = function () {
313
  _e("Featured Slider", FIFU_SLUG);
314
  };
315
+ $fifu['title']['social'] = function () {
316
  _e("Social Tags", FIFU_SLUG);
317
  };
318
+ $fifu['title']['bbpress'] = function () {
319
  _e("bbPress", FIFU_SLUG);
320
  };
321
+ $fifu['title']['rss'] = function () {
322
  _e("Media RSS Tags", FIFU_SLUG);
323
  };
324
+ $fifu['title']['title'] = function () {
325
  _e("Auto Set Image Title", FIFU_SLUG);
326
  };
327
+ $fifu['title']['video'] = function () {
328
  _e("Featured Video", FIFU_SLUG);
329
  };
330
+ $fifu['title']['thumbnail'] = function () {
331
  _e("Video Thumbnail", FIFU_SLUG);
332
  };
333
+ $fifu['title']['play'] = function () {
334
  _e("Play Button", FIFU_SLUG);
335
  };
336
+ $fifu['title']['width'] = function () {
337
  _e("Minimum Width", FIFU_SLUG);
338
  };
339
+ $fifu['title']['controls'] = function () {
340
  _e("Video Controls", FIFU_SLUG);
341
  };
342
+ $fifu['title']['mouseover'] = function () {
343
  _e("Mouseover Autoplay", FIFU_SLUG);
344
  };
345
+ $fifu['title']['autoplay'] = function () {
346
  _e("Autoplay", FIFU_SLUG);
347
  };
348
+ $fifu['title']['loop'] = function () {
349
  _e("Loop", FIFU_SLUG);
350
  };
351
+ $fifu['title']['mute'] = function () {
352
  _e("Mute", FIFU_SLUG);
353
  };
354
+ $fifu['title']['background'] = function () {
355
  _e("Background Video", FIFU_SLUG);
356
  };
357
+ $fifu['title']['privacy'] = function () {
358
+ _e("Privacy Enhanced Mode", FIFU_SLUG);
359
+ };
360
+ $fifu['title']['icon'] = function () {
361
  _e("Gallery Icon", FIFU_SLUG);
362
  };
363
+ $fifu['title']['zoom'] = function () {
364
  _e("Lightbox and Zoom", FIFU_SLUG);
365
  };
366
+ $fifu['title']['category'] = function () {
367
  _e("Auto Set Category Images", FIFU_SLUG);
368
  };
369
+ $fifu['title']['grid'] = function () {
370
  _e("Category Image on Grid", FIFU_SLUG);
371
  };
372
+ $fifu['title']['variable'] = function () {
373
  _e("Variable Product", FIFU_SLUG);
374
  };
375
+ $fifu['title']['import'] = function () {
376
  _e("Import", FIFU_SLUG);
377
  };
378
+ $fifu['title']['addon'] = function () {
379
  _e("Add-On", FIFU_SLUG);
380
  };
381
+ $fifu['title']['key'] = function () {
382
  _e("License Key", FIFU_SLUG);
383
  };
384
+ $fifu['title']['gallery'] = function () {
385
  _e("FIFU Product Gallery", FIFU_SLUG);
386
  };
387
+ $fifu['title']['buy'] = function () {
388
  _e("Fast Buy", FIFU_SLUG);
389
  };
390
 
391
  // support
392
+ $fifu['support']['email'] = function () {
393
  _e("If you need help, you can refer to troubleshooting or send an email to", FIFU_SLUG);
394
  };
395
+ $fifu['support']['with'] = function () {
396
  _e("with this", FIFU_SLUG);
397
  };
398
+ $fifu['support']['status'] = function () {
399
  _e("status", FIFU_SLUG);
400
  };
401
+ $fifu['support']['disappeared'] = function () {
402
  _e("All my images disappeared", FIFU_SLUG);
403
  };
404
+ $fifu['support']['plugin'] = function () {
405
  _e("A plugin doesn't work with FIFU ", FIFU_SLUG);
406
  };
407
+ $fifu['support']['style'] = function () {
408
  _e("I'm having style issues ", FIFU_SLUG);
409
  };
410
+ $fifu['support']['facebook'] = function () {
411
  _e("Facebook doesn't share my images", FIFU_SLUG);
412
  };
413
+ $fifu['support']['null'] = function () {
414
  _e("\"Nulled\" Premium doesn't work", FIFU_SLUG);
415
  };
416
+ $fifu['support']['money'] = function () {
417
  _e("Broken image icon is being displayed", FIFU_SLUG);
418
  };
419
+ $fifu['support']['speed'] = function () {
420
  _e("PageSpeed and GTmetrix issues", FIFU_SLUG);
421
  };
422
+ $fifu['support']['disappeared-desc'] = function () {
423
  _e("You were probably using a deprecated feature. Just do it: 1) access Metadata tab; 2) run Clean Metadata; 3) enable Image Metadata (~50,000 URLs/min); 4) clean your cache (optional).", FIFU_SLUG);
424
  };
425
+ $fifu['support']['plugin-desc'] = function () {
426
  _e("Contact us. If you are available to discuss the details and the plugin is free, we should provide an integration. Or contact its developer and ask him to use the FIFU integration functions below.", FIFU_SLUG);
427
  };
428
+ $fifu['support']['style-desc'] = function () {
429
  _e("Some themes and plugins aren't responsive enough to work with external images. You may solve that by using <b>FIFU Cloud</b> (fast) or running Metadata > Save Image Dimensions (slow).", FIFU_SLUG);
430
  };
431
+ $fifu['support']['facebook-desc'] = function () {
432
  _e("You probably have a plugin or theme that sets a default image as the Facebook image (og:image tag). Just find and disable the option. And make sure Social > Social Tags is enabled.", FIFU_SLUG);
433
  };
434
+ $fifu['support']['null-desc'] = function () {
435
  _e("This plugin has no nulled versions, but modified versions. Don't install that. It's illegal and may ruin your site. Moreover, sales of the original premium version keep this project alive.", FIFU_SLUG);
436
  };
437
+ $fifu['support']['money-desc'] = function () {
438
  _e("Possibilities: a) image file deleted by owner; b) URL has changed; c) hotlink protection; d) URL is wrong. Use <b>FIFU Cloud</b> to prevent image loss or bypass hotlink protection.", FIFU_SLUG);
439
  };
440
+ $fifu['support']['speed-desc'] = function () {
441
  _e("Solve that by activating Performance > CDN + Optimized Thumbnails or <b>FIFU Cloud</b> (much better). Even large images hosted on slow servers should load quickly on your website.", FIFU_SLUG);
442
  };
443
 
444
  // start
445
+ $fifu['start']['url']['external'] = function () {
446
  _e("Hi, I'm an EXTERNAL image!", FIFU_SLUG);
447
  };
448
+ $fifu['start']['url']['not'] = function () {
449
  _e("It means I'm NOT in your media library and I'm NOT an attached plugin file too.", FIFU_SLUG);
450
  };
451
+ $fifu['start']['url']['url'] = function () {
452
  _e("Don't you believe me? So why don't you check my Internet address (also known as URL)?", FIFU_SLUG);
453
  };
454
+ $fifu['start']['url']['right'] = function () {
455
  _e("1) right click me now;", FIFU_SLUG);
456
  };
457
+ $fifu['start']['url']['copy'] = function () {
458
  _e("2) select \"Copy image address\";", FIFU_SLUG);
459
  };
460
+ $fifu['start']['url']['paste'] = function () {
461
  _e("3) paste it here:", FIFU_SLUG);
462
  };
463
+ $fifu['start']['url']['drag'] = function () {
464
  _e("or just drag and drop me here", FIFU_SLUG);
465
  };
466
+ $fifu['start']['url']['click'] = function () {
467
  _e("Right click me!", FIFU_SLUG);
468
  };
469
+ $fifu['start']['post']['famous'] = function () {
470
  _e("Since now you have my address (also known as URL), how about making me famous?", FIFU_SLUG);
471
  };
472
+ $fifu['start']['post']['create'] = function () {
473
  _e("You just need to create a post and use me as the featured image:", FIFU_SLUG);
474
  };
475
+ $fifu['start']['post']['new'] = function () {
476
  _e("1) add a new post;", FIFU_SLUG);
477
  };
478
+ $fifu['start']['post']['box'] = function () {
479
  _e("2) find the box", FIFU_SLUG);
480
  };
481
+ $fifu['start']['post']['featured'] = function () {
482
  _e("Featured image", FIFU_SLUG);
483
  };
484
+ $fifu['start']['post']['address'] = function () {
485
  _e("3) paste my address into \"Image URL\" field.", FIFU_SLUG);
486
  };
487
+ $fifu['start']['post']['storage'] = function () {
488
  _e("And don't worry about storage. I will remain EXTERNAL. I WON'T be uploaded to your media library.", FIFU_SLUG);
489
  };
490
 
491
  // dev
492
+ $fifu['dev']['function'] = function () {
493
  _e("Are you a WordPress developer? So now you can easily integrate your code with FIFU using the functions below.", FIFU_SLUG);
494
  };
495
+ $fifu['dev']['args'] = function () {
496
  _e("All you need is to inform the post id and the image url(s). And FIFU will set the custom fields and create the metadata.", FIFU_SLUG);
497
  };
498
+ $fifu['dev']['plugins'] = function () {
499
  _e("Plugins that make use of FIFU integration functions:", FIFU_SLUG);
500
  };
501
+ $fifu['dev']['field']['image'] = function () {
502
  _e("Featured image", FIFU_SLUG);
503
  };
504
+ $fifu['dev']['field']['video'] = function () {
505
  _e("Featured video", FIFU_SLUG);
506
  };
507
+ $fifu['dev']['field']['product'] = function () {
508
  _e("Product image", FIFU_SLUG);
509
  };
510
+ $fifu['dev']['field']['gallery'] = function () {
511
  _e("Image gallery", FIFU_SLUG);
512
  };
513
+ $fifu['dev']['field']['category']['image'] = function () {
514
  _e("Product category image", FIFU_SLUG);
515
  };
516
+ $fifu['dev']['field']['category']['video'] = function () {
517
  _e("Product category video", FIFU_SLUG);
518
  };
519
 
520
  // column
521
+ $fifu['column']['desc'] = function () {
522
  _e("The plugin adds a \"Quick Edit\" column to \"Posts > All Posts\". Below you can choose the height (px) of the images in the column. To disable that, just uncheck \"Quick Edit\" in the Screen Options.", FIFU_SLUG);
523
  };
524
 
525
  // cli
526
+ $fifu['cli']['desc'] = function () {
527
  _e("Configure FIFU via command line.", FIFU_SLUG);
528
  };
529
+ $fifu['cli']['tab']['commands'] = function () {
530
  _e("Commands", FIFU_SLUG);
531
  };
532
+ $fifu['cli']['tab']['documentation'] = function () {
533
  _e("Documentation", FIFU_SLUG);
534
  };
535
+ $fifu['cli']['documentation']['site'] = function () {
536
  _e("WP-CLI", FIFU_SLUG);
537
  };
538
+ $fifu['cli']['column']['tab'] = function () {
539
  _e("Tab", FIFU_SLUG);
540
  };
541
+ $fifu['cli']['column']['section'] = function () {
542
  _e("Section", FIFU_SLUG);
543
  };
544
+ $fifu['cli']['column']['feature'] = function () {
545
  _e("Feature", FIFU_SLUG);
546
  };
547
+ $fifu['cli']['column']['option'] = function () {
548
  _e("Option", FIFU_SLUG);
549
  };
550
+ $fifu['cli']['column']['command'] = function () {
551
  _e("Command", FIFU_SLUG);
552
  };
553
+ $fifu['cli']['column']['eg'] = function () {
554
  _e("e.g. (args)", FIFU_SLUG);
555
  };
556
 
557
  // fields
558
+ $fifu['fields']['desc'] = function () {
559
  _e("Choose the number of fields in the product editor.", FIFU_SLUG);
560
  };
561
+ $fifu['fields']['image'] = function () {
562
  _e("Image gallery", FIFU_SLUG);
563
  };
564
+ $fifu['fields']['video'] = function () {
565
  _e("Video gallery", FIFU_SLUG);
566
  };
567
+ $fifu['fields']['slider'] = function () {
568
  _e("number of fields in the post editor", FIFU_SLUG);
569
  };
570
 
571
  // reset
572
+ $fifu['reset']['desc'] = function () {
573
  _e("Reset FIFU settings to the default configuration.", FIFU_SLUG);
574
  };
575
+ $fifu['reset']['reset'] = function () {
576
  _e("reset settings", FIFU_SLUG);
577
  };
578
 
579
  // media library
580
+ $fifu['media']['desc'] = function () {
581
  _e("It's possible to save the external images in the media library and set those new local images as standard WordPress/WooCommerce featured/gallery images automatically. Make a backup before running the cron job, because after making an image local it can't be external again, so FIFU will have no more control over that.", FIFU_SLUG);
582
  };
583
+ $fifu['media']['upload'] = function () {
584
  _e("show upload button on post editor", FIFU_SLUG);
585
  };
586
+ $fifu['media']['job'] = function () {
587
  _e("run a cron job that searches for external images and saves them in the media library periodically.", FIFU_SLUG);
588
  };
589
+ $fifu['media']['dev'] = function () {
590
  _e("php function that runs the upload process once and immediately (i.e. without a cron job).", FIFU_SLUG);
591
  };
592
+ $fifu['media']['run'] = function () {
593
  _e("Run now", FIFU_SLUG);
594
  };
595
+ $fifu['media']['tab']['main'] = function () {
596
  _e("Main", FIFU_SLUG);
597
  };
598
+ $fifu['media']['tab']['proxy'] = function () {
599
  _e("Proxy", FIFU_SLUG);
600
  };
601
+ $fifu['media']['tab']['dev'] = function () {
602
  _e("Developer", FIFU_SLUG);
603
  };
604
+ $fifu['media']['proxy']['desc'] = function () {
605
  _e("Proxies are used to bypass IP ban, what may happen when your site downloads too many images from the same host. As disadvantages, a proxy can limit the number of requests and its IP can be banned as well. Both will force the plugin to try other proxies until find a good one. So proxies should make the process much slower, except if you have access to a private proxy. By default, FIFU works with a list of public proxies updated every 30 minutes and caches the ones that are working with your image URLs.", FIFU_SLUG);
606
  };
607
+ $fifu['media']['proxy']['toggle'] = function () {
608
  _e("use proxies to intermediate the traffic between your site and the image hosts", FIFU_SLUG);
609
  };
610
+ $fifu['media']['proxy']['private'] = function () {
611
  _e("Private proxy", FIFU_SLUG);
612
  };
613
+ $fifu['media']['proxy']['placeholder'] = function () {
614
  _e("192.168.0.1:80, 127.0.0.1:8080, username:password@172.16.0.0:443", FIFU_SLUG);
615
  };
616
 
617
  // height
618
+ $fifu['height']['desc'] = function () {
619
  _e("If you have different sizes of images on your home (or shop), enable the toggle below to show them in the same height. Depending on your theme, it may be necessary to use a selector to inform where is the group of images that you want to resize.", FIFU_SLUG);
620
  };
621
+ $fifu['height']['tab']['height'] = function () {
622
  _e("Same height", FIFU_SLUG);
623
  };
624
+ $fifu['height']['tab']['selector'] = function () {
625
  _e("Add selector", FIFU_SLUG);
626
  };
627
+ $fifu['height']['tab']['default'] = function () {
628
  _e("Default selectors", FIFU_SLUG);
629
  };
630
+ $fifu['height']['tab']['ignore'] = function () {
631
  _e("Ignore images", FIFU_SLUG);
632
  };
633
+ $fifu['height']['tab']['ratio'] = function () {
634
  _e("Size ratio", FIFU_SLUG);
635
  };
636
+ $fifu['height']['tab']['fit'] = function () {
637
  _e("Object fit", FIFU_SLUG);
638
  };
639
+ $fifu['height']['tab']['delay'] = function () {
640
  _e("Delay", FIFU_SLUG);
641
  };
642
+ $fifu['height']['selector']['desc'] = function () {
643
  _e("Examples of selectors...", FIFU_SLUG);
644
  };
645
+ $fifu['height']['default']['desc'] = function () {
646
  _e("Default selectors:", FIFU_SLUG);
647
  };
648
+ $fifu['height']['ignore']['desc'] = function () {
649
  _e("Ignore images...", FIFU_SLUG);
650
  };
651
+ $fifu['height']['ignore']['parent'] = function () {
652
  _e("Parent selectors:", FIFU_SLUG);
653
  };
654
+ $fifu['height']['height']['ratio'] = function () {
655
  _e("and you want a 4:3 size ratio", FIFU_SLUG);
656
  };
657
+ $fifu['height']['height']['fit'] = function () {
658
  _e("and you want a 4:3 size ratio and cover as object fit", FIFU_SLUG);
659
  };
660
+ $fifu['height']['ratio']['desc'] = function () {
661
  _e("Examples of valid size ratios", FIFU_SLUG);
662
  };
663
+ $fifu['height']['fit']['cover'] = function () {
664
  _e("crops the images (the options center, top and bottom will be available in the post editor);", FIFU_SLUG);
665
  };
666
+ $fifu['height']['fit']['contain'] = function () {
667
  _e("shows full images (in smaller sizes);", FIFU_SLUG);
668
  };
669
+ $fifu['height']['fit']['fill'] = function () {
670
  _e("deforms the images.", FIFU_SLUG);
671
  };
672
+ $fifu['height']['delay']['time'] = function () {
673
  _e("time (in ms)", FIFU_SLUG);
674
  };
675
 
676
  // auto set
677
+ $fifu['auto']['desc'] = function () {
678
  _e("Set featured images automatically. FIFU will check every minute if there are post types without featured images and will perform web searches based on post titles to get the image URLs (~10/min).", FIFU_SLUG);
679
  };
680
+ $fifu['auto']['tab']['auto'] = function () {
681
  _e("Auto set", FIFU_SLUG);
682
  };
683
+ $fifu['auto']['tab']['filters'] = function () {
684
  _e("Filters", FIFU_SLUG);
685
  };
686
+ $fifu['auto']['tab']['blocklist'] = function () {
687
  _e("Blocklist", FIFU_SLUG);
688
  };
689
+ $fifu['auto']['tab']['cpt'] = function () {
690
  _e("Post types", FIFU_SLUG);
691
  };
692
+ $fifu['auto']['tab']['source'] = function () {
693
  _e("Source", FIFU_SLUG);
694
  };
695
+ $fifu['auto']['filter']['width'] = function () {
696
  _e("minimum width (px)", FIFU_SLUG);
697
  };
698
+ $fifu['auto']['filter']['height'] = function () {
699
  _e("minimum height (px)", FIFU_SLUG);
700
  };
701
+ $fifu['auto']['filter']['blocklist'] = function () {
702
  _e("List of strings that shouldn't be in the image URL:", FIFU_SLUG);
703
  };
704
+ $fifu['auto']['cpt']['desc'] = function () {
705
  _e("This feature is pre configured to work only with the post type \"post\". But you can include more post types below (delimited by \",\").", FIFU_SLUG);
706
  };
707
+ $fifu['auto']['cpt']['found'] = function () {
708
  _e("Post types found on your site: ", FIFU_SLUG);
709
  };
710
+ $fifu['auto']['source']['desc'] = function () {
711
  _e("Here you can limit the search to a single site, such as \"unsplash.com\".", FIFU_SLUG);
712
  };
713
 
714
  // isbn
715
+ $fifu['isbn']['desc'] = function () {
716
  _e("Set featured images automatically. FIFU will check every minute if there are post types without featured images and will perform web searches based on ISBN to get the image URLs.", FIFU_SLUG);
717
  };
718
+ $fifu['isbn']['tab']['auto'] = function () {
719
  _e("Auto set", FIFU_SLUG);
720
  };
721
+ $fifu['isbn']['tab']['custom'] = function () {
722
  _e("Custom field", FIFU_SLUG);
723
  };
724
+ $fifu['isbn']['custom']['desc'] = function () {
725
  _e("If you already have the ISBN saved in your database, you could inform its custom field name here. FIFU would access that and import the value. For example, if the ISBN is saved in the SKU field, you could add \"_sku\", which is the field where the SKU is stored.", FIFU_SLUG);
726
  };
727
 
728
  // screenshot
729
+ $fifu['screenshot']['desc'] = function () {
730
  _e("Set screenshots from external web pages as featured images automatically. FIFU will check every minute if there are post types without featured images and will access the informed web page URLs to get their screenshots. The screenshots are saved in the media library and are automatically updated once a month.", FIFU_SLUG);
731
  };
732
+ $fifu['screenshot']['tab']['auto'] = function () {
733
  _e("Auto set", FIFU_SLUG);
734
  };
735
+ $fifu['screenshot']['tab']['crop'] = function () {
736
  _e("Crop", FIFU_SLUG);
737
  };
738
+ $fifu['screenshot']['tab']['scale'] = function () {
739
  _e("Scale", FIFU_SLUG);
740
  };
741
+ $fifu['screenshot']['tab']['resolution'] = function () {
742
  _e("High resolution", FIFU_SLUG);
743
  };
744
+ $fifu['screenshot']['crop']['height'] = function () {
745
  _e("height (px)", FIFU_SLUG);
746
  };
747
+ $fifu['screenshot']['scale']['width'] = function () {
748
  _e("width (px)", FIFU_SLUG);
749
  };
750
+ $fifu['screenshot']['resolution']['desc'] = function () {
751
  _e("The default screenshot size is 500x348px. Enable the option below to have full screenshots, i.e., without cropping.", FIFU_SLUG);
752
  };
753
 
754
  // find
755
+ $fifu['finder']['desc'] = function () {
756
  _e("Set images from external web pages as featured images automatically. FIFU will check every minute if there are post types without featured images and will access the informed web page URLs to get the main image. For that FIFU looks for the Open Graph tag image (used for sharing on social media). If og:image is not found, FIFU will get the larger image found. It's also able to look for embedded videos and set the first one found as featured video. Videos have priority over images.", FIFU_SLUG);
757
  };
758
+ $fifu['finder']['auto'] = function () {
759
  _e("auto set featured media", FIFU_SLUG);
760
  };
761
+ $fifu['finder']['video'] = function () {
762
  _e("look for embedded videos", FIFU_SLUG);
763
  };
764
+ $fifu['finder']['tab']['auto'] = function () {
765
  _e("Auto set", FIFU_SLUG);
766
  };
767
+ $fifu['finder']['tab']['custom'] = function () {
768
  _e("Custom field", FIFU_SLUG);
769
  };
770
+ $fifu['finder']['tab']['amazon'] = function () {
771
  _e("Amazon", FIFU_SLUG);
772
  };
773
+ $fifu['finder']['custom']['desc'] = function () {
774
  _e("If you already have the web page address saved in your database, you could inform its custom field name here. FIFU would access that and import the value. For example, if the web page URL is saved in the Product URL field, you could add \"_product_url\", which is the field where the external URL to the product is stored.", FIFU_SLUG);
775
  };
776
 
777
  // tags
778
+ $fifu['tags']['desc'] = function () {
779
  _e("Set images from Unsplash as featured images automatically. FIFU will check every minute if there are post types without featured images and will perform Unsplash searches based on the tags to get the image URLs.", FIFU_SLUG);
780
  };
781
 
782
  // block
783
+ $fifu['block']['desc'] = function () {
784
  _e("Disable right-click on images.", FIFU_SLUG);
785
  };
786
 
787
  // redirection
788
+ $fifu['redirection']['desc'] = function () {
789
  _e("Adds a new meta box in the post editor where you can specify a forwarding URL. Then, when accessing a post and clicking on the featured image, the user will be redirected to the specified address.", FIFU_SLUG);
790
  };
791
 
792
  // unsplash
793
+ $fifu['unsplash']['desc'] = function () {
794
  _e("Choose the size of the Unsplash images (loaded randomly or via keywords/tags search). Examples of valid sizes: 500x500, 300x400, 1920x1080... Or leave this field empty to get the original size.", FIFU_SLUG);
795
  };
796
 
797
  // replace
798
+ $fifu['replace']['desc'] = function () {
799
  _e("Define the URL of an image to be shown in case of image not found error.", FIFU_SLUG);
800
  };
801
 
802
  // default
803
+ $fifu['default']['desc'] = function () {
804
  _e("Define the URL of a default image to be displayed when you create (or update) a post type with no featured image.", FIFU_SLUG);
805
  };
806
+ $fifu['default']['tab']['url'] = function () {
807
  _e("Image URL", FIFU_SLUG);
808
  };
809
+ $fifu['default']['tab']['cpt'] = function () {
810
  _e("Post types", FIFU_SLUG);
811
  };
812
+ $fifu['default']['cpt']['found'] = function () {
813
  _e("Post types found on your site: ", FIFU_SLUG);
814
  };
815
+ $fifu['default']['cpt']['info'] = function () {
816
  _e("After adding or removing a post type, you need to restart the feature by disabling and enabling the toggle below.", FIFU_SLUG);
817
  };
818
 
819
  // content
820
+ $fifu['content']['desc'] = function () {
821
  _e("Some themes don't show the featured image on posts (only on home). If that's is your case and you would like to show the featured image on posts, just enable the toggle. The featured image will appear at the beginning of the content, before the text.", FIFU_SLUG);
822
  };
823
 
824
  // hide
825
+ $fifu['hide']['desc'] = function () {
826
  _e("Hide the featured media (image, video or slider) on posts but keeping its visibility on home.", FIFU_SLUG);
827
  };
828
+ $fifu['hide']['exception'] = function () {
829
  _e("(except WooCommerce products)", FIFU_SLUG);
830
  };
831
 
832
  // hover
833
+ $fifu['hover']['desc'] = function () {
834
  _e("Choose a hover effect to be applied to the featured images on home.", FIFU_SLUG);
835
  };
836
+ $fifu['hover']['placeholder'] = function () {
837
  _e("CSS selectors (optional)", FIFU_SLUG);
838
  };
839
+ $fifu['hover']['hover17'] = function () {
840
  _e("315 Degrees", FIFU_SLUG);
841
  };
842
+ $fifu['hover']['hover02'] = function () {
843
  _e("360 Degrees", FIFU_SLUG);
844
  };
845
+ $fifu['hover']['hover07'] = function () {
846
  _e("Blur", FIFU_SLUG);
847
  };
848
+ $fifu['hover']['hover10'] = function () {
849
  _e("Blur Gray Scale", FIFU_SLUG);
850
  };
851
+ $fifu['hover']['hover04'] = function () {
852
  _e("Brighten", FIFU_SLUG);
853
  };
854
+ $fifu['hover']['hover15'] = function () {
855
  _e("Circle", FIFU_SLUG);
856
  };
857
+ $fifu['hover']['hover13'] = function () {
858
  _e("Flashing", FIFU_SLUG);
859
  };
860
+ $fifu['hover']['hover08'] = function () {
861
  _e("Gray Scale", FIFU_SLUG);
862
  };
863
+ $fifu['hover']['hover16'] = function () {
864
  _e("Horizontal Rotation", FIFU_SLUG);
865
  };
866
+ $fifu['hover']['hover12'] = function () {
867
  _e("Opacity Color", FIFU_SLUG);
868
  };
869
+ $fifu['hover']['hover11'] = function () {
870
  _e("Opacity White", FIFU_SLUG);
871
  };
872
+ $fifu['hover']['hover18'] = function () {
873
  _e("Rainbow", FIFU_SLUG);
874
  };
875
+ $fifu['hover']['hover06'] = function () {
876
  _e("Rotate", FIFU_SLUG);
877
  };
878
+ $fifu['hover']['hover09'] = function () {
879
  _e("Sepia", FIFU_SLUG);
880
  };
881
+ $fifu['hover']['hover14'] = function () {
882
  _e("Shine", FIFU_SLUG);
883
  };
884
+ $fifu['hover']['hover05'] = function () {
885
  _e("Vertical Rotation", FIFU_SLUG);
886
  };
887
+ $fifu['hover']['hover01'] = function () {
888
  _e("Zoom In", FIFU_SLUG);
889
  };
890
+ $fifu['hover']['hover03'] = function () {
891
  _e("Zoom Out", FIFU_SLUG);
892
  };
893
 
894
  // validation
895
+ $fifu['validation']['desc'] = function () {
896
  _e("It checks images addresses and, when an image is not found, its URL is not saved. However, each validation can take a few seconds.", FIFU_SLUG);
897
  };
898
 
899
  // configuration
900
+ $fifu['html']['desc'] = function () {
901
  _e("Set featured images/videos automatically. FIFU will read the HTML of your post and use the 1st image/video URL found as featured media. It happens when you click on Publish/Update button. Images URLs must be in \"img\" tags.", FIFU_SLUG);
902
  };
903
+ $fifu['html']['tab']['auto'] = function () {
904
  _e("Auto set", FIFU_SLUG);
905
  };
906
+ $fifu['html']['tab']['all'] = function () {
907
  _e("Run for all posts", FIFU_SLUG);
908
  };
909
+ $fifu['html']['tab']['run'] = function () {
910
  _e("Run now", FIFU_SLUG);
911
  };
912
+ $fifu['html']['tab']['schedule'] = function () {
913
  _e("Scheduling", FIFU_SLUG);
914
  };
915
+ $fifu['html']['tab']['important'] = function () {
916
  _e("Important", FIFU_SLUG);
917
  };
918
+ $fifu['html']['tab']['requirement'] = function () {
919
  _e("Requirement", FIFU_SLUG);
920
  };
921
+ $fifu['html']['position'] = function () {
922
  _e("image/video position", FIFU_SLUG);
923
  };
924
+ $fifu['html']['first'] = function () {
925
  _e("use the found image/video as featured image/video", FIFU_SLUG);
926
  };
927
+ $fifu['html']['hide'] = function () {
928
  _e("hide the image/video from content", FIFU_SLUG);
929
  };
930
+ $fifu['html']['query'] = function () {
931
  _e("remove query strings (whatever follows the question mark sign \"?\")", FIFU_SLUG);
932
  };
933
+ $fifu['html']['overwrite'] = function () {
934
  _e("overwrite the existing featured image/video", FIFU_SLUG);
935
  };
936
+ $fifu['html']['prioritize'] = function () {
937
  _e("prioritize video than image (if both exist)", FIFU_SLUG);
938
  };
939
+ $fifu['html']['decode'] = function () {
940
  _e("decode HTML entities", FIFU_SLUG);
941
  };
942
+ $fifu['html']['check'] = function () {
943
  _e("check \"don't get URL from post content\" option, in the post editor, by default", FIFU_SLUG);
944
  };
945
+ $fifu['html']['skip']['desc'] = function () {
946
  _e("skip URLs with", FIFU_SLUG);
947
  };
948
+ $fifu['html']['skip']['placeholder'] = function () {
949
  _e("example.com,anotherexample,onemore", FIFU_SLUG);
950
  };
951
 
952
  // all
953
+ $fifu['all']['desc'] = function () {
954
  _e("Update all your posts applying the configuration above. To repeat the process enable the toggle again.", FIFU_SLUG);
955
  };
956
+ $fifu['all']['important'] = function () {
957
  _e("This process can take several minutes and can't be undone, so make a backup.", FIFU_SLUG);
958
  };
959
+ $fifu['all']['requirement'] = function () {
960
  _e("If you have thousands of posts, access wp-config.php and add \"set_time_limit(1800);\" before the \"Happy publishing\" line. This ensures the process won't be killed before 30 minutes (the default value is 30 seconds).", FIFU_SLUG);
961
  };
962
+ $fifu['all']['tip'] = function () {
963
  _e("To schedule this process (hourly, daily etc), you can use the hook fifu_event with your favorite cron event plugin.", FIFU_SLUG);
964
  };
965
+ $fifu['all']['ignore'] = function () {
966
  _e("ignore posts that already have a featured image/video", FIFU_SLUG);
967
  };
968
+ $fifu['all']['update'] = function () {
969
  _e("update all your posts now", FIFU_SLUG);
970
  };
971
 
972
  // metadata
973
+ $fifu['metadata']['desc'] = function () {
974
  _e("Generate the database registers that helps WordPress components to work with the external images.", FIFU_SLUG);
975
  };
976
+ $fifu['metadata']['generate'] = function () {
977
  _e("generate the missing metadata now", FIFU_SLUG);
978
  };
979
 
980
  // clean
981
+ $fifu['clean']['desc'] = function () {
982
  _e("Clean the Image Metadata generated by FIFU, but not the URLs. This option might be necessary if you intend to deactivate the plugin and use only local featured images again.", FIFU_SLUG);
983
  };
984
+ $fifu['clean']['disabled'] = function () {
985
  _e("it will be automatically disabled when finished", FIFU_SLUG);
986
  };
987
 
988
  // dimensions
989
+ $fifu['dimensions']['desc'] = function () {
990
  _e("Some themes and plugins may not work correctly without image dimensions. Then you can run this feature to get the dimensions of ~150 images by minute. Problems with the product gallery can be better solved by FIFU Settings > WooCommerce > FIFU Product Gallery.", FIFU_SLUG);
991
  };
992
+ $fifu['dimensions']['now'] = function () {
993
  _e("save the dimensions of all featured images now", FIFU_SLUG);
994
  };
995
 
996
  // schedule
997
+ $fifu['schedule']['desc'] = function () {
998
  _e("If you are setting the image URLs in a nonstandard way, the images probably won't be shown at front-end because some extra metadata is required. Here you can schedule an event to run each N minutes and check if there is some image URL without metadata and create that. The FIFU keys are listed on REST API > Custom Fields.", FIFU_SLUG);
999
  };
1000
+ $fifu['schedule']['interval'] = function () {
1001
  _e("Interval (minutes)", FIFU_SLUG);
1002
  };
1003
 
1004
  // database
1005
+ $fifu['database']['desc'] = function () {
1006
  _e("Limit of rows to UPDATE, INSERT or DELETE by query. Higher this number, faster the features Content URL > All Posts, Image Metadata and Clean Metadata. However, if you have too limited resources, don't increase this value too much, otherwise your database can bring down.", FIFU_SLUG);
1007
  };
1008
+ $fifu['database']['limit'] = function () {
1009
  _e("Rows limit", FIFU_SLUG);
1010
  };
1011
 
1012
  // delete
1013
+ $fifu['delete']['important'] = function () {
1014
  _e("this plugin doesn't save images in the media library. It means that enabling the two toggles below all post types that have an external featured image will no longer have any featured image. And you can't undo this action later. This also applies to FIFU galleries, videos, sliders and shortcodes.", FIFU_SLUG);
1015
  };
1016
+ $fifu['delete']['confirm'] = function () {
1017
  _e("confirm that you are ready to lose your featured images", FIFU_SLUG);
1018
  };
1019
+ $fifu['delete']['now'] = function () {
1020
  _e("delete all your URLs now", FIFU_SLUG);
1021
  };
1022
+ $fifu['delete']['requirement'] = function () {
1023
  _e("Requirement: access Plugins -> Plugin Editor -> Select plugin to edit -> Featured Image from URL -> Select. Then change the value of FIFU_DELETE_ALL_URLS from false to true.", FIFU_SLUG);
1024
  };
1025
 
1026
  // jetpack
1027
+ $fifu['jetpack']['desc'] = function () {
1028
  _e("Your external images will be automatically optimized and served from a free CDN. And to make things even faster FIFU will load the thumbnails in the exact size your site needs.", FIFU_SLUG);
1029
  };
1030
+ $fifu['jetpack']['requirement'] = function () {
1031
  _e("for images added in an automated way, the Lazy Load feature below should be enabled.", FIFU_SLUG);
1032
  };
1033
+ $fifu['jetpack']['toggle']['cdn'] = function () {
1034
  _e("CDN + optimized thumbnails", FIFU_SLUG);
1035
  };
1036
+ $fifu['jetpack']['toggle']['social'] = function () {
1037
  _e("use CDN URLs in social tags and media RSS tags", FIFU_SLUG);
1038
  };
1039
+ $fifu['jetpack']['toggle']['crop'] = function () {
1040
  _e("crop featured images (to keep the aspect ratio defined by theme or WordPress media settings)", FIFU_SLUG);
1041
  };
1042
+ $fifu['jetpack']['toggle']['content'] = function () {
1043
  _e("apply to content images (requires Lazy Load)", FIFU_SLUG);
1044
  };
1045
 
1046
+ // audio
1047
+ $fifu['audio']['desc'] = function () {
1048
+ _e("It enables the featured audio field, where you can set the URL of an audio file, like mp3 or ogg. Then player controls will be added to the external featured image and the visitors will be able to play the audio.", FIFU_SLUG);
1049
+ };
1050
+ $fifu['audio']['requirement'] = function () {
1051
+ _e("you must set an external featured image as well.", FIFU_SLUG);
1052
+ };
1053
+
1054
  // lazy
1055
+ $fifu['lazy']['desc'] = function () {
1056
  _e("With lazy load, images and videos won't be loaded until user scrolls to them. It makes your home (or shop) faster.", FIFU_SLUG);
1057
  };
1058
+ $fifu['lazy']['important'] = function () {
1059
  _e("some themes and plugins have their own lazy load implementations, causing conflicts. Your images may not load if you have more than one lazy load component running at the same time.", FIFU_SLUG);
1060
  };
1061
 
1062
  // api
1063
+ $fifu['api']['tab']['endpoints'] = function () {
1064
  _e("Endpoints", FIFU_SLUG);
1065
  };
1066
+ $fifu['api']['tab']['custom'] = function () {
1067
  _e("Custom fields", FIFU_SLUG);
1068
  };
1069
+ $fifu['api']['tab']['product'] = function () {
1070
  _e("Creating your first product", FIFU_SLUG);
1071
  };
1072
+ $fifu['api']['tab']['category'] = function () {
1073
  _e("product category", FIFU_SLUG);
1074
  };
1075
+ $fifu['api']['tab']['variable'] = function () {
1076
  _e("variable product", FIFU_SLUG);
1077
  };
1078
+ $fifu['api']['tab']['variation'] = function () {
1079
  _e("product variation", FIFU_SLUG);
1080
  };
1081
+ $fifu['api']['tab']['batch-product'] = function () {
1082
  _e("batch product", FIFU_SLUG);
1083
  };
1084
+ $fifu['api']['tab']['batch-category'] = function () {
1085
  _e("batch category", FIFU_SLUG);
1086
  };
1087
+ $fifu['api']['tab']['post'] = function () {
1088
  _e("post", FIFU_SLUG);
1089
  };
1090
+ $fifu['api']['tab']['documentation'] = function () {
1091
  _e("Documentation", FIFU_SLUG);
1092
  };
1093
+ $fifu['api']['endpoint']['product'] = function () {
1094
  _e("Product", FIFU_SLUG);
1095
  };
1096
+ $fifu['api']['endpoint']['category'] = function () {
1097
  _e("Product category", FIFU_SLUG);
1098
  };
1099
+ $fifu['api']['endpoint']['variation'] = function () {
1100
  _e("Product variation", FIFU_SLUG);
1101
  };
1102
+ $fifu['api']['endpoint']['batch-product'] = function () {
1103
  _e("Batch product", FIFU_SLUG);
1104
  };
1105
+ $fifu['api']['endpoint']['batch-category'] = function () {
1106
  _e("Batch category", FIFU_SLUG);
1107
  };
1108
+ $fifu['api']['endpoint']['post'] = function () {
1109
  _e("Post", FIFU_SLUG);
1110
  };
1111
+ $fifu['api']['endpoint']['cpt'] = function () {
1112
  _e("Custom post type", FIFU_SLUG);
1113
  };
1114
+ $fifu['api']['custom']['image'] = function () {
1115
  _e("Image", FIFU_SLUG);
1116
  };
1117
+ $fifu['api']['custom']['title'] = function () {
1118
  _e("Image title", FIFU_SLUG);
1119
  };
1120
+ $fifu['api']['custom']['images'] = function () {
1121
  _e("Product image + gallery (URLs delimited by \"|\")", FIFU_SLUG);
1122
  };
1123
+ $fifu['api']['custom']['titles'] = function () {
1124
  _e("Product image title + gallery titles (delimited by \"|\")", FIFU_SLUG);
1125
  };
1126
+ $fifu['api']['custom']['video'] = function () {
1127
  _e("Video", FIFU_SLUG);
1128
  };
1129
+ $fifu['api']['custom']['videos'] = function () {
1130
  _e("Product video + gallery (URLs delimited by \"|\")", FIFU_SLUG);
1131
  };
1132
+ $fifu['api']['custom']['slider'] = function () {
1133
  _e("Slider", FIFU_SLUG);
1134
  };
1135
+ $fifu['api']['custom']['isbn'] = function () {
1136
  _e("ISBN", FIFU_SLUG);
1137
  };
1138
+ $fifu['api']['custom']['finder'] = function () {
1139
  _e("Media finder (webpage URL)", FIFU_SLUG);
1140
  };
1141
+ $fifu['api']['custom']['screenshot'] = function () {
1142
  _e("Screenshot (webpage URL)", FIFU_SLUG);
1143
  };
1144
+ $fifu['api']['custom']['key'] = function () {
1145
  _e("Key", FIFU_SLUG);
1146
  };
1147
+ $fifu['api']['documentation']['wordpress'] = function () {
1148
  _e("WordPress REST API", FIFU_SLUG);
1149
  };
1150
+ $fifu['api']['documentation']['woocommerce'] = function () {
1151
  _e("WooCommerce REST API", FIFU_SLUG);
1152
  };
1153
 
1154
  // shortcode
1155
+ $fifu['shortcode']['desc'] = function () {
1156
  _e("This feature adds a field where you can input a shortcode instead of an URL. This way you could have a featured map, featured music etc.", FIFU_SLUG);
1157
  };
1158
+ $fifu['shortcode']['important'] = function () {
1159
  _e("FIFU has no control over your shortcode content or how your theme or plugins (or even other FIFU features) will deal with that. So normally there are style issues, except if you use a simple theme, such as Twenty Twenty. Featured Shortcode shouldn't work with page builders, lightboxes, sliders and ajax calls (the shortcode conversion happens on backend). If your theme use background-images, this feature won't work as well.", FIFU_SLUG);
1160
  };
1161
+ $fifu['shortcode']['start1'] = function () {
1162
  _e("install and active a shortcode plugin.", FIFU_SLUG);
1163
  };
1164
+ $fifu['shortcode']['start2'] = function () {
1165
  _e("create a shortcode that contains an HTML code, such as:", FIFU_SLUG);
1166
  };
1167
+ $fifu['shortcode']['start3'] = function () {
1168
  _e("create a new post and paste your [shortcode] into Featured Shortcode field on post editor;", FIFU_SLUG);
1169
  };
1170
+ $fifu['shortcode']['start4'] = function () {
1171
  _e("add a ratio (required field) and publish.", FIFU_SLUG);
1172
  };
1173
+ $fifu['shortcode']['facebook'] = function () {
1174
  _e("Facebook video", FIFU_SLUG);
1175
  };
1176
+ $fifu['shortcode']['map'] = function () {
1177
  _e("Google map", FIFU_SLUG);
1178
  };
1179
+ $fifu['shortcode']['spotify'] = function () {
1180
  _e("Spotify playlist", FIFU_SLUG);
1181
  };
1182
+ $fifu['shortcode']['tab']['featured'] = function () {
1183
  _e("Featured shortcode", FIFU_SLUG);
1184
  };
1185
+ $fifu['shortcode']['tab']['important'] = function () {
1186
  _e("Important", FIFU_SLUG);
1187
  };
1188
+ $fifu['shortcode']['tab']['start'] = function () {
1189
  _e("Getting started", FIFU_SLUG);
1190
  };
1191
 
1192
  // FIFU shortcodes
1193
+ $fifu['shortcodes']['desc'] = function () {
1194
  _e("Add FIFU elements anywhere with a shortcode.", FIFU_SLUG);
1195
  };
1196
+ $fifu['shortcodes']['tab']['shortcodes'] = function () {
1197
  _e("Shortcodes", FIFU_SLUG);
1198
  };
1199
+ $fifu['shortcodes']['column']['shortcode'] = function () {
1200
  _e("Shortcode", FIFU_SLUG);
1201
  };
1202
+ $fifu['shortcodes']['column']['description'] = function () {
1203
  _e("Description", FIFU_SLUG);
1204
  };
1205
+ $fifu['shortcodes']['column']['optional'] = function () {
1206
  _e("Optional parameters", FIFU_SLUG);
1207
  };
1208
+ $fifu['shortcodes']['description']['fifu'] = function () {
1209
  _e("Displays the featured image/video of the current post.", FIFU_SLUG);
1210
  };
1211
+ $fifu['shortcodes']['description']['slider'] = function () {
1212
  _e("Displays the featured slider of the current post.", FIFU_SLUG);
1213
  };
1214
+ $fifu['shortcodes']['description']['gallery'] = function () {
1215
  _e("Displays the product gallery of the current product.", FIFU_SLUG);
1216
  };
1217
 
1218
  // slider
1219
+ $fifu['slider']['desc'] = function () {
1220
+ _e("This feature allows you to have a slider of images instead of a regular featured image. It's often quite useful on some types of websites, such as real estate. It can run fast even with a huge amount of big images (just enable the performance settings).", FIFU_SLUG);
1221
  };
1222
+ $fifu['slider']['tab']['configuration'] = function () {
1223
  _e("Configuration", FIFU_SLUG);
1224
  };
1225
+ $fifu['slider']['featured'] = function () {
1226
  _e("featured slider", FIFU_SLUG);
1227
  };
1228
+ $fifu['slider']['pause'] = function () {
1229
  _e("pause autoplay on hover", FIFU_SLUG);
1230
  };
1231
+ $fifu['slider']['buttons'] = function () {
1232
  _e("show prev/next buttons", FIFU_SLUG);
1233
  };
1234
+ $fifu['slider']['start'] = function () {
1235
  _e("start automatically", FIFU_SLUG);
1236
  };
1237
+ $fifu['slider']['click'] = function () {
1238
  _e("show gallery on click", FIFU_SLUG);
1239
  };
1240
+ $fifu['slider']['thumb'] = function () {
1241
  _e("show thumbnails gallery", FIFU_SLUG);
1242
  };
1243
+ $fifu['slider']['counter'] = function () {
1244
  _e("show counter", FIFU_SLUG);
1245
  };
1246
+ $fifu['slider']['crop'] = function () {
1247
  _e("display images in the same height", FIFU_SLUG);
1248
  };
1249
+ $fifu['slider']['single'] = function () {
1250
+ _e("load slider on singular post types only", FIFU_SLUG);
1251
+ };
1252
+ $fifu['slider']['vertical'] = function () {
1253
  _e("vertical mode", FIFU_SLUG);
1254
  };
1255
+ $fifu['slider']['time'] = function () {
1256
  _e("time between each transition (in ms)", FIFU_SLUG);
1257
  };
1258
+ $fifu['slider']['duration'] = function () {
1259
  _e("transition duration (in ms)", FIFU_SLUG);
1260
  };
1261
+ $fifu['slider']['left'] = function () {
1262
  _e("Prev button", FIFU_SLUG);
1263
  };
1264
+ $fifu['slider']['right'] = function () {
1265
  _e("Next button", FIFU_SLUG);
1266
  };
1267
+ $fifu['slider']['optional'] = function () {
1268
  _e("image URL (optional)", FIFU_SLUG);
1269
  };
1270
 
1271
  // social
1272
+ $fifu['social']['desc'] = function () {
1273
  _e("Use social tags to share your posts (and their featured images) on the social media.", FIFU_SLUG);
1274
  };
1275
+ $fifu['social']['add'] = function () {
1276
  _e("add social tags", FIFU_SLUG);
1277
  };
1278
+ $fifu['social']['only'] = function () {
1279
  _e("only image tags", FIFU_SLUG);
1280
  };
1281
 
1282
  // rss
1283
+ $fifu['rss']['desc'] = function () {
1284
  _e("Add media RSS tags in the RSS feed. This way, services that make use of RSS, such as Google News, can show the featured images.", FIFU_SLUG);
1285
  };
1286
+ $fifu['rss']['documentation']['publisher'] = function () {
1287
  _e("<a href='https://support.google.com/news/publisher-center/answer/9545245?hl=en' target='_blank'>Google News: Feed content guidelines</a>", FIFU_SLUG);
1288
  };
1289
 
1290
  // bbpress
1291
+ $fifu['bbpress']['desc'] = function () {
1292
  _e("Allows you to add featured images/videos to bbPress forums and topics.", FIFU_SLUG);
1293
  };
1294
+ $fifu['bbpress']['fields'] = function () {
1295
  _e("add featured image/video fields to bbPress forms", FIFU_SLUG);
1296
  };
1297
+ $fifu['bbpress']['title'] = function () {
1298
  _e("display featured image before forum/topic title", FIFU_SLUG);
1299
  };
1300
+ $fifu['bbpress']['avatar'] = function () {
1301
  _e("replace profile picture by featured image", FIFU_SLUG);
1302
  };
1303
+ $fifu['bbpress']['copy'] = function () {
1304
  _e("copy the featured image/video to the forum/topic content", FIFU_SLUG);
1305
  };
1306
 
1307
  // title
1308
+ $fifu['title']['desc'] = function () {
1309
  _e("Set the title of a featured image with the post title.", FIFU_SLUG);
1310
  };
1311
+ $fifu['title']['copy'] = function () {
1312
  _e("copy the post title to FIFU alt/title field (it has effect when you click on Publish button in the post editor)", FIFU_SLUG);
1313
  };
1314
+ $fifu['title']['always'] = function () {
1315
  _e("always use the post title as image title (it will ignore FIFU alt/title field)", FIFU_SLUG);
1316
  };
1317
 
1318
  // video
1319
+ $fifu['video']['desc'] = function () {
1320
  _e("FIFU supports videos from YouTube, Vimeo, Imgur, 9GAG, Cloudinary, Tumblr, Publitio, JW Player, VideoPress, Sprout and your media library. Videos hosted elsewhere are not supported.", FIFU_SLUG);
1321
  };
1322
+ $fifu['video']['tab']['video'] = function () {
1323
  _e("Featured video", FIFU_SLUG);
1324
  };
1325
+ $fifu['video']['tab']['local'] = function () {
1326
  _e("Media library", FIFU_SLUG);
1327
  };
1328
+ $fifu['video']['local']['desc'] = function () {
1329
  _e("It's possible to use mp4 videos from your media library as featured videos. However it's required to create a video thumbnail, that will be stored in your media library. For that, in the \"Feature video\" meta box, forward the video to a frame you like and click on \"set this frame as thumbnail\" button. Save the post and that's it.", FIFU_SLUG);
1330
  };
1331
 
1332
  // thumbnail
1333
+ $fifu['thumbnail']['desc'] = function () {
1334
  _e("Show the video thumbnail instead of the video. Thumbnails are images, so they are loaded much faster than embedded videos.", FIFU_SLUG);
1335
  };
1336
 
1337
  // play
1338
+ $fifu['play']['desc'] = function () {
1339
  _e("Add play button to video thumbnail. Clicking on that, the video starts inline or in a lightbox.", FIFU_SLUG);
1340
  };
1341
+ $fifu['play']['hide'] = function () {
1342
  _e("hide from grid", FIFU_SLUG);
1343
  };
1344
 
1345
  // width
1346
+ $fifu['width']['desc'] = function () {
1347
  _e("Define a minimum width that a theme area should have to show a video. FIFU automatically shows a thumbnail when the minimum width is not reached.", FIFU_SLUG);
1348
  };
1349
 
1350
  // black
1351
+ $fifu['controls']['desc'] = function () {
1352
  _e("You can disable video controls here.", FIFU_SLUG);
1353
  };
1354
  // mouseover
1355
+ $fifu['mouseover']['desc'] = function () {
1356
+ _e("Play a video on \"mouseover\" and pause on \"mouseout\". Requires \"Video Controls\".", FIFU_SLUG);
1357
  };
1358
 
1359
  // autoplay
1360
+ $fifu['autoplay']['desc'] = function () {
1361
  _e("Autoplay videos (available for YouTube, Vimeo and local videos).", FIFU_SLUG);
1362
  };
1363
 
1364
  // loop
1365
+ $fifu['loop']['desc'] = function () {
1366
  _e("Loop videos (available for YouTube, Vimeo and local videos).", FIFU_SLUG);
1367
  };
1368
 
1369
  // mute
1370
+ $fifu['mute']['desc'] = function () {
1371
  _e("Start the videos without audio (available for YouTube, Vimeo and local videos).", FIFU_SLUG);
1372
  };
1373
 
1374
  // background
1375
+ $fifu['background']['desc'] = function () {
1376
  _e("Start the videos in background, which means autoplay, no controls and no sound.", FIFU_SLUG);
1377
  };
1378
 
1379
+ // privacy
1380
+ $fifu['privacy']['desc'] = function () {
1381
+ _e("The Privacy Enhanced Mode of the YouTube embedded player prevents the use of views of embedded YouTube content from influencing the viewer’s browsing experience on YouTube.", FIFU_SLUG);
1382
+ };
1383
+
1384
  // icon
1385
+ $fifu['icon']['desc'] = function () {
1386
  _e("Add icons to the video thumbnails in the WooCommerce gallery.", FIFU_SLUG);
1387
  };
1388
+ $fifu['icon']['css'] = function () {
1389
  _e("CSS selector", FIFU_SLUG);
1390
  };
1391
+ $fifu['icon']['info'] = function () {
1392
  _e("In order to FIFU identify your gallery, it's necessary to inform its CSS selector here. The default value is ol.flex-control-thumbs, but you may need a different selector if your theme overwrites the original WooCommerce layout.", FIFU_SLUG);
1393
  };
1394
 
1395
  // zoom
1396
+ $fifu['zoom']['desc'] = function () {
1397
  _e("Disable lightbox and zoom from image gallery.", FIFU_SLUG);
1398
  };
1399
 
1400
  // category
1401
+ $fifu['category']['desc'] = function () {
1402
  _e("Set one image to each category. The chosen image is the featured image from the most recent product from that category.", FIFU_SLUG);
1403
  };
1404
 
1405
  // grid
1406
+ $fifu['grid']['desc'] = function () {
1407
  _e("Show the category image on the category page, immediately before the product grid.", FIFU_SLUG);
1408
  };
1409
 
1410
  // gallery
1411
+ $fifu['gallery']['desc'] = function () {
1412
  _e("It is known that some galleries provided by some themes work only when the dimensions of the images are saved in the database, which is often impracticable due to the slowness of this process. So FIFU offers a product gallery that does not depend on the dimensions of the external images to work correctly. You can configure the behavior of this gallery in the \"Featured slider\" tab. To change the aspect ratio, access \"Featured image > Same Height > Size ratio\".", FIFU_SLUG);
1413
  };
1414
+ $fifu['gallery']['toggle'] = function () {
1415
  _e("product gallery", FIFU_SLUG);
1416
  };
1417
+ $fifu['gallery']['adaptive'] = function () {
1418
  _e("adaptive height", FIFU_SLUG);
1419
  };
1420
+ $fifu['gallery']['videos'] = function () {
1421
  _e("videos before images", FIFU_SLUG);
1422
  };
1423
 
1424
  // buy
1425
+ $fifu['buy']['desc'] = function () {
1426
  _e("That's a faster alternative to the WooCommerce single product page. Click on a product image from the shop page to have the main product information in a lightbox. The \"Buy Now\" button adds the product to the cart and redirects to the checkout page.", FIFU_SLUG);
1427
  };
1428
 
1429
  // variable
1430
+ $fifu['variable']['desc'] = function () {
1431
  _e("Add FIFU fields (featured image and image gallery) to product variations.", FIFU_SLUG);
1432
  };
1433
+ $fifu['variable']['important'] = function () {
1434
  _e("variation image gallery requires FIFU Product Gallery or <a href='https://woocommerce.com/products/woocommerce-additional-variation-images/' target='_blank'>WooCommerce Additional Variation Images</a>. Unofficial solutions are not supported.", FIFU_SLUG);
1435
  };
1436
 
1437
  // import
1438
+ $fifu['import']['desc'] = function () {
1439
  _e("Use FIFU with WooCommerce import.", FIFU_SLUG);
1440
  };
1441
+ $fifu['import']['tab']['import'] = function () {
1442
  _e("Importing products...", FIFU_SLUG);
1443
  };
1444
+ $fifu['import']['tab']['custom'] = function () {
1445
  _e("Custom fields", FIFU_SLUG);
1446
  };
1447
+ $fifu['import']['tab']['priority'] = function () {
1448
  _e("Priority", FIFU_SLUG);
1449
  };
1450
+ $fifu['import']['import']['csv'] = function () {
1451
  _e("CSV example", FIFU_SLUG);
1452
  };
1453
+ $fifu['import']['custom']['key'] = function () {
1454
  _e("Key", FIFU_SLUG);
1455
  };
1456
+ $fifu['import']['custom']['image'] = function () {
1457
  _e("Featured image URL", FIFU_SLUG);
1458
  };
1459
+ $fifu['import']['custom']['alt'] = function () {
1460
  _e("Featured image title", FIFU_SLUG);
1461
  };
1462
+ $fifu['import']['custom']['video'] = function () {
1463
  _e("Featured video URL", FIFU_SLUG);
1464
  };
1465
+ $fifu['import']['custom']['images'] = function () {
1466
  _e("Product image URL + gallery URLs (delimited by \"|\")", FIFU_SLUG);
1467
  };
1468
+ $fifu['import']['custom']['titles'] = function () {
1469
  _e("Product image title + gallery titles (delimited by \"|\")", FIFU_SLUG);
1470
  };
1471
+ $fifu['import']['custom']['videos'] = function () {
1472
  _e("Product video URL + gallery URLs (delimited by \"|\")", FIFU_SLUG);
1473
  };
1474
+ $fifu['import']['custom']['slider'] = function () {
1475
  _e("Featured slider URLs (delimited by \"|\")", FIFU_SLUG);
1476
  };
1477
+ $fifu['import']['custom']['isbn'] = function () {
1478
  _e("ISBN", FIFU_SLUG);
1479
  };
1480
+ $fifu['import']['custom']['finder'] = function () {
1481
  _e("Media finder (webpage URL)", FIFU_SLUG);
1482
  };
1483
+ $fifu['import']['custom']['screenshot'] = function () {
1484
  _e("Screenshot (webpage URL)", FIFU_SLUG);
1485
  };
1486
+ $fifu['import']['priority']['lists'] = function () {
1487
  _e("prioritize fifu_list_video_url than fifu_list_url (if both exist) ", FIFU_SLUG);
1488
  };
1489
 
1490
  // addon
1491
+ $fifu['addon']['desc'] = function () {
1492
  _e("FIFU automatically adds its add-on to WP All Import.", FIFU_SLUG);
1493
  };
1494
+ $fifu['addon']['tab']['import'] = function () {
1495
  _e("Importing products...", FIFU_SLUG);
1496
  };
1497
+ $fifu['addon']['tab']['faq'] = function () {
1498
  _e("FAQ", FIFU_SLUG);
1499
  };
1500
+ $fifu['addon']['import']['csv'] = function () {
1501
  _e("CSV example", FIFU_SLUG);
1502
  };
1503
+ $fifu['addon']['faq']['woocommerce'] = function () {
1504
  _e("<a href='http://www.wpallimport.com/documentation/woocommerce/variable-products/'>Importing variable products to WooCommerce</a>", FIFU_SLUG);
1505
  };
1506
+ $fifu['addon']['faq']['variation-child-xml'] = function () {
1507
  _e('Examples for "Variations As Child XML Elements"', FIFU_SLUG);
1508
  };
1509
+ $fifu['addon']['faq']['xml'] = function () {
1510
  _e("XML", FIFU_SLUG);
1511
  };
1512
+ $fifu['addon']['faq']['template'] = function () {
1513
  _e("import template", FIFU_SLUG);
1514
  };
1515
 
1516
  // key
1517
+ $fifu['key']['desc'] = function () {
1518
  _e("Please insert your email and license key below to receive updates and use this plugin without limitations.", FIFU_SLUG);
1519
  };
1520
+ $fifu['key']['buy'] = function () {
1521
  _e("if you intend to use FIFU in multiple distinct sites you can buy more license keys <a href='https://fifu.app/#price' target='_blank'>here</a>", FIFU_SLUG);
1522
  };
1523
+ $fifu['key']['renew'] = function () {
1524
  _e("you can renew your license key(s) or get more information about that <a href='https://ws.featuredimagefromurl.com/keys/' target='_blank'>here</a>", FIFU_SLUG);
1525
  };
1526
+ $fifu['key']['email'] = function () {
1527
  _e("Email", FIFU_SLUG);
1528
  };
1529
+ $fifu['key']['address'] = function () {
1530
  _e("Email address where you received the license key", FIFU_SLUG);
1531
  };
1532
+ $fifu['key']['key'] = function () {
1533
  _e("License key", FIFU_SLUG);
1534
  };
1535
+ $fifu['key']['tab']['activation'] = function () {
1536
  _e("Activation", FIFU_SLUG);
1537
  };
1538
+ $fifu['key']['tab']['documentation'] = function () {
1539
  _e("Documentation", FIFU_SLUG);
1540
  };
1541
+ $fifu['key']['documentation'] = function () {
1542
  _e("FIFU activation is based on the domain. So submitting your license key on the site example.com, [subdomain].example.com or example.com/[anything] will activate the domain example.com. After that you could use the same license key on the sites example.com, [subdomain].example.com and example.com/[anything]. You also could use the same license key to activate a second domain for your test/development/stage site. If your domain has changed, please contact the support.", FIFU_SLUG);
1543
  };
1544
+ $fifu['key']['important'] = function () {
1545
  _e("even though with 1 license you could use FIFU on unlimited sites from the same domain, the technical support is still limited to 1 site.", FIFU_SLUG);
1546
  };
1547
 
1548
  // cloud
1549
 
1550
+ $fifu['cloud']['details']['social'] = function () {
1551
  _e("FIFU Cloud improves the social sharing by smart cropping the images in the size defined by the main social medias (~1200x630). The smart crop is specially useful when you're sharing a portrait image, because a standard central crop may lead to a picture where the main object is not shown or people appears without their heads.", FIFU_SLUG);
1552
  };
1553
+ $fifu['cloud']['details']['rss'] = function () {
1554
  _e("FIFU Cloud improves the RSS feed by smart cropping the images in the size defined by Google News (~1200x800). The smart crop is specially useful when you're sharing a portrait image, because a standard central crop may lead to a picture where the main object is not shown or people appears without their heads.", FIFU_SLUG);
1555
  };
1556
+ $fifu['cloud']['details']['photon'] = function () {
1557
  _e("FIFU Cloud can also serve optimized thumbnails from a global CDN, but with many advantages: image storage (not only cache), supports any image source, technical support, smart crop, hotlink protection and more.", FIFU_SLUG);
1558
  };
1559
+ $fifu['cloud']['details']['click'] = function () {
1560
  _e("FIFU Clouds improves the security of your images by offering hotlink protection. With that, even if a bot or someone else gets image URLs from the source code of your website, it won't be possible to embed them on other websites. An error message is displayed instead of the images.", FIFU_SLUG);
1561
  };
1562
+ $fifu['cloud']['details']['dimensions'] = function () {
1563
  _e("FIFU Cloud eliminates the need for this feature by writing the image dimensions in the image URL. So there are no waiting or style issues anymore.", FIFU_SLUG);
1564
  };
1565
+ $fifu['cloud']['details']['library'] = function () {
1566
  _e("FIFU Cloud can work as an alternative to the WordPress media library. Both store images, but FIFU Cloud process them in the cloud, while WordPress core consumes a lot of your website resources. Also, FIFU Cloud is able to process and store thousands of images simultaneously in a few seconds while the media library will work with one image at a time.", FIFU_SLUG);
1567
  };
1568
+ $fifu['cloud']['details']['crop'] = function () {
1569
  _e("FIFU Cloud overcomes this feature by serving real cropped thumbnails in the exact size requested by your theme. FIFU Cloud doesn't require any configuration or CSS knowledge and will load your images much faster. Moreover, its smart crop makes use of AI to make your cropped images more attractive.", FIFU_SLUG);
1570
  };
1571
+ $fifu['cloud']['details']['replace'] = function () {
1572
  _e("FIFU Cloud prevents image loss by saving your local or external images in the cloud.", FIFU_SLUG);
1573
  };
1574
+ $fifu['cloud']['details']['play'] = function () {
1575
  _e("FIFU Cloud overcomes this feature by drawing a play icon on the video image thumbnails. With that, the plugin doesn't need to add any additional HTML or CSS, what might conflict with the theme.", FIFU_SLUG);
1576
  };
1577
 
1582
  $fifu = array();
1583
 
1584
  // word
1585
+ $fifu['word']['remove'] = function () {
1586
  _e("Remove", FIFU_SLUG);
1587
  };
1588
 
1589
  // common
1590
+ $fifu['common']['alt'] = function () {
1591
  _e("alt/title attribute (optional)", FIFU_SLUG);
1592
  };
1593
+ $fifu['common']['image'] = function () {
1594
  _e("Image URL", FIFU_SLUG);
1595
  };
1596
+ $fifu['common']['preview'] = function () {
1597
  _e("Preview", FIFU_SLUG);
1598
  };
1599
+ $fifu['common']['video'] = function () {
1600
  _e("Video URL", FIFU_SLUG);
1601
  };
1602
+ $fifu['common']['capture'] = function () {
1603
  _e("set this frame as thumbnail", FIFU_SLUG);
1604
  };
1605
 
1606
  // details
1607
+ $fifu['detail']['ratio'] = function () {
1608
  _e("Ratio", FIFU_SLUG);
1609
  };
1610
+ $fifu['detail']['eg'] = function () {
1611
  _e("e.g.:", FIFU_SLUG);
1612
  };
1613
 
1614
  // titles
1615
+ $fifu['title']['category']['video'] = function () {
1616
  _e("Featured video", FIFU_SLUG);
1617
  };
1618
+ $fifu['title']['category']['image'] = function () {
1619
  _e("Featured image", FIFU_SLUG);
1620
  };
1621
 
1622
  // shortcode
1623
+ $fifu['shortcode']['placeholder'] = function () {
1624
  _e("Shortcode", FIFU_SLUG);
1625
  };
1626
 
1627
  // video
1628
+ $fifu['video']['remove'] = function () {
1629
  _e("remove external featured video", FIFU_SLUG);
1630
  };
1631
 
1632
  // image
1633
+ $fifu['image']['ignore'] = function () {
1634
  _e("don't get URL from post content", FIFU_SLUG);
1635
  };
1636
+ $fifu['image']['keywords'] = function () {
1637
  _e("Image URL or Keywords", FIFU_SLUG);
1638
  };
1639
+ $fifu['image']['remove'] = function () {
1640
  _e("remove external featured image", FIFU_SLUG);
1641
  };
1642
+ $fifu['image']['sirv']['add'] = function () {
1643
  _e("Add image from Sirv", FIFU_SLUG);
1644
  };
1645
+ $fifu['image']['sirv']['choose'] = function () {
1646
  _e("Choose Sirv image", FIFU_SLUG);
1647
  };
1648
+ $fifu['image']['upload'] = function () {
1649
  _e("upload to media library", FIFU_SLUG);
1650
  };
1651
 
1656
  $fifu = array();
1657
 
1658
  // common
1659
+ $fifu['common']['wait'] = function () {
1660
  return __("Please wait a few seconds...", FIFU_SLUG);
1661
  };
1662
+ $fifu['common']['image'] = function () {
1663
  return __("Image URL", FIFU_SLUG);
1664
  };
1665
+ $fifu['common']['video'] = function () {
1666
  return __("Video URL", FIFU_SLUG);
1667
  };
1668
 
1669
  // wait
1670
+ $fifu['title']['product']['image'] = function () {
1671
  return __("Product image", FIFU_SLUG);
1672
  };
1673
+ $fifu['title']['product']['images'] = function () {
1674
  return __("Image gallery", FIFU_SLUG);
1675
  };
1676
+ $fifu['title']['product']['video'] = function () {
1677
  return __("Featured video", FIFU_SLUG);
1678
  };
1679
+ $fifu['title']['product']['videos'] = function () {
1680
  return __("Video gallery", FIFU_SLUG);
1681
  };
1682
+ $fifu['title']['product']['slider'] = function () {
1683
  return __("Featured slider", FIFU_SLUG);
1684
  };
1685
+ $fifu['title']['post']['image'] = function () {
1686
  return __("Featured image", FIFU_SLUG);
1687
  };
1688
+ $fifu['title']['post']['video'] = function () {
1689
  return __("Featured video", FIFU_SLUG);
1690
  };
1691
+ $fifu['title']['post']['slider'] = function () {
1692
  return __("Featured slider", FIFU_SLUG);
1693
  };
1694
+ $fifu['title']['post']['shortcode'] = function () {
1695
  return __("Featured shortcode", FIFU_SLUG);
1696
  };
1697
+ $fifu['title']['post']['isbn'] = function () {
1698
  return __("ISBN", FIFU_SLUG);
1699
  };
1700
+ $fifu['title']['post']['screenshot'] = function () {
1701
  return __("Screenshot", FIFU_SLUG);
1702
  };
1703
+ $fifu['title']['post']['finder'] = function () {
1704
  return __("Media finder", FIFU_SLUG);
1705
  };
1706
+ $fifu['title']['post']['audio'] = function () {
1707
+ return __("Featured audio", FIFU_SLUG);
1708
+ };
1709
+ $fifu['title']['post']['redirection'] = function () {
1710
  return __("Page redirection", FIFU_SLUG);
1711
  };
1712
 
1713
  // variation
1714
+ $fifu['variation']['field'] = function () {
1715
  return __("Product Image (URL)", FIFU_SLUG);
1716
  };
1717
+ $fifu['variation']['info'] = function () {
1718
  return __("Powered by Featured Image from URL plugin", FIFU_SLUG);
1719
  };
1720
+ $fifu['variation']['image'] = function () {
1721
  return __("Image URL", FIFU_SLUG);
1722
  };
1723
+ $fifu['variation']['images'] = function () {
1724
  return __("Gallery Image (URL)", FIFU_SLUG);
1725
  };
1726
+ $fifu['variation']['upload'] = function () {
1727
  return __("upload to media library", FIFU_SLUG);
1728
  };
1729
 
1734
  $fifu = array();
1735
 
1736
  // titles
1737
+ $fifu['title']['image'] = function () {
1738
  return __("Featured image (URL)", FIFU_SLUG);
1739
  };
1740
+ $fifu['title']['title'] = function () {
1741
  return __("Featured image title", FIFU_SLUG);
1742
  };
1743
+ $fifu['title']['video'] = function () {
1744
  return __("Featured video (URL)", FIFU_SLUG);
1745
  };
1746
+ $fifu['title']['images'] = function () {
1747
  return __("Product image URL + gallery URLs", FIFU_SLUG);
1748
  };
1749
+ $fifu['title']['titles'] = function () {
1750
  return __("Product image title + gallery titles", FIFU_SLUG);
1751
  };
1752
+ $fifu['title']['videos'] = function () {
1753
  return __("Product video URL + gallery URLs", FIFU_SLUG);
1754
  };
1755
+ $fifu['title']['slider'] = function () {
1756
  return __("Featured slider (URLs)", FIFU_SLUG);
1757
  };
1758
+ $fifu['title']['delimiter'] = function () {
1759
  return __("List delimiter", FIFU_SLUG);
1760
  };
1761
+ $fifu['title']['isbn'] = function () {
1762
  return __("ISBN", FIFU_SLUG);
1763
  };
1764
+ $fifu['title']['finder'] = function () {
1765
  return __("Media finder (webpage URL)", FIFU_SLUG);
1766
  };
1767
+ $fifu['title']['screenshot'] = function () {
1768
  return __("Screenshot (webpage URL)", FIFU_SLUG);
1769
  };
1770
 
1771
  // info
1772
+ $fifu['info']['delimited'] = function () {
1773
  return __("Delimited by |", FIFU_SLUG);
1774
  };
1775
+ $fifu['info']['default'] = function () {
1776
  return __("Default values is |", FIFU_SLUG);
1777
  };
1778
+ $fifu['info']['finder'] = function () {
1779
  return __("Works with \"Auto set featured media using web page address\"", FIFU_SLUG);
1780
  };
1781
+ $fifu['info']['screenshot'] = function () {
1782
  return __("Works with \"Auto set screenshot as featured image\"", FIFU_SLUG);
1783
  };
1784
 
1789
  $fifu = array();
1790
 
1791
  // titles
1792
+ $fifu['title']['media'] = function () {
1793
  return __("Featured media", FIFU_SLUG);
1794
  };
1795
+ $fifu['title']['grid'] = function () {
1796
  return __("Featured grid", FIFU_SLUG);
1797
  };
1798
+ $fifu['title']['gallery'] = function () {
1799
  return __("Product gallery", FIFU_SLUG);
1800
  };
1801
 
1802
  // description
1803
+ $fifu['description']['media'] = function () {
1804
  return __("Displays the featured image, video or slider from the current post, page or custom post type.", FIFU_SLUG);
1805
  };
1806
+ $fifu['description']['grid'] = function () {
1807
  return __("Displays the images from featured slider in a grid format.", FIFU_SLUG);
1808
  };
1809
+ $fifu['description']['gallery'] = function () {
1810
  return __("Displays the product gallery.", FIFU_SLUG);
1811
  };
1812
 
1817
  $fifu = array();
1818
 
1819
  // titles
1820
+ $fifu['title']['image'] = function () {
1821
  return __("Featured image", FIFU_SLUG);
1822
  };
1823
+ $fifu['title']['video'] = function () {
1824
  return __("Featured video", FIFU_SLUG);
1825
  };
1826
+ $fifu['title']['search'] = function () {
1827
  return __("Image search", FIFU_SLUG);
1828
  };
1829
 
1830
  // tips
1831
+ $fifu['tip']['column'] = function () {
1832
  return __("Quick edit", FIFU_SLUG);
1833
  };
1834
+ $fifu['tip']['image'] = function () {
1835
  return __("Set the featured image using an image URL", FIFU_SLUG);
1836
  };
1837
+ $fifu['tip']['video'] = function () {
1838
  return __("Set the featured video using a video URL", FIFU_SLUG);
1839
  };
1840
+ $fifu['tip']['search'] = function () {
1841
  return __("Search for Unsplash images. Example: sun,sea", FIFU_SLUG);
1842
  };
1843
 
1844
  // placeholder
1845
+ $fifu['url']['image'] = function () {
1846
  return __("Image URL", FIFU_SLUG);
1847
  };
1848
+ $fifu['url']['video'] = function () {
1849
  return __("Video URL", FIFU_SLUG);
1850
  };
1851
+ $fifu['image']['keywords'] = function () {
1852
  return __("Keywords", FIFU_SLUG);
1853
  };
1854
 
1859
  $fifu = array();
1860
 
1861
  // title
1862
+ $fifu['title']['examples'] = function () {
1863
  return __("Examples", FIFU_SLUG);
1864
  };
1865
+ $fifu['title']['keywords'] = function () {
1866
  return __("Keywords", FIFU_SLUG);
1867
  };
1868
+ $fifu['title']['more'] = function () {
1869
  return __("More", FIFU_SLUG);
1870
  };
1871
+ $fifu['title']['url'] = function () {
1872
  return __("Image URL", FIFU_SLUG);
1873
  };
1874
+ $fifu['desc']['empty'] = function () {
1875
  return __("If empty, returns a random image.", FIFU_SLUG);
1876
  };
1877
+ $fifu['desc']['size'] = function () {
1878
  return __("You can define the images dimensions at FIFU Settings > Featured image > Unsplash Image Size. For sharing on Facebook, the best size is 1200x630.", FIFU_SLUG);
1879
  };
1880
+ $fifu['desc']['more'] = function () {
1881
  return __("FIFU is able to auto set the images based on the post title, post tags, external web page address and more. Take a look at FIFU Settings > Automatic.", FIFU_SLUG);
1882
  };
1883
 
1888
  $fifu = array();
1889
 
1890
  // title
1891
+ $fifu['title']['price'] = function () {
1892
  return _e("Pricing", FIFU_SLUG);
1893
  };
1894
+ $fifu['title']['getting'] = function () {
1895
  return _e("Getting started", FIFU_SLUG);
1896
  };
1897
+ $fifu['title']['signup'] = function () {
1898
  return _e("Sign up", FIFU_SLUG);
1899
  };
1900
+ $fifu['title']['login'] = function () {
1901
  return _e("Log in", FIFU_SLUG);
1902
  };
1903
+ $fifu['title']['logout'] = function () {
1904
  return _e("Log out", FIFU_SLUG);
1905
  };
1906
+ $fifu['title']['cancel'] = function () {
1907
  return _e("Account", FIFU_SLUG);
1908
  };
1909
+ $fifu['title']['payment'] = function () {
1910
  return _e("Payment method and billing information", FIFU_SLUG);
1911
  };
1912
+ $fifu['title']['add'] = function () {
1913
  return _e("Upload to Cloud", FIFU_SLUG);
1914
  };
1915
+ $fifu['title']['delete'] = function () {
1916
  return _e("Delete from Cloud", FIFU_SLUG);
1917
  };
1918
+ $fifu['title']['media'] = function () {
1919
  return _e("Link local image URLs to FIFU plugin", FIFU_SLUG);
1920
  };
1921
+ $fifu['title']['billing'] = function () {
1922
  return _e("Billing", FIFU_SLUG);
1923
  };
1924
 
1925
  // tabs
1926
+ $fifu['tabs']['welcome'] = function () {
1927
  return _e("Welcome", FIFU_SLUG);
1928
  };
1929
+ $fifu['tabs']['login'] = function () {
1930
  return _e("Log in", FIFU_SLUG);
1931
  };
1932
+ $fifu['tabs']['send'] = function () {
1933
  return _e("Upload", FIFU_SLUG);
1934
  };
1935
+ $fifu['tabs']['delete'] = function () {
1936
  return _e("Delete", FIFU_SLUG);
1937
  };
1938
+ $fifu['tabs']['media'] = function () {
1939
  return _e("Local images", FIFU_SLUG);
1940
  };
1941
+ $fifu['tabs']['trash'] = function () {
1942
  return _e("Trash", FIFU_SLUG);
1943
  };
1944
+ $fifu['tabs']['bill'] = function () {
1945
  return _e("Billing", FIFU_SLUG);
1946
  };
1947
 
1948
  // info
1949
+ $fifu['icon']['cancel'] = function () {
1950
  _e("You'll receive a confirmation link by email.", FIFU_SLUG);
1951
  };
1952
+ $fifu['icon']['payment'] = function () {
1953
  _e("You'll receive an access link by email.", FIFU_SLUG);
1954
  };
1955
 
1956
  // support
1957
+ $fifu['support']['whats'] = function () {
1958
  _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's Edge Network. Thumbnails are automatically created for each image and all are served in webp format.", FIFU_SLUG);
1959
  };
1960
+ $fifu['support']['save'] = function () {
1961
  _e("Never lose an image again");
1962
  };
1963
+ $fifu['support']['fast'] = function () {
1964
  _e("Images loaded much faster");
1965
  };
1966
+ $fifu['support']['process'] = function () {
1967
  _e("Images processed in the cloud");
1968
  };
1969
+ $fifu['support']['price'] = function () {
1970
  _e("Pay per stored image");
1971
  };
1972
+ $fifu['support']['smart'] = function () {
1973
  _e("Smart crop");
1974
  };
1975
+ $fifu['support']['hotlink'] = function () {
1976
  _e("Hotlink protection");
1977
  };
1978
+ $fifu['support']['save-desc'] = function () {
1979
  _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.");
1980
  };
1981
+ $fifu['support']['fast-desc'] = function () {
1982
  _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.");
1983
  };
1984
+ $fifu['support']['process-desc'] = function () {
1985
  _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.");
1986
  };
1987
+ $fifu['support']['price-desc'] = function () {
1988
  _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.");
1989
  };
1990
+ $fifu['support']['price-desc2'] = function () {
1991
  _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 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 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.");
1992
  };
1993
+ $fifu['support']['smart-desc'] = function () {
1994
  _e("WordPress themes and social media platforms work with predefined sizes of images and, when they receive an image with non-standard dimensions, they crop the central area of the image, which is not very smart, as often the main object is not located in the center. Facebook, Twitter and LinkedIn, for example, display the featured image at ~1200×630 pixels (landscape orientation), and when you try to share a full body photo (portrait), the cropped person will likely lose its head and feet. But FIFU Cloud detects faces and objects so its cropped images can show what really matters, without compromising style or information.");
1995
  };
1996
+ $fifu['support']['hotlink-desc'] = function () {
1997
  _e("You cannot prevent bots from accessing and extracting content from your website, including text and image URLs. And unfortunately, after being stored, the data set can be used to replicate your entire website elsewhere, which will receive visitors that should be yours by right. Fortunately, FIFU Cloud offers hotlink protection, which means that other websites, with the exception of social media, will not be able to display your images. And while this doesn't completely solve the problem, it will certainly inhibit web scraping on your website, because posts with blocked images become much less attractive.");
1998
  };
1999
 
2000
  // getting started
2001
+ $fifu['getting']['important'] = function () {
2002
  _e("Important");
2003
  };
2004
+ $fifu['getting']['signup']['title'] = function () {
2005
  _e("Sign up");
2006
  };
2007
+ $fifu['getting']['login']['title'] = function () {
2008
  _e("Log in");
2009
  };
2010
+ $fifu['getting']['upload']['title'] = function () {
2011
  _e("Upload");
2012
  };
2013
+ $fifu['getting']['signup']['description'] = function () {
2014
  _e("email confirmation + Stripe subscription");
2015
  };
2016
+ $fifu['getting']['login']['description'] = function () {
2017
  _e("two-factor authentication app");
2018
  };
2019
+ $fifu['getting']['upload']['description'] = function () {
2020
  _e("selected images");
2021
  };
2022
+ $fifu['getting']['description'] = function () {
2023
  _e("in order to load the thumbnails in their best sizes, FIFU Settings > Performance > Lazy Load must be enabled, otherwise the images won't be displayed. If you have any issues or would like to suggest improvements, please contact us at <b>cloud@fifu.app</b>.");
2024
  };
2025
 
2026
  // pricing
2027
+ $fifu['pricing']['table']['quantity'] = function () {
2028
  _e("Quantity of images");
2029
  };
2030
+ $fifu['pricing']['desc'] = function () {
2031
  _e("You pay for the daily average of stored images in FIFU Cloud, every 30-day period.");
2032
  };
2033
+ $fifu['pricing']['thumbnails'] = function () {
2034
  _e("You don't pay for the multiple image thumbnails created automatically by the service. Consider only the amount of images you uploaded to FIFU Cloud.");
2035
  };
2036
+ $fifu['pricing']['example'] = function () {
2037
  _e("Price calculation example");
2038
  };
2039
+ $fifu['pricing']['table']['interval'] = function () {
2040
  _e("30-day period interval");
2041
  };
2042
+ $fifu['pricing']['table']['days'] = function () {
2043
  _e("Number of days");
2044
  };
2045
+ $fifu['pricing']['table']['stored'] = function () {
2046
  _e("Quantity of images in FIFU Cloud");
2047
  };
2048
+ $fifu['pricing']['table']['average'] = function () {
2049
  _e("30-day average usage");
2050
  };
2051
+ $fifu['pricing']['table']['price'] = function () {
2052
  _e("Price per image");
2053
  };
2054
+ $fifu['pricing']['table']['tier'] = function () {
2055
  _e("Yours");
2056
  };
2057
+ $fifu['pricing']['table']['total'] = function () {
2058
  _e("Total price");
2059
  };
2060
 
2061
  // upload
2062
+ $fifu['upload']['desc'] = function () {
2063
  _e("When an image is uploaded to the cloud, it starts to generate costs from the uploaded date.");
2064
  };
2065
 
2066
  // delete
2067
+ $fifu['delete']['desc'] = function () {
2068
  _e("When an image is deleted from the cloud, you stop being charged for it from the next day.");
2069
  };
2070
 
2071
  // media
2072
+ $fifu['media']['desc'] = function () {
2073
  _e("Before uploading local images to the cloud, the URLs need to be copied to FIFU custom fields, clicking on \"link\" 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.");
2074
  };
2075
 
2076
  // billing
2077
+ $fifu['billing']['desc'] = function () {
2078
  _e("FIFU Cloud will charge you for the daily average of stored images, every 30-day period. The following data is updated hourly.");
2079
  };
2080
+ $fifu['billing']['current'] = function () {
2081
  _e("Current 30-day period");
2082
  };
2083
+ $fifu['billing']['tiers'] = function () {
2084
  _e("Tiers");
2085
  };
2086
+ $fifu['billing']['column']['start'] = function () {
2087
  _e("start date");
2088
  };
2089
+ $fifu['billing']['column']['end'] = function () {
2090
  _e("end date");
2091
  };
2092
+ $fifu['billing']['column']['average'] = function () {
2093
  _e("daily average of stored images");
2094
  };
2095
+ $fifu['billing']['column']['cost'] = function () {
2096
  _e("current cost");
2097
  };
2098
 
2099
  // keys
2100
+ $fifu['keys']['header'] = function () {
2101
  _e("Multiple image selection");
2102
  };
2103
+ $fifu['keys']['adjacent'] = function () {
2104
  _e("Adjacent");
2105
  };
2106
+ $fifu['keys']['non-adjacent'] = function () {
2107
  _e("Non-adjacent");
2108
  };
2109
+ $fifu['keys']['shift'] = function () {
2110
  _e("click on the first image, press <b>SHIFT</b> key and hold it. While holding Shift, click on the last image.");
2111
  };
2112
+ $fifu['keys']['ctrl'] = function () {
2113
  _e("click on the first image, press <b>CTRL</b> key and hold it. While holding Ctrl, click each of the other images you want to select.");
2114
  };
2115
 
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/video as featured image/video of a post or WooCommerce product.
7
- * Version: 4.0.8
8
  * Author: fifu.app
9
  * Author URI: https://fifu.app/
10
  * WC requires at least: 4.0
11
- * WC tested up to: 6.8.1
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/audio as featured image/video/audio of a post or WooCommerce product.
7
+ * Version: 4.0.9
8
  * Author: fifu.app
9
  * Author URI: https://fifu.app/
10
  * WC requires at least: 4.0
11
+ * WC tested up to: 6.8.2
12
  * Text Domain: featured-image-from-url
13
  * License: GPLv3
14
  * License URI: https://www.gnu.org/licenses/gpl-3.0.html
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', 'img.brownsfashion.com', 'accounts.parrotproducts.biz', 'www.dropbox.com', 'cdn.fifu.app', 'cloud.fifu.app');
35
  foreach ($blocklist as $domain) {
36
  if (strpos($url, $domain) !== false)
37
  return true;
31
  if (fifu_is_photon_url($url))
32
  return true;
33
 
34
+ $blocklist = array('localhost', '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', 'img.brownsfashion.com', 'accounts.parrotproducts.biz', 'www.dropbox.com', 'cdn.fifu.app', 'cloud.fifu.app');
35
  foreach ($blocklist as $domain) {
36
  if (strpos($url, $domain) !== false)
37
  return true;
includes/thumbnail.php CHANGED
@@ -251,8 +251,13 @@ function fifu_optimize_content($content) {
251
  preg_match('/(' . $srcType . ')([^\'\"]*[\'\"]){2}/', $imgItem, $src);
252
  if (!$src)
253
  continue;
 
254
  $del = substr($src[0], - 1);
255
  $url = fifu_normalize(explode($del, $src[0])[1]);
 
 
 
 
256
  $new_url = fifu_jetpack_photon_url($url, null);
257
  $newImgItem = str_replace($url, $new_url, html_entity_decode($imgItem));
258
  $srcset = fifu_jetpack_get_set($new_url, false);
251
  preg_match('/(' . $srcType . ')([^\'\"]*[\'\"]){2}/', $imgItem, $src);
252
  if (!$src)
253
  continue;
254
+
255
  $del = substr($src[0], - 1);
256
  $url = fifu_normalize(explode($del, $src[0])[1]);
257
+
258
+ if (fifu_jetpack_blocked($url))
259
+ continue;
260
+
261
  $new_url = fifu_jetpack_photon_url($url, null);
262
  $newImgItem = str_replace($url, $new_url, html_entity_decode($imgItem));
263
  $srcset = fifu_jetpack_get_set($new_url, false);
readme.txt CHANGED
@@ -4,15 +4,15 @@ Donate link: https://donorbox.org/fifu
4
  Tags: featured, image, url, video, woocommerce
5
  Requires at least: 5.3
6
  Tested up to: 6.0.1
7
- Stable tag: 4.0.8
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
 
15
- ### WordPress plugin for external featured images, videos and more
16
 
17
  Since 2015 FIFU has helped thousands of websites worldwide to save money on storage, processing and copyright.
18
 
@@ -94,6 +94,7 @@ Supports videos from YouTube, Vimeo, Imgur, 9GAG, Cloudinary, Tumblr, Publitio,
94
  * **[PRO]** Autoplay
95
  * **[PRO]** Loop
96
  * **[PRO]** Mute
 
97
  * **[PRO]** Background video
98
  * **[PRO]** Gallery icon
99
 
@@ -117,7 +118,8 @@ Supports videos from YouTube, Vimeo, Imgur, 9GAG, Cloudinary, Tumblr, Publitio,
117
  #### OTHERS
118
 
119
  * **[PRO]** Quick edit
120
- * **[PRO]** Featured slider
 
121
  * **[PRO]** Featured shortcode
122
  * **[PRO]** FIFU shortcodes
123
 
@@ -144,6 +146,7 @@ Supports videos from YouTube, Vimeo, Imgur, 9GAG, Cloudinary, Tumblr, Publitio,
144
  * **<a href="https://tastewp.com/new?pre-installed-plugin-slug=featured-image-from-url&redirect=admin.php%3Fpage%3Dfeatured-image-from-url&ni=true">Dummy site for testing</a>**
145
  * **<a href="https://referral.fifu.app/">Affiliate Program</a>**
146
  * **<a href="https://chrome.google.com/webstore/detail/fifu-scraper/pccimcccbkdeeadhejdmnffmllpicola">Google Chrome extension</a>**
 
147
 
148
  #### FIFU, the best WordPress plugin for...
149
  Featured Image, Figurë e Zgjedhur, Image mise en avant, Uitgelichte afbeelding, وێنەی تایبەت, Obrazek wyróżniający, Tugna tameẓlit, Beitragsbild, გამორჩეული სურათი, Utvald bild, 特色图片, تصویر ویژه, Framhevet bilde, Artikkelikuva, Ilustračný obrázok, Imaxe destacada, Ảnh đại diện, Prikazna slika, Imagine reprezentativă, Imagen destacada, 특성 이미지, Delwedd Nodwedd, รูปประจำเรื่อง, Immagine in evidenza, 特選圖片, Imagem destacada, Imagem de destaque, Избранное изображение, アイキャッチ画像, Pśinoskowy wobraz, Öne çıkan görsel, Přinoškowy wobraz, Uitgelichte Afbeelding
@@ -232,45 +235,47 @@ Featured Image, Figurë e Zgjedhur, Image mise en avant, Uitgelichte afbeelding,
232
 
233
  10. Settings: featured slider
234
 
235
- 11. Settings: shortcode
 
 
236
 
237
- 12. Settings: automatic
238
 
239
- 13. Settings: social
240
 
241
- 14. Settings: performance
242
 
243
- 15. Settings: WooCommerce
244
 
245
- 16. Settings: WP All Import
246
 
247
- 17. Settings: REST API
248
 
249
- 18. Settings: Admin
250
 
251
- 19. Settings: Metadata
252
 
253
- 20. integration functions for developers
254
 
255
- 21. FIFU Cloud
256
 
257
 
258
  == Changelog ==
259
 
 
 
 
260
  = 4.0.8 =
261
  * Fix: CDN + Optimized Thumbnails (conflict with images from other CDNs); fix: conflict with Multisite Global Media plugin.
262
 
263
  = 4.0.7 =
264
  * Fix: integration with WCFM plugin was not working anymore.
265
 
266
- = 4.0.6 =
267
- * Fix: notice (Trying to get property ID of non-object).
268
-
269
  = others =
270
  * [more](https://fifu.app/changelog)
271
 
272
 
273
  == Upgrade Notice ==
274
 
275
- = 4.0.8 =
276
- * Fix: CDN + Optimized Thumbnails (conflict with images from other CDNs); fix: conflict with Multisite Global Media plugin.
4
  Tags: featured, image, url, video, woocommerce
5
  Requires at least: 5.3
6
  Tested up to: 6.0.1
7
+ Stable tag: 4.0.9
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
11
+ Use an external image/video/audio as featured image/video/audio of a post or WooCommerce product.
12
 
13
  == Description ==
14
 
15
+ ### WordPress plugin for external featured images, videos, audios and more
16
 
17
  Since 2015 FIFU has helped thousands of websites worldwide to save money on storage, processing and copyright.
18
 
94
  * **[PRO]** Autoplay
95
  * **[PRO]** Loop
96
  * **[PRO]** Mute
97
+ * **[PRO]** Privacy enhanced mode
98
  * **[PRO]** Background video
99
  * **[PRO]** Gallery icon
100
 
118
  #### OTHERS
119
 
120
  * **[PRO]** Quick edit
121
+ * **[PRO]** Featured audio
122
+ * **[PRO]** Featured slider
123
  * **[PRO]** Featured shortcode
124
  * **[PRO]** FIFU shortcodes
125
 
146
  * **<a href="https://tastewp.com/new?pre-installed-plugin-slug=featured-image-from-url&redirect=admin.php%3Fpage%3Dfeatured-image-from-url&ni=true">Dummy site for testing</a>**
147
  * **<a href="https://referral.fifu.app/">Affiliate Program</a>**
148
  * **<a href="https://chrome.google.com/webstore/detail/fifu-scraper/pccimcccbkdeeadhejdmnffmllpicola">Google Chrome extension</a>**
149
+ * **<a href="https://plugintests.com/plugins/wporg/featured-image-from-url/latest">Smoke Test</a>**
150
 
151
  #### FIFU, the best WordPress plugin for...
152
  Featured Image, Figurë e Zgjedhur, Image mise en avant, Uitgelichte afbeelding, وێنەی تایبەت, Obrazek wyróżniający, Tugna tameẓlit, Beitragsbild, გამორჩეული სურათი, Utvald bild, 特色图片, تصویر ویژه, Framhevet bilde, Artikkelikuva, Ilustračný obrázok, Imaxe destacada, Ảnh đại diện, Prikazna slika, Imagine reprezentativă, Imagen destacada, 특성 이미지, Delwedd Nodwedd, รูปประจำเรื่อง, Immagine in evidenza, 特選圖片, Imagem destacada, Imagem de destaque, Избранное изображение, アイキャッチ画像, Pśinoskowy wobraz, Öne çıkan görsel, Přinoškowy wobraz, Uitgelichte Afbeelding
235
 
236
  10. Settings: featured slider
237
 
238
+ 11. Settings: featured audio
239
+
240
+ 12. Settings: shortcode
241
 
242
+ 13. Settings: automatic
243
 
244
+ 14. Settings: social
245
 
246
+ 15. Settings: performance
247
 
248
+ 16. Settings: WooCommerce
249
 
250
+ 17. Settings: WP All Import
251
 
252
+ 18. Settings: REST API
253
 
254
+ 19. Settings: Admin
255
 
256
+ 20. Settings: Metadata
257
 
258
+ 21. integration functions for developers
259
 
260
+ 22. FIFU Cloud
261
 
262
 
263
  == Changelog ==
264
 
265
+ = 4.0.9 =
266
+ * New feature: Featured Audio; new feature: Featured video > Privacy Enhanced Mode; new option: Featured Slider > load slider on singular post types only; fix: CDN + Optimized Thumbnails > apply to content images (should skip images that cannot be served).
267
+
268
  = 4.0.8 =
269
  * Fix: CDN + Optimized Thumbnails (conflict with images from other CDNs); fix: conflict with Multisite Global Media plugin.
270
 
271
  = 4.0.7 =
272
  * Fix: integration with WCFM plugin was not working anymore.
273
 
 
 
 
274
  = others =
275
  * [more](https://fifu.app/changelog)
276
 
277
 
278
  == Upgrade Notice ==
279
 
280
+ = 4.0.9 =
281
+ * New feature: Featured Audio; new feature: Featured video > Privacy Enhanced Mode; new option: Featured Slider > load slider on singular post types only; fix: CDN + Optimized Thumbnails > apply to content images (should skip images that cannot be served).