Version Description
- improved styles and starting using minify
- added free vs. pro section
- Tested successfully with WordPress 5.9
- Tested successfully with WordPress 6.0
Download this release
Release Info
Developer | kybernetikservices |
Plugin | Quick Featured Images |
Version | 13.6.0 |
Comparing to | |
See all releases |
Code changes from version 13.5.7 to 13.6.0
- README.txt +12 -3
- admin/assets/css/admin.min.css +1 -0
- admin/assets/css/admin.min.css.map +1 -0
- admin/assets/css/{admin.css → admin.scss} +150 -64
- admin/assets/images/ks_logo.png +0 -0
- admin/assets/images/tick.svg +4 -0
- admin/assets/images/tick_icon_green.png +0 -0
- admin/class-Quick_Featured_Images_Admin.php +2 -3
- admin/class-Quick_Featured_Images_Comparison.php +299 -0
- admin/class-Quick_Featured_Images_Defaults.php +1 -1
- admin/class-Quick_Featured_Images_Settings.php +1 -1
- admin/class-Quick_Featured_Images_Tools.php +1 -1
- admin/views/section_comparison.php +460 -0
- admin/views/section_footer.php +52 -9
- quick-featured-images.php +7 -3
README.txt
CHANGED
@@ -4,8 +4,8 @@ Donate link: https://www.paypal.com/donate?hosted_button_id=NSEQX73VHXKS8
|
|
4 |
Tags: featured image,featured images,bulk set,automatic,thumbnails
|
5 |
Requires at least: 3.8
|
6 |
Requires PHP: 5.2
|
7 |
-
Tested up to:
|
8 |
-
Stable tag: 13.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -26,7 +26,10 @@ The plugin 'Quick Featured Images' helps you bulk managing featured images, sett
|
|
26 |
3. It enables you to **define presets for automatic default featured images** for future posts as many as you need. You can set **accurate rules based on post properties**.
|
27 |
4. It **removes database entries of featured images without existing image files** with a simple single click
|
28 |
|
29 |
-
If you want to include **audios, videos and custom post types** and get more options
|
|
|
|
|
|
|
30 |
|
31 |
= What users said =
|
32 |
* **“OMG, so good!”** in [Reviews at wordpress.org](https://wordpress.org/support/topic/omg-so-good-2/) by marverix on February 27, 2021
|
@@ -281,6 +284,12 @@ If you want to contribute a translation of the plugin in your language it would
|
|
281 |
|
282 |
== Changelog ==
|
283 |
|
|
|
|
|
|
|
|
|
|
|
|
|
284 |
= 13.5.7 =
|
285 |
* improved and added text and help
|
286 |
* Tested successfully with WordPress 5.8
|
4 |
Tags: featured image,featured images,bulk set,automatic,thumbnails
|
5 |
Requires at least: 3.8
|
6 |
Requires PHP: 5.2
|
7 |
+
Tested up to: 6.0
|
8 |
+
Stable tag: 13.6.0
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
26 |
3. It enables you to **define presets for automatic default featured images** for future posts as many as you need. You can set **accurate rules based on post properties**.
|
27 |
4. It **removes database entries of featured images without existing image files** with a simple single click
|
28 |
|
29 |
+
If you want to include **audios, videos and custom post types** and get more options, than take a look the **Pro version** [Quick Featured Images Pro](https://www.quickfeaturedimages.com/?utm_source=wordpress_org&utm_medium=plugin&utm_campaign=quick-featured-images&utm_content=go_pro).
|
30 |
+
|
31 |
+
= Demo =
|
32 |
+
You want to test Quick Featured Images before installing on your site? Try it out on your free dummy site and [click here](https://demo.tastewp.com/quick-featured-images).
|
33 |
|
34 |
= What users said =
|
35 |
* **“OMG, so good!”** in [Reviews at wordpress.org](https://wordpress.org/support/topic/omg-so-good-2/) by marverix on February 27, 2021
|
284 |
|
285 |
== Changelog ==
|
286 |
|
287 |
+
= 13.6.0 =
|
288 |
+
* improved styles and starting using minify
|
289 |
+
* added free vs. pro section
|
290 |
+
* Tested successfully with WordPress 5.9
|
291 |
+
* Tested successfully with WordPress 6.0
|
292 |
+
|
293 |
= 13.5.7 =
|
294 |
* improved and added text and help
|
295 |
* Tested successfully with WordPress 5.8
|
admin/assets/css/admin.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.qfi_wrapper{overflow:hidden}.qfi_w50percent{width:50%;float:left;display:block;margin:0;border:0 none;padding:0}.qfi_w50percent p{margin-top:0}#qfi_main{float:left;width:66%}#qfi_main .qfi_content{margin:2em 1em 1em 0;background-color:rgba(255,255,255,.8);padding-bottom:2em}#qfi_main .widefat a{text-decoration:underline}#qfi_footer{float:right;width:33%}#qfi_footer .qfi_content{margin:2em 0 1em 1em;background-color:#f5fbfd;border-radius:8px;border:1px solid #ccc}#qfi_footer .qfi_content h2{background:none;margin:0}#qfi_footer .qfi_content dl{padding:0 8px}#qfi_footer .qfi_content li,#qfi_footer .qfi_content dd{overflow:hidden;margin-bottom:10px;margin-left:0}#qfi_replace{overflow:hidden}#qfi_replace label{display:block;float:left;overflow:hidden;padding:0 3em 3em 0}#qfi_replace input[type=radio]:checked:before,#qfi_replace input[type=radio]:checked,#qfi_replace input[type=radio],#qfi_replace input[type=checkbox]:checked:before,#qfi_replace input[type=checkbox]:checked,#qfi_replace input[type=checkbox]{position:relative;top:2.5em;left:1.5em;padding:9px !important}#progress em{font-weight:bold;font-style:normal}#progress #bar{display:block;overflow:hidden;line-height:1;padding:1em;background:none repeat scroll 0 0 #e3e3e3;color:#222}#progress #bar span{line-height:1;padding:1em}#progress #bar strong{line-height:1;padding:1em}body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.widefat th:nth-of-type(1),body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.widefat td:nth-of-type(1),body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.widefat th:nth-of-type(4),body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.widefat td:nth-of-type(4){text-align:center}body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.widefat td:nth-of-type(4){vertical-align:middle}body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.form-table,body[class*=_page_quick-featured-images-settings] #qfi_main .qfi_content table.form-table{width:auto}body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content form select{width:100%}body[class*=_page_quick-featured-images-defaults] #qfi_main .qfi_content table.form-table,body[class*=_page_quick-featured-images-settings] #qfi_main .qfi_content table.form-table,#qfi_main .qfi_content legend,#qfi_main .qfi_content h4,#qfi_main .qfi_content h3,#qfi_main .qfi_content ul,#qfi_main .qfi_content p{margin-left:8px;margin-right:8px}#qfi_main .qfi_content p.qfi_valid{color:green;font-weight:bold}#qfi_main .qfi_content p.qfi_invalid{color:red;font-weight:bold}#qfi_main .qfi_content h3{font-size:1.12em;line-height:1.44}#qfi_main .qfi_content h4{margin-bottom:0;font-size:1em}#qfi_main .qfi_content fieldset{margin-bottom:1em}#qfi_main .qfi_content legend{margin-bottom:.5em;font-weight:bold}#qfi_main .qfi_content ul{list-style:disc outside none;padding-left:1em}#qfi_main .qfi_content ul.selected_images{padding-left:0}#qfi_main .qfi_content ul.selected_images li{display:inline;margin:0 8px 0 0;padding:0}#qfi_main .qfi_content ol{margin-left:3em;margin-right:8px}#qfi_main .qfi_content .failure{font-weight:bold}#qfi_main div.qfi-failure,#qfi_main .widefat tr.qfi-failure{background-color:#ffebe8}#qfi_main div.qfi-failure{margin:0 0 1.5em;padding:8px 0;font-weight:bold}#qfi_year{width:4em}.wrap h2{background:none repeat scroll 0 0 #ddd;color:#222;padding:8px}.wrap h2.nobottom{margin-bottom:0}.qfi_content_inside .failure{font-size:1.5em}.qfi_content_inside .success{color:#555;font-size:1.5em;font-weight:bold;margin-top:.5em;padding:0 15px}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li span.dashicons{font-size:15em;width:auto;height:auto;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(1) a span{color:#39c}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(1) a:focus span,.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(1) a:hover span{color:#66b3d9}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(2) a span{color:#f90}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(2) a:focus span,.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(2) a:hover span{color:#ffb340}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(3) a span{color:#9cc}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(3) a:focus span,.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(3) a:hover span{color:#b3d9d9}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(4) a span{color:#c90}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(4) a:focus span,.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li:nth-of-type(4) a:hover span{color:#d9b340}#qfi_main .qfi_content .qfi_page_description{background-color:#d0d0d0;font-weight:bold;padding:8px 0}body[class*=_page_quick-featured-images-settings] #qfi_main .qfi_content form h2,#qfi_main .qfi_content .no-bottom{margin-bottom:0}#template_row{display:none}#qfi_main .attachment-thumbnail{border-radius:3px;box-shadow:3px 3px 3px 1px #999;-webkit-box-shadow:3px 3px 3px 1px #999;margin-bottom:9px;background-color:#f5f5f5;background-image:linear-gradient(45deg, #c4c4c4 25%, transparent 25%, transparent 75%, #c4c4c4 75%, #c4c4c4),linear-gradient(45deg, #c4c4c4 25%, transparent 25%, transparent 75%, #c4c4c4 75%, #c4c4c4);background-position:0 0,10px 10px;background-size:20px 20px}#qfi_main .selected_images li img[src$=svg]{width:60px;height:auto}#qfi_main .qfi_w50percent p img[src$=svg]{width:150px;height:auto}#qfi_max_width,#qfi_max_height{width:4em}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul{list-style:none;margin-left:0;margin-right:0;padding-left:0;overflow:hidden}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content li{display:block;float:left;width:50%;height:310px}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li a:focus img,.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content ul li a:hover img{opacity:.6}#qfi_main .qfi_content img.alignleft,#qfi_footer .qfi_content img.avatar{display:inline;float:left;margin:3px .8em 5px 0}#qfi_main .qfi_content form td .qfi_preset_image{display:block;width:80px;height:auto}#qfi_main .qfi_content img#paypal_button{max-width:195px}#qfi_main .qfi_content img.qfi_random_img{width:80px;height:auto;margin-right:.8em}.qfi_ad_for_pro{font-weight:bold}@media only screen and (max-width: 900px){#qfi_main,#qfi_footer,#qfi_main .qfi_content,#qfi_footer .qfi_content{float:none;width:auto;margin:0}#progress #bar span{line-height:4}}@media screen and (max-width: 600px){#progress #bar span.sep,#progress #bar span.wp-ui-notification,#progress #bar strong.wp-ui-highlight{display:block;line-height:1}#progress #bar span.sep{padding:.5em 1em}.toplevel_page_quick-featured-images-overview #qfi_main .qfi_content li,.qfi_w50percent{float:none;width:auto;height:auto}}.qfi_freevs_pro{width:100%;border-collapse:collapse;border-spacing:0;background-color:#fff}.qfi_freevs_pro tr td{border:solid 1px #e7eaef;text-align:center;vertical-align:middle;padding:15px 20px}.qfi_freevs_pro tr td.headline{font-weight:bolder}.qfi_freevs_pro tr td:first-child{background:#f8f9fa;text-align:left}.qfi_freevs_pro tr:first-child td{font-weight:bold}.upgrade_to_pro_bottom_banner{float:left;width:100%;box-sizing:border-box;padding:35px;color:#fff;height:auto;background:#01ac6d;margin-top:20px}.upgrade_to_pro_bottom_banner_hd{float:left;width:60%;border-left:solid 5px #f4f4f4;font-size:20px;font-weight:bold;padding-left:10px;line-height:28px;margin-top:10px}.upgrade_to_pro_bottom_banner_btn{background:#f4f4f4;border-radius:5px;color:#01ac6d;text-decoration:none;font-size:16px;font-weight:bold;float:left;padding:20px 15px;margin-left:10px;margin-top:10px}.upgrade_to_pro_bottom_banner_btn:hover{color:#fff}.upgrade_to_pro_bottom_banner_feature_list_main{float:left;width:100%;margin-top:30px}.upgrade_to_pro_bottom_banner_feature_list{float:left;box-sizing:border-box;width:31%;margin-right:2%;padding:3px 0 3px 25px;font-size:13px;color:#fff}@media screen and (max-width: 768px){.upgrade_to_pro_bottom_banner_feature_list{width:100%;margin:auto}}/*# sourceMappingURL=admin.min.css.map */
|
admin/assets/css/admin.min.css.map
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
{"version":3,"sourceRoot":"","sources":["admin.scss"],"names":[],"mappings":"AAMA,aACC,gBAID,gBACC,UACA,WACA,cACA,SACA,cACA,UACA,kBACC,aAQF,UACC,WACA,UACA,uBACC,qBACA,sCACA,mBAGA,qBACC,0BAMH,YACC,YACA,UACA,yBACC,qBACA,yBACA,kBACA,sBACA,4BACC,gBACA,SAED,4BACC,cAED,wDACC,gBACA,mBACA,cAMH,aACC,gBACA,mBACC,cACA,WACA,gBACA,oBAGF,iPAMC,kBACA,UACA,WACA,uBAKA,aACC,iBACA,kBAED,eACC,cACA,gBACA,cACA,YACA,0CACA,WACA,oBACC,cACA,YAED,sBACC,cACA,YAMH,oaAIC,kBAED,yGACC,sBAED,oLAEC,WAED,qFACC,WAED,yTAOC,gBACA,iBAED,mCACC,YACA,iBAED,qCACC,UACA,iBAGD,0BACC,iBACA,iBAED,0BACC,gBACA,cAED,gCACC,kBAGD,8BACC,mBACA,iBAED,0BACC,6BACA,iBAED,0CACC,eAED,6CACC,eACA,iBACA,UAED,0BACC,gBACA,iBAED,gCACC,iBAED,4DAEC,yBAED,0BACC,iBACA,cACA,iBAED,UACC,UAED,SACC,uCACA,WACA,YAED,kBACC,gBAED,6BAEC,gBAKD,6BACC,WACA,gBACA,iBACA,gBACA,eAED,0FACC,eACA,WACA,YACA,cACA,kBACA,qBACA,wBAED,iGACC,WAED,8MAEC,cAED,iGACC,WAED,8MAEC,cAED,iGACC,WAED,8MAEC,cAED,iGACC,WAED,8MAEC,cAGD,6CACC,yBACA,iBACA,cAED,mHAEC,gBAED,cACC,aAED,gCAEC,kBACA,gCACA,wCACA,kBACA,yBACA,yMACA,kCACA,0BAED,4CACC,WACA,YAED,0CACC,YACA,YAED,+BAEC,UAGD,wEACC,gBACA,cACA,eACA,eACA,gBAED,wEACC,cACA,WACA,UACA,aAED,8KAEC,WAED,yEAEC,eACA,WACA,sBAED,iDACE,cACA,WACA,YAEF,yCACC,gBAED,0CACE,WACA,YACA,kBAEF,gBACC,iBAGD,0CAEC,sEAIC,WACA,WACA,SAED,oBACC,eAIF,qCAEC,qGAGC,cACA,cAED,wBACC,iBAGD,wFAEC,WACA,WACA,aAKF,gBACC,WACA,yBACA,iBACA,sBAEC,sBACC,yBACA,kBACA,sBACA,kBACA,+BACC,mBAED,kCACC,mBACA,gBAID,kCACC,iBAOJ,8BACC,WACA,WACA,sBACA,aACA,WACA,YACA,mBACA,gBAED,iCACC,qBACA,8BACA,eACA,iBACA,kBACA,iBACA,gBAED,kCACC,mBACA,kBACA,cACA,qBACA,eACA,iBACA,WACA,kBACA,iBACA,gBACA,wCACC,WAGF,gDACC,WACA,WACA,gBAED,2CACC,WACA,sBACA,0BACA,uBACA,0BAED,qCACC,2CACC,WACA","file":"admin.min.css"}
|
admin/assets/css/{admin.css → admin.scss}
RENAMED
@@ -7,25 +7,6 @@
|
|
7 |
.qfi_wrapper {
|
8 |
overflow: hidden;
|
9 |
}
|
10 |
-
#qfi_main {
|
11 |
-
float: left;
|
12 |
-
width: 66%;
|
13 |
-
}
|
14 |
-
#qfi_footer {
|
15 |
-
float: right;
|
16 |
-
width: 33%;
|
17 |
-
}
|
18 |
-
#qfi_main .qfi_content {
|
19 |
-
margin: 2em 1em 1em 0;
|
20 |
-
background-color: rgba(255, 255, 255, 0.8);
|
21 |
-
padding-bottom: 2em;
|
22 |
-
}
|
23 |
-
#qfi_footer .qfi_content {
|
24 |
-
margin: 2em 0 1em 1em;
|
25 |
-
background-color: #F5FBFD;
|
26 |
-
border-radius: 8px;
|
27 |
-
border: 1px solid #ccc;
|
28 |
-
}
|
29 |
|
30 |
/* floating halfs */
|
31 |
.qfi_w50percent {
|
@@ -35,43 +16,63 @@
|
|
35 |
margin: 0;
|
36 |
border: 0 none;
|
37 |
padding: 0;
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
}
|
42 |
|
43 |
/*
|
44 |
* Elements
|
45 |
*
|
46 |
*/
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
margin-left: 0;
|
61 |
}
|
62 |
-
|
63 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
}
|
65 |
|
66 |
/* Filter 'Replace' */
|
67 |
#qfi_replace {
|
68 |
overflow: hidden;
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
}
|
76 |
#qfi_replace input[type="radio"]:checked:before,
|
77 |
#qfi_replace input[type="radio"]:checked,
|
@@ -87,26 +88,26 @@
|
|
87 |
|
88 |
/* Progress Bar */
|
89 |
#progress {
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
}
|
111 |
|
112 |
/* Other content elements */
|
@@ -362,3 +363,88 @@ body[class*=_page_quick-featured-images-settings] #qfi_main .qfi_content form h2
|
|
362 |
height: auto;
|
363 |
}
|
364 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
.qfi_wrapper {
|
8 |
overflow: hidden;
|
9 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
|
11 |
/* floating halfs */
|
12 |
.qfi_w50percent {
|
16 |
margin: 0;
|
17 |
border: 0 none;
|
18 |
padding: 0;
|
19 |
+
p {
|
20 |
+
margin-top: 0;
|
21 |
+
}
|
22 |
}
|
23 |
|
24 |
/*
|
25 |
* Elements
|
26 |
*
|
27 |
*/
|
28 |
+
#qfi_main {
|
29 |
+
float: left;
|
30 |
+
width: 66%;
|
31 |
+
.qfi_content {
|
32 |
+
margin: 2em 1em 1em 0;
|
33 |
+
background-color: rgba(255, 255, 255, 0.8);
|
34 |
+
padding-bottom: 2em;
|
35 |
+
}
|
36 |
+
.widefat {
|
37 |
+
a {
|
38 |
+
text-decoration: underline;
|
39 |
+
}
|
40 |
+
}
|
|
|
41 |
}
|
42 |
+
|
43 |
+
/* Footer */
|
44 |
+
#qfi_footer {
|
45 |
+
float: right;
|
46 |
+
width: 33%;
|
47 |
+
.qfi_content {
|
48 |
+
margin: 2em 0 1em 1em;
|
49 |
+
background-color: #F5FBFD;
|
50 |
+
border-radius: 8px;
|
51 |
+
border: 1px solid #ccc;
|
52 |
+
h2 {
|
53 |
+
background: none;
|
54 |
+
margin: 0;
|
55 |
+
}
|
56 |
+
dl {
|
57 |
+
padding: 0 8px;
|
58 |
+
}
|
59 |
+
li, dd {
|
60 |
+
overflow: hidden; /* correct height if inner flowing elements */
|
61 |
+
margin-bottom: 10px;
|
62 |
+
margin-left: 0;
|
63 |
+
}
|
64 |
+
}
|
65 |
}
|
66 |
|
67 |
/* Filter 'Replace' */
|
68 |
#qfi_replace {
|
69 |
overflow: hidden;
|
70 |
+
label {
|
71 |
+
display: block;
|
72 |
+
float: left;
|
73 |
+
overflow: hidden;
|
74 |
+
padding: 0 3em 3em 0;
|
75 |
+
}
|
76 |
}
|
77 |
#qfi_replace input[type="radio"]:checked:before,
|
78 |
#qfi_replace input[type="radio"]:checked,
|
88 |
|
89 |
/* Progress Bar */
|
90 |
#progress {
|
91 |
+
em {
|
92 |
+
font-weight: bold;
|
93 |
+
font-style: normal;
|
94 |
+
}
|
95 |
+
#bar {
|
96 |
+
display: block;
|
97 |
+
overflow: hidden;
|
98 |
+
line-height: 1;
|
99 |
+
padding: 1em;
|
100 |
+
background: none repeat scroll 0 0 #e3e3e3;
|
101 |
+
color: #222;
|
102 |
+
span {
|
103 |
+
line-height: 1;
|
104 |
+
padding: 1em;
|
105 |
+
}
|
106 |
+
strong {
|
107 |
+
line-height: 1;
|
108 |
+
padding: 1em;
|
109 |
+
}
|
110 |
+
}
|
111 |
}
|
112 |
|
113 |
/* Other content elements */
|
363 |
height: auto;
|
364 |
}
|
365 |
}
|
366 |
+
|
367 |
+
/* Free vs Pro section */
|
368 |
+
.qfi_freevs_pro{
|
369 |
+
width:100%;
|
370 |
+
border-collapse:collapse;
|
371 |
+
border-spacing:0;
|
372 |
+
background-color: #ffffff;
|
373 |
+
tr {
|
374 |
+
td{
|
375 |
+
border:solid 1px #e7eaef;
|
376 |
+
text-align:center;
|
377 |
+
vertical-align:middle;
|
378 |
+
padding:15px 20px;
|
379 |
+
&.headline{
|
380 |
+
font-weight: bolder
|
381 |
+
}
|
382 |
+
&:first-child{
|
383 |
+
background:#f8f9fa;
|
384 |
+
text-align:left;
|
385 |
+
}
|
386 |
+
}
|
387 |
+
&:first-child {
|
388 |
+
td{
|
389 |
+
font-weight:bold;
|
390 |
+
}
|
391 |
+
}
|
392 |
+
}
|
393 |
+
}
|
394 |
+
|
395 |
+
/* Upgrade bottom banner */
|
396 |
+
.upgrade_to_pro_bottom_banner{
|
397 |
+
float:left;
|
398 |
+
width:100%;
|
399 |
+
box-sizing:border-box;
|
400 |
+
padding:35px;
|
401 |
+
color:#ffffff;
|
402 |
+
height:auto;
|
403 |
+
background:#01AC6D;
|
404 |
+
margin-top:20px;
|
405 |
+
}
|
406 |
+
.upgrade_to_pro_bottom_banner_hd{
|
407 |
+
float:left; width:60%;
|
408 |
+
border-left:solid 5px #f4f4f4;
|
409 |
+
font-size:20px;
|
410 |
+
font-weight:bold;
|
411 |
+
padding-left:10px;
|
412 |
+
line-height:28px;
|
413 |
+
margin-top:10px;
|
414 |
+
}
|
415 |
+
.upgrade_to_pro_bottom_banner_btn{
|
416 |
+
background:#f4f4f4;
|
417 |
+
border-radius:5px;
|
418 |
+
color:#01AC6D;
|
419 |
+
text-decoration:none;
|
420 |
+
font-size:16px;
|
421 |
+
font-weight:bold;
|
422 |
+
float:left;
|
423 |
+
padding:20px 15px;
|
424 |
+
margin-left:10px;
|
425 |
+
margin-top:10px;
|
426 |
+
&:hover{
|
427 |
+
color:#fff;
|
428 |
+
}
|
429 |
+
}
|
430 |
+
.upgrade_to_pro_bottom_banner_feature_list_main{
|
431 |
+
float:left;
|
432 |
+
width:100%;
|
433 |
+
margin-top:30px;
|
434 |
+
}
|
435 |
+
.upgrade_to_pro_bottom_banner_feature_list{
|
436 |
+
float:left;
|
437 |
+
box-sizing:border-box;
|
438 |
+
width:31%; margin-right:2%;
|
439 |
+
padding:3px 0 3px 25px;
|
440 |
+
font-size:13px; color:#fff;
|
441 |
+
}
|
442 |
+
@media screen and (max-width:768px) {
|
443 |
+
.upgrade_to_pro_bottom_banner_feature_list{
|
444 |
+
width:100%;
|
445 |
+
margin:auto;
|
446 |
+
}
|
447 |
+
}
|
448 |
+
|
449 |
+
|
450 |
+
|
admin/assets/images/ks_logo.png
ADDED
Binary file
|
admin/assets/images/tick.svg
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
1 |
+
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2 |
+
<circle cx="9" cy="9" r="9" fill="#ffffff"/>
|
3 |
+
<path d="M4.5 9L7.5 12L13.5 6" stroke="#01AC6D" stroke-width="2.5" stroke-linecap="round"/>
|
4 |
+
</svg>
|
admin/assets/images/tick_icon_green.png
ADDED
Binary file
|
admin/class-Quick_Featured_Images_Admin.php
CHANGED
@@ -436,7 +436,7 @@ if ( ! defined( 'ABSPATH' ) ) exit;
|
|
436 |
// request css only if this plugin was called
|
437 |
$screen = get_current_screen();
|
438 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
439 |
-
wp_enqueue_style( $this->plugin_slug . '-plugin-styles', plugins_url( 'assets/css/admin.css', __FILE__ ), array(), $this->plugin_version );
|
440 |
}
|
441 |
}
|
442 |
|
@@ -506,7 +506,6 @@ if ( ! defined( 'ABSPATH' ) ) exit;
|
|
506 |
|
507 |
/*
|
508 |
* Add the top level menu page of this plugin
|
509 |
-
*
|
510 |
*/
|
511 |
$this->plugin_screen_hook_suffix = add_menu_page(
|
512 |
$page_title,
|
@@ -518,7 +517,7 @@ if ( ! defined( 'ABSPATH' ) ) exit;
|
|
518 |
11 // position after menu item 'Media'
|
519 |
);
|
520 |
|
521 |
-
// Give first
|
522 |
// by calling the add_submenu_page function the first time with the parent_slug and menu_slug as same values
|
523 |
add_submenu_page(
|
524 |
$this->page_slug, // parent slug
|
436 |
// request css only if this plugin was called
|
437 |
$screen = get_current_screen();
|
438 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
439 |
+
wp_enqueue_style( $this->plugin_slug . '-plugin-styles', plugins_url( 'assets/css/admin.min.css', __FILE__ ), array(), $this->plugin_version );
|
440 |
}
|
441 |
}
|
442 |
|
506 |
|
507 |
/*
|
508 |
* Add the top level menu page of this plugin
|
|
|
509 |
*/
|
510 |
$this->plugin_screen_hook_suffix = add_menu_page(
|
511 |
$page_title,
|
517 |
11 // position after menu item 'Media'
|
518 |
);
|
519 |
|
520 |
+
// Give first sublevel menu link a different label than the top level menu link
|
521 |
// by calling the add_submenu_page function the first time with the parent_slug and menu_slug as same values
|
522 |
add_submenu_page(
|
523 |
$this->page_slug, // parent slug
|
admin/class-Quick_Featured_Images_Comparison.php
ADDED
@@ -0,0 +1,299 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Quick Featured Images
|
4 |
+
*
|
5 |
+
* @package Quick_Featured_Images_Comparison
|
6 |
+
* @author Kybernetik Services <wordpress@kybernetik.com.de>
|
7 |
+
* @license GPL-2.0+
|
8 |
+
* @link http://wordpress.org/plugins/quick-featured-images/
|
9 |
+
* @copyright 2022
|
10 |
+
*/
|
11 |
+
// Exit if accessed directly
|
12 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
13 |
+
|
14 |
+
/**
|
15 |
+
* @package Quick_Featured_Images_Settings
|
16 |
+
* @author Kybernetik Services <wordpress@kybernetik.com.de>
|
17 |
+
*/
|
18 |
+
class Quick_Featured_Images_Comparison {
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Instance of this class.
|
22 |
+
*
|
23 |
+
* @since 13.6.0
|
24 |
+
*
|
25 |
+
* @var object
|
26 |
+
*/
|
27 |
+
protected static $instance = null;
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Required user capability to use this plugin
|
31 |
+
*
|
32 |
+
* @since 13.6.0
|
33 |
+
*
|
34 |
+
* @var string
|
35 |
+
*/
|
36 |
+
protected $required_user_cap = null;
|
37 |
+
|
38 |
+
/**
|
39 |
+
* Slug of the plugin screen.
|
40 |
+
*
|
41 |
+
* @since 13.6.0
|
42 |
+
*
|
43 |
+
* @var string
|
44 |
+
*/
|
45 |
+
protected $plugin_screen_hook_suffix = null;
|
46 |
+
|
47 |
+
/**
|
48 |
+
* Name of this plugin.
|
49 |
+
*
|
50 |
+
* @since 13.6.0
|
51 |
+
*
|
52 |
+
* @var string
|
53 |
+
*/
|
54 |
+
protected $plugin_name = null;
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Unique identifier for this plugin.
|
58 |
+
*
|
59 |
+
* It is the same as in class Quick_Featured_Images_Admin
|
60 |
+
* Has to be set here to be used in non-object context, e.g. callback functions
|
61 |
+
*
|
62 |
+
* @since 13.6.0
|
63 |
+
*
|
64 |
+
* @var string
|
65 |
+
*/
|
66 |
+
protected $plugin_slug = null;
|
67 |
+
|
68 |
+
/**
|
69 |
+
* Unique identifier for the admin page of this class.
|
70 |
+
*
|
71 |
+
* @since 13.6.0
|
72 |
+
*
|
73 |
+
* @var string
|
74 |
+
*/
|
75 |
+
protected $page_slug = null;
|
76 |
+
|
77 |
+
/**
|
78 |
+
* Unique identifier for the admin parent page of this class.
|
79 |
+
*
|
80 |
+
* @since 13.6.0
|
81 |
+
*
|
82 |
+
* @var string
|
83 |
+
*/
|
84 |
+
protected $parent_page_slug = null;
|
85 |
+
|
86 |
+
/**
|
87 |
+
* Plugin version, used for cache-busting of style and script file references.
|
88 |
+
*
|
89 |
+
* @since 13.6.0
|
90 |
+
*
|
91 |
+
* @var string
|
92 |
+
*/
|
93 |
+
protected $plugin_version = null;
|
94 |
+
|
95 |
+
/**
|
96 |
+
* Slug of the menu page on which to display the form sections
|
97 |
+
*
|
98 |
+
*
|
99 |
+
* @since 13.6.0
|
100 |
+
*
|
101 |
+
* @var array
|
102 |
+
*/
|
103 |
+
protected $main_options_page_slug = 'quick-featured-images-optionspage';
|
104 |
+
|
105 |
+
/**
|
106 |
+
* Initialize the plugin by loading admin scripts & styles and adding a
|
107 |
+
* comparison page and menu.
|
108 |
+
*
|
109 |
+
* @since 13.6.0
|
110 |
+
*/
|
111 |
+
private function __construct() {
|
112 |
+
|
113 |
+
// Call variables from public plugin class.
|
114 |
+
$plugin = Quick_Featured_Images_Admin::get_instance();
|
115 |
+
$this->plugin_name = $plugin->get_plugin_name();
|
116 |
+
$this->plugin_slug = $plugin->get_plugin_slug();
|
117 |
+
$this->page_slug = $this->plugin_slug . '-comparison';
|
118 |
+
$this->parent_page_slug = $plugin->get_page_slug();
|
119 |
+
$this->plugin_version = $plugin->get_plugin_version();
|
120 |
+
|
121 |
+
// set capabilities
|
122 |
+
if ( isset( $settings[ 'minimum_role_all_pages' ] ) ) {
|
123 |
+
switch ( $settings[ 'minimum_role_all_pages' ] ) {
|
124 |
+
case 'administrator':
|
125 |
+
$this->required_user_cap = 'manage_options';
|
126 |
+
break;
|
127 |
+
default:
|
128 |
+
$this->required_user_cap = 'manage_options';
|
129 |
+
}
|
130 |
+
} else {
|
131 |
+
$this->required_user_cap = 'manage_options';
|
132 |
+
}
|
133 |
+
|
134 |
+
// Load admin style sheet and JavaScript.
|
135 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) );
|
136 |
+
|
137 |
+
// Add the options page and menu item.
|
138 |
+
add_action( 'admin_menu', array( $this, 'add_plugin_admin_menu' ) );
|
139 |
+
|
140 |
+
// Add an action link pointing to the options page.
|
141 |
+
$plugin_basename = plugin_basename( plugin_dir_path( __DIR__ ) . $this->plugin_slug . '.php' );
|
142 |
+
add_filter( 'plugin_action_links_' . $plugin_basename, array( $this, 'add_action_links' ) );
|
143 |
+
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* Render the comparison page for this plugin.
|
148 |
+
*
|
149 |
+
* @since 13.6.0
|
150 |
+
*/
|
151 |
+
public function main() {
|
152 |
+
$this->display_header();
|
153 |
+
include_once( 'views/section_comparison.php' );
|
154 |
+
$this->display_footer();
|
155 |
+
}
|
156 |
+
|
157 |
+
/**
|
158 |
+
* Return an instance of this class.
|
159 |
+
*
|
160 |
+
* @since 13.6.0
|
161 |
+
*
|
162 |
+
* @return object A single instance of this class.
|
163 |
+
*/
|
164 |
+
public static function get_instance() {
|
165 |
+
|
166 |
+
// If the single instance hasn't been set, set it now.
|
167 |
+
if ( null == self::$instance ) {
|
168 |
+
self::$instance = new self;
|
169 |
+
}
|
170 |
+
|
171 |
+
return self::$instance;
|
172 |
+
}
|
173 |
+
|
174 |
+
/**
|
175 |
+
* Return the page headline.
|
176 |
+
*
|
177 |
+
* @since 13.6.0
|
178 |
+
*
|
179 |
+
*@return string headline variable.
|
180 |
+
*/
|
181 |
+
public function get_page_headline() {
|
182 |
+
return __( 'Free vs. Pro', 'quick-featured-images' );
|
183 |
+
}
|
184 |
+
|
185 |
+
/**
|
186 |
+
* Return the page description.
|
187 |
+
*
|
188 |
+
* @since 8.0
|
189 |
+
*
|
190 |
+
*@return string description variable.
|
191 |
+
*/
|
192 |
+
public function get_page_description() {
|
193 |
+
return __( 'Compare Free versus Pro features', 'quick-featured-images' );
|
194 |
+
}
|
195 |
+
|
196 |
+
/**
|
197 |
+
* Return the page slug.
|
198 |
+
*
|
199 |
+
* @since 13.6.0
|
200 |
+
*
|
201 |
+
*@return string slug variable.
|
202 |
+
*/
|
203 |
+
public function get_page_slug() {
|
204 |
+
return $this->page_slug;
|
205 |
+
}
|
206 |
+
|
207 |
+
/**
|
208 |
+
* Return the required user capability.
|
209 |
+
*
|
210 |
+
* @since 13.6.0
|
211 |
+
*
|
212 |
+
*@return required user capability variable.
|
213 |
+
*/
|
214 |
+
public function get_required_user_cap() {
|
215 |
+
return $this->required_user_cap;
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* Register and enqueue admin-specific style sheet.
|
220 |
+
*
|
221 |
+
* @since 13.6.0
|
222 |
+
*
|
223 |
+
* @return null Return early if no settings page is registered.
|
224 |
+
*/
|
225 |
+
public function enqueue_admin_styles() {
|
226 |
+
|
227 |
+
if ( ! isset( $this->plugin_screen_hook_suffix ) ) {
|
228 |
+
return;
|
229 |
+
}
|
230 |
+
|
231 |
+
// request css only if this plugin was called
|
232 |
+
$screen = get_current_screen();
|
233 |
+
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
234 |
+
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.min.css', __FILE__ ), array( ), $this->plugin_version );
|
235 |
+
}
|
236 |
+
|
237 |
+
}
|
238 |
+
|
239 |
+
/**
|
240 |
+
* Register the administration menu for this plugin into the WordPress Dashboard menu.
|
241 |
+
*
|
242 |
+
* @since 13.6.0
|
243 |
+
*/
|
244 |
+
public function add_plugin_admin_menu() {
|
245 |
+
|
246 |
+
// get translated string of the menu label and page headline
|
247 |
+
$label = $this->get_page_headline();
|
248 |
+
|
249 |
+
// Add a comparison page for this plugin to the Settings menu.
|
250 |
+
$this->plugin_screen_hook_suffix = add_submenu_page(
|
251 |
+
$this->parent_page_slug, // parent_slug
|
252 |
+
sprintf( '%s: %s', $this->plugin_name, $label ), // page_title
|
253 |
+
$label, // menu_title
|
254 |
+
$this->required_user_cap, // capability to use the following function
|
255 |
+
$this->page_slug, // menu_slug
|
256 |
+
array( $this, 'main' ) // function to execute when loading this page
|
257 |
+
);
|
258 |
+
|
259 |
+
}
|
260 |
+
|
261 |
+
/**
|
262 |
+
* Add comparison action link to the plugins page.
|
263 |
+
*
|
264 |
+
* @since 13.6.0
|
265 |
+
*/
|
266 |
+
public function add_action_links( $links ) {
|
267 |
+
$url = sprintf( 'admin.php?page=%s', $this->page_slug );
|
268 |
+
return array_merge(
|
269 |
+
array(
|
270 |
+
'comparison' => sprintf( '<a href="%s">%s</a>', esc_url( admin_url( $url ) ), esc_html( $this->get_page_headline() ) )
|
271 |
+
),
|
272 |
+
$links
|
273 |
+
);
|
274 |
+
|
275 |
+
}
|
276 |
+
|
277 |
+
/**
|
278 |
+
*
|
279 |
+
* Render the header of the admin page
|
280 |
+
*
|
281 |
+
* @access private
|
282 |
+
* @since 13.6.0
|
283 |
+
*/
|
284 |
+
private function display_header() {
|
285 |
+
include_once( 'views/section_header.php' );
|
286 |
+
}
|
287 |
+
|
288 |
+
/**
|
289 |
+
*
|
290 |
+
* Render the footer of the admin page
|
291 |
+
*
|
292 |
+
* @access private
|
293 |
+
* @since 13.6.0
|
294 |
+
*/
|
295 |
+
private function display_footer() {
|
296 |
+
include_once( 'views/section_footer.php' );
|
297 |
+
}
|
298 |
+
|
299 |
+
}
|
admin/class-Quick_Featured_Images_Defaults.php
CHANGED
@@ -326,7 +326,7 @@ class Quick_Featured_Images_Defaults {
|
|
326 |
// request css only if this plugin was called
|
327 |
$screen = get_current_screen();
|
328 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
329 |
-
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.css', __FILE__ ), array( ), $this->plugin_version );
|
330 |
}
|
331 |
|
332 |
}
|
326 |
// request css only if this plugin was called
|
327 |
$screen = get_current_screen();
|
328 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
329 |
+
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.min.css', __FILE__ ), array( ), $this->plugin_version );
|
330 |
}
|
331 |
|
332 |
}
|
admin/class-Quick_Featured_Images_Settings.php
CHANGED
@@ -270,7 +270,7 @@ class Quick_Featured_Images_Settings {
|
|
270 |
// request css only if this plugin was called
|
271 |
$screen = get_current_screen();
|
272 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
273 |
-
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.css', __FILE__ ), array( ), $this->plugin_version );
|
274 |
}
|
275 |
|
276 |
}
|
270 |
// request css only if this plugin was called
|
271 |
$screen = get_current_screen();
|
272 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
273 |
+
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.min.css', __FILE__ ), array( ), $this->plugin_version );
|
274 |
}
|
275 |
|
276 |
}
|
admin/class-Quick_Featured_Images_Tools.php
CHANGED
@@ -1986,7 +1986,7 @@ class Quick_Featured_Images_Tools { // only for debugging: extends Quick_Feature
|
|
1986 |
// request css only if this plugin was called
|
1987 |
$screen = get_current_screen();
|
1988 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
1989 |
-
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.css', __FILE__ ), array(), $this->plugin_version );
|
1990 |
}
|
1991 |
|
1992 |
}
|
1986 |
// request css only if this plugin was called
|
1987 |
$screen = get_current_screen();
|
1988 |
if ( $this->plugin_screen_hook_suffix == $screen->id ) {
|
1989 |
+
wp_enqueue_style( $this->plugin_slug .'-admin-styles', plugins_url( 'assets/css/admin.min.css', __FILE__ ), array(), $this->plugin_version );
|
1990 |
}
|
1991 |
|
1992 |
}
|
admin/views/section_comparison.php
ADDED
@@ -0,0 +1,460 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( ! defined( 'WPINC' ) ) {
|
3 |
+
die;
|
4 |
+
}
|
5 |
+
|
6 |
+
/**
|
7 |
+
* Get the Icons
|
8 |
+
*/
|
9 |
+
$no_icon='<span class="dashicons dashicons-dismiss" style="color:#ea1515;"></span> ';
|
10 |
+
$yes_icon='<span class="dashicons dashicons-yes-alt" style="color:#18c01d;"></span> ';
|
11 |
+
global $wp_version;
|
12 |
+
if( version_compare( $wp_version, '5.2.0' ) < 0 )
|
13 |
+
{
|
14 |
+
$yes_icon='<img src="'.QFI_ROOT_URL.'assets/images/tick_icon_green.png" style="float:left;" /> ';
|
15 |
+
}
|
16 |
+
unset( $wp_version );
|
17 |
+
|
18 |
+
/**
|
19 |
+
* Array format
|
20 |
+
* First : Feature
|
21 |
+
* Second : Basic availability. Supports: Boolean, Array(Boolean and String values), String
|
22 |
+
* Pro : Pro availability. Supports: Boolean, Array(Boolean and String values), String
|
23 |
+
*/
|
24 |
+
$comparison_data=array(
|
25 |
+
|
26 |
+
array(
|
27 |
+
__('Actions in Bulk Edit', 'quick-featured-images')
|
28 |
+
),
|
29 |
+
array(
|
30 |
+
__('Sets the selected image as new featured image', 'quick-featured-images'),
|
31 |
+
true,
|
32 |
+
true,
|
33 |
+
),
|
34 |
+
array(
|
35 |
+
__('Sets multiple images randomly as featured images', 'quick-featured-images'),
|
36 |
+
true,
|
37 |
+
true,
|
38 |
+
),
|
39 |
+
array(
|
40 |
+
__('Replaces featured images by the selected image', 'quick-featured-images'),
|
41 |
+
true,
|
42 |
+
true,
|
43 |
+
),
|
44 |
+
array(
|
45 |
+
__('Removes the selected image as featured image', 'quick-featured-images'),
|
46 |
+
true,
|
47 |
+
true,
|
48 |
+
),
|
49 |
+
array(
|
50 |
+
__('Removes any image as featured image', 'quick-featured-images'),
|
51 |
+
true,
|
52 |
+
true,
|
53 |
+
),
|
54 |
+
array(
|
55 |
+
__('Remove all featured images without existing image files', 'quick-featured-images'),
|
56 |
+
true,
|
57 |
+
true,
|
58 |
+
),
|
59 |
+
array(
|
60 |
+
__('Removes database entries of featured images without existing image files', 'quick-featured-images'),
|
61 |
+
true,
|
62 |
+
true,
|
63 |
+
),
|
64 |
+
array(
|
65 |
+
__('Sets the first image as featured image', 'quick-featured-images'),
|
66 |
+
false,
|
67 |
+
true,
|
68 |
+
),
|
69 |
+
array(
|
70 |
+
__('Sets the external image as a featured image (needs Featured Image By URL or Featured Image From URL)', 'quick-featured-images'),
|
71 |
+
false,
|
72 |
+
true,
|
73 |
+
),
|
74 |
+
array(
|
75 |
+
__('Options in Bulk Edit', 'quick-featured-images')
|
76 |
+
),
|
77 |
+
array(
|
78 |
+
__('Overwrites featured images', 'quick-featured-images'),
|
79 |
+
true,
|
80 |
+
true,
|
81 |
+
),
|
82 |
+
array(
|
83 |
+
__('Considers only posts without featured image', 'quick-featured-images'),
|
84 |
+
true,
|
85 |
+
true,
|
86 |
+
),
|
87 |
+
array(
|
88 |
+
__('Removes the first embedded image from the post content after this image was set as featured image', 'quick-featured-images'),
|
89 |
+
false,
|
90 |
+
true,
|
91 |
+
),
|
92 |
+
array(
|
93 |
+
__('Sets the first post image (if available in the media library) as featured image', 'quick-featured-images'),
|
94 |
+
false,
|
95 |
+
true,
|
96 |
+
),
|
97 |
+
array(
|
98 |
+
__('Sets the first post image under current domain as featured image', 'quick-featured-images'),
|
99 |
+
false,
|
100 |
+
true,
|
101 |
+
),
|
102 |
+
array(
|
103 |
+
__('Sets the first external post image as featured image ', 'quick-featured-images'),
|
104 |
+
false,
|
105 |
+
true,
|
106 |
+
),
|
107 |
+
array(
|
108 |
+
__('Sets the first attached image of a post as featured image', 'quick-featured-images'),
|
109 |
+
false,
|
110 |
+
true,
|
111 |
+
),
|
112 |
+
array(
|
113 |
+
__('Sets the first image of a WordPress standard gallery as featured image', 'quick-featured-images'),
|
114 |
+
false,
|
115 |
+
true,
|
116 |
+
),
|
117 |
+
array(
|
118 |
+
__('Sets the thumbnail of the first embedded content (e.g. YouTube, Vimeo, Instagram) as featured image', 'quick-featured-images'),
|
119 |
+
false,
|
120 |
+
true,
|
121 |
+
),
|
122 |
+
array(
|
123 |
+
__('Sets the first image of a WordPress standard gallery as the featured image', 'quick-featured-images'),
|
124 |
+
false,
|
125 |
+
true,
|
126 |
+
),
|
127 |
+
array(
|
128 |
+
__('Sets the first image of a NextGen Gallery as featured image (if the NextGen plugin is activated)', 'quick-featured-images'),
|
129 |
+
false,
|
130 |
+
true,
|
131 |
+
),
|
132 |
+
array(
|
133 |
+
__('At multiple images: Uses each selected image only once', 'quick-featured-images'),
|
134 |
+
false,
|
135 |
+
true,
|
136 |
+
),
|
137 |
+
array(
|
138 |
+
__('At multiple images: Removes excess featured images', 'quick-featured-images'),
|
139 |
+
false,
|
140 |
+
true,
|
141 |
+
),
|
142 |
+
array(
|
143 |
+
__('Attaches images to posts after set as featured images successfully', 'quick-featured-images'),
|
144 |
+
false,
|
145 |
+
true,
|
146 |
+
),
|
147 |
+
array(
|
148 |
+
__('Detaches images and posts after featured images are removed successfully', 'quick-featured-images'),
|
149 |
+
false,
|
150 |
+
true,
|
151 |
+
),
|
152 |
+
array(
|
153 |
+
__('Filter in Bulk Edit', 'quick-featured-images')
|
154 |
+
),
|
155 |
+
array(
|
156 |
+
__('Post Type Filter', 'quick-featured-images'),
|
157 |
+
true,
|
158 |
+
true,
|
159 |
+
),
|
160 |
+
array(
|
161 |
+
__('Category Filter', 'quick-featured-images'),
|
162 |
+
true,
|
163 |
+
true,
|
164 |
+
),
|
165 |
+
array(
|
166 |
+
__('Tag Filter', 'quick-featured-images'),
|
167 |
+
true,
|
168 |
+
true,
|
169 |
+
),
|
170 |
+
array(
|
171 |
+
__('Post Format Filter', 'quick-featured-images'),
|
172 |
+
false,
|
173 |
+
true,
|
174 |
+
),
|
175 |
+
array(
|
176 |
+
__('Multimedia File Filter', 'quick-featured-images'),
|
177 |
+
false,
|
178 |
+
true,
|
179 |
+
),
|
180 |
+
array(
|
181 |
+
__('Post Status Filter', 'quick-featured-images'),
|
182 |
+
false,
|
183 |
+
true,
|
184 |
+
),
|
185 |
+
array(
|
186 |
+
__('Search Filter', 'quick-featured-images'),
|
187 |
+
false,
|
188 |
+
true,
|
189 |
+
),
|
190 |
+
array(
|
191 |
+
__('Time Filter', 'quick-featured-images'),
|
192 |
+
false,
|
193 |
+
true,
|
194 |
+
),
|
195 |
+
array(
|
196 |
+
__('Author Filter', 'quick-featured-images'),
|
197 |
+
false,
|
198 |
+
true,
|
199 |
+
),
|
200 |
+
array(
|
201 |
+
__('Custom Taxonomy Filter', 'quick-featured-images'),
|
202 |
+
false,
|
203 |
+
true,
|
204 |
+
),
|
205 |
+
array(
|
206 |
+
__('Featured Image Size Filter', 'quick-featured-images'),
|
207 |
+
false,
|
208 |
+
true,
|
209 |
+
),
|
210 |
+
array(
|
211 |
+
__('Parent Page Filter', 'quick-featured-images'),
|
212 |
+
false,
|
213 |
+
true,
|
214 |
+
),
|
215 |
+
array(
|
216 |
+
__('Supported Post Types in Bulk Edit', 'quick-featured-images')
|
217 |
+
),
|
218 |
+
array(
|
219 |
+
__('Posts', 'quick-featured-images'),
|
220 |
+
false,
|
221 |
+
true,
|
222 |
+
),
|
223 |
+
array(
|
224 |
+
__('Pages', 'quick-featured-images'),
|
225 |
+
false,
|
226 |
+
true,
|
227 |
+
),
|
228 |
+
array(
|
229 |
+
__('Custom Post Types', 'quick-featured-images'),
|
230 |
+
false,
|
231 |
+
true,
|
232 |
+
),
|
233 |
+
array(
|
234 |
+
__('Audio Files', 'quick-featured-images'),
|
235 |
+
false,
|
236 |
+
true,
|
237 |
+
),
|
238 |
+
array(
|
239 |
+
__('Video Files', 'quick-featured-images'),
|
240 |
+
false,
|
241 |
+
true,
|
242 |
+
),
|
243 |
+
array(
|
244 |
+
__('Presets in Bulk Edit', 'quick-featured-images')
|
245 |
+
),
|
246 |
+
array(
|
247 |
+
__('Stores all settings of a process as a preset to recall them for recurring tasks', 'quick-featured-images'),
|
248 |
+
false,
|
249 |
+
true,
|
250 |
+
),
|
251 |
+
array(
|
252 |
+
__('Default Images', 'quick-featured-images')
|
253 |
+
),
|
254 |
+
array(
|
255 |
+
__('Overwrites existing featured images', 'quick-featured-images'),
|
256 |
+
true,
|
257 |
+
true,
|
258 |
+
),
|
259 |
+
array(
|
260 |
+
__('Takes first content image as featured image in new posts if image was uploaded to the media library', 'quick-featured-images'),
|
261 |
+
true,
|
262 |
+
true,
|
263 |
+
),
|
264 |
+
array(
|
265 |
+
__('Takes first content image as featured image in new posts if image is on an external server', 'quick-featured-images'),
|
266 |
+
false,
|
267 |
+
true,
|
268 |
+
),
|
269 |
+
array(
|
270 |
+
__('Takes one of multiple images randomly as featured image in new posts', 'quick-featured-images'),
|
271 |
+
false,
|
272 |
+
true,
|
273 |
+
),
|
274 |
+
array(
|
275 |
+
__('Takes the thumbnail of the first embedded content (e.g. YouTube, Vimeo, Instagram) as featured image in new posts', 'quick-featured-images'),
|
276 |
+
false,
|
277 |
+
true,
|
278 |
+
),
|
279 |
+
array(
|
280 |
+
__('Takes the external image as a featured image (needs Featured Image By URL or Featured Image From URL)', 'quick-featured-images'),
|
281 |
+
false,
|
282 |
+
true,
|
283 |
+
),
|
284 |
+
array(
|
285 |
+
__('Displays featured images randomly at each page load', 'quick-featured-images'),
|
286 |
+
false,
|
287 |
+
true,
|
288 |
+
),
|
289 |
+
array(
|
290 |
+
__('Removes the first content image automatically after the featured image was set successfully', 'quick-featured-images'),
|
291 |
+
false,
|
292 |
+
true,
|
293 |
+
),
|
294 |
+
array(
|
295 |
+
__('Supports WooCommerce products', 'quick-featured-images'),
|
296 |
+
false,
|
297 |
+
true,
|
298 |
+
),
|
299 |
+
array(
|
300 |
+
__('Exports and imports all rules', 'quick-featured-images'),
|
301 |
+
false,
|
302 |
+
true,
|
303 |
+
),
|
304 |
+
array(
|
305 |
+
__('Imports rules from the free version "Quick Featured Images"', 'quick-featured-images'),
|
306 |
+
false,
|
307 |
+
true,
|
308 |
+
),
|
309 |
+
array(
|
310 |
+
__('Supported Taxonomies in Default Images', 'quick-featured-images')
|
311 |
+
),
|
312 |
+
array(
|
313 |
+
__('Matches a standard WordPress post type (post or page)', 'quick-featured-images'),
|
314 |
+
true,
|
315 |
+
true,
|
316 |
+
),
|
317 |
+
array(
|
318 |
+
__('Matches a selected custom post type', 'quick-featured-images'),
|
319 |
+
true,
|
320 |
+
true,
|
321 |
+
),
|
322 |
+
array(
|
323 |
+
__('Matches a selected category', 'quick-featured-images'),
|
324 |
+
true,
|
325 |
+
true,
|
326 |
+
),
|
327 |
+
array(
|
328 |
+
__('Matches a selected tag', 'quick-featured-images'),
|
329 |
+
true,
|
330 |
+
true,
|
331 |
+
),
|
332 |
+
array(
|
333 |
+
__('Matches a selected author', 'quick-featured-images'),
|
334 |
+
true,
|
335 |
+
true,
|
336 |
+
),
|
337 |
+
array(
|
338 |
+
__('Matches a selected post format', 'quick-featured-images'),
|
339 |
+
false,
|
340 |
+
true,
|
341 |
+
),
|
342 |
+
array(
|
343 |
+
__('Matches a search term in post title', 'quick-featured-images'),
|
344 |
+
false,
|
345 |
+
true,
|
346 |
+
),
|
347 |
+
array(
|
348 |
+
__('Image Columns', 'quick-featured-images')
|
349 |
+
),
|
350 |
+
array(
|
351 |
+
__('Shows additional column of featured images for posts, pages and custom post types', 'quick-featured-images'),
|
352 |
+
true,
|
353 |
+
true,
|
354 |
+
),
|
355 |
+
array(
|
356 |
+
__('Provides action links to set, change, remove and edit the post’s image if the user is allowed to do it', 'quick-featured-images'),
|
357 |
+
true,
|
358 |
+
true,
|
359 |
+
),
|
360 |
+
array(
|
361 |
+
__('Shows assigned external featured images in the image column (needs Featured Image By URL or Featured Image From URL)', 'quick-featured-images'),
|
362 |
+
false,
|
363 |
+
true,
|
364 |
+
),
|
365 |
+
array(
|
366 |
+
__('Settings', 'quick-featured-images')
|
367 |
+
),
|
368 |
+
array(
|
369 |
+
__('Shows or hides the plugin based on the selected user role ‘Administrator’ or ‘Editor’', 'quick-featured-images'),
|
370 |
+
true,
|
371 |
+
true,
|
372 |
+
),
|
373 |
+
array(
|
374 |
+
__('Supported media file formats', 'quick-featured-images')
|
375 |
+
),
|
376 |
+
array(
|
377 |
+
__('Supported image formats: jpg, jpeg, jpe, gif, png', 'quick-featured-images'),
|
378 |
+
true,
|
379 |
+
true,
|
380 |
+
),
|
381 |
+
array(
|
382 |
+
__('Supported audio formats: mp3, ogg, wma, m4a, wav', 'quick-featured-images'),
|
383 |
+
false,
|
384 |
+
true,
|
385 |
+
),
|
386 |
+
array(
|
387 |
+
__('Supported video formats: mp4, m4v, webm, ogv, wmv, flv', 'quick-featured-images'),
|
388 |
+
false,
|
389 |
+
true,
|
390 |
+
),
|
391 |
+
array(
|
392 |
+
__('In General', 'quick-featured-images')
|
393 |
+
),
|
394 |
+
array(
|
395 |
+
__('Premium support', 'quick-featured-images'),
|
396 |
+
false,
|
397 |
+
true,
|
398 |
+
)
|
399 |
+
);
|
400 |
+
|
401 |
+
function qfi_free_vs_pro_column_vl( $vl, $yes_icon, $no_icon )
|
402 |
+
{
|
403 |
+
if( is_array( $vl ) )
|
404 |
+
{
|
405 |
+
foreach ( $vl as $value )
|
406 |
+
{
|
407 |
+
if( is_bool( $value ) )
|
408 |
+
{
|
409 |
+
echo ( $value ? $yes_icon : $no_icon );
|
410 |
+
}else {
|
411 |
+
//string only
|
412 |
+
echo $value;
|
413 |
+
}
|
414 |
+
}
|
415 |
+
} else {
|
416 |
+
if( is_bool( $vl ) )
|
417 |
+
{
|
418 |
+
echo ($vl ? $yes_icon : $no_icon);
|
419 |
+
} else {
|
420 |
+
//string only
|
421 |
+
echo $vl;
|
422 |
+
}
|
423 |
+
}
|
424 |
+
}
|
425 |
+
?>
|
426 |
+
<div class="qfi_wrapper">
|
427 |
+
<div class="qfi_main">
|
428 |
+
<table class="qfi_freevs_pro">
|
429 |
+
<tr>
|
430 |
+
<td><?php _e('FEATURES', 'quick-featured-images'); ?></td>
|
431 |
+
<td><?php _e('FREE', 'quick-featured-images'); ?></td>
|
432 |
+
<td><?php _e('PREMIUM', 'quick-featured-images'); ?></td>
|
433 |
+
</tr>
|
434 |
+
<?php
|
435 |
+
foreach ($comparison_data as $val_arr)
|
436 |
+
{
|
437 |
+
?>
|
438 |
+
<tr>
|
439 |
+
<?php if( 1 == count( $val_arr ) ): ?>
|
440 |
+
<td colspan="3" class="headline"><?php echo $val_arr[0];?></td>
|
441 |
+
<?php else: ?>
|
442 |
+
<td><?php echo $val_arr[0];?></td>
|
443 |
+
<td>
|
444 |
+
<?php
|
445 |
+
qfi_free_vs_pro_column_vl( $val_arr[1], $yes_icon, $no_icon );
|
446 |
+
?>
|
447 |
+
</td>
|
448 |
+
<td>
|
449 |
+
<?php
|
450 |
+
qfi_free_vs_pro_column_vl( $val_arr[2], $yes_icon, $no_icon );
|
451 |
+
?>
|
452 |
+
</td>
|
453 |
+
<?php endif; ?>
|
454 |
+
</tr>
|
455 |
+
<?php
|
456 |
+
}
|
457 |
+
?>
|
458 |
+
</table>
|
459 |
+
</div>
|
460 |
+
</div>
|
admin/views/section_footer.php
CHANGED
@@ -8,6 +8,19 @@
|
|
8 |
* @link https://www.kybernetik-services.com
|
9 |
* @copyright 2013 Kybernetik Services
|
10 |
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
// check if file is called in an object context
|
12 |
// else use non-object context
|
13 |
if ( isset($this->plugin_slug ) ) {
|
@@ -44,21 +57,51 @@ if ( ! in_array( $paypal_locale, array( 'en_US', 'en_AU', 'es_ES', 'fr_FR', 'de_
|
|
44 |
} // switch()
|
45 |
} // if ('ja')
|
46 |
} // if !in_array()
|
47 |
-
|
48 |
?>
|
49 |
</div><!-- .qfi_content -->
|
50 |
</div><!-- #qfi_main -->
|
51 |
<div id="qfi_footer">
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
<dt><?php esc_html_e( 'The plugin is for free. But the plugin author would be delighted to your small contribution.', 'quick-featured-images' ); ?></dt><dd><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=NSEQX73VHXKS8" target="_blank"><img src="https://www.paypalobjects.com/<?php echo $paypal_locale; ?>/i/btn/btn_donateCC_LG.gif" alt="(<?php esc_html_e( 'Donation Button', $text_domain ); ?>)" id="paypal_button" /><br /><?php esc_html_e( 'Donate with PayPal', 'quick-featured-images' ); ?></a><img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1" /></dd>
|
57 |
-
|
58 |
-
|
59 |
<dt><?php esc_html_e( 'Get the Pro version', 'quick-featured-images' ); ?> <a href="https://www.quickfeaturedimages.com/?utm_source=wordpress_org&utm_medium=plugin&utm_campaign=quick-featured-images&utm_content=go_pro" target="_blank">Quick Featured Images Pro</a></dd>
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
</div><!-- #qfi_footer -->
|
63 |
</div><!-- .qfi_wrapper -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
</div><!-- .wrap -->
|
8 |
* @link https://www.kybernetik-services.com
|
9 |
* @copyright 2013 Kybernetik Services
|
10 |
*/
|
11 |
+
|
12 |
+
$ks_logo = '<img src="' . QFI_ROOT_URL . 'admin/assets/images/ks_logo.png" style="width:150px" />';
|
13 |
+
$tick=QFI_ROOT_URL.'admin/assets/images/tick.svg';
|
14 |
+
$pro_upgarde_features=array(
|
15 |
+
__('Supports custom post type.', 'quick-featured-images'),
|
16 |
+
__('Supports WooCommerce products.', 'quick-featured-images'),
|
17 |
+
__('Sets the first image as featured image.', 'quick-featured-images'),
|
18 |
+
__('Takes the thumbnail of the first embedded content (e.g. YouTube, Vimeo, Instagram) as featured image in new posts.','quick-featured-images'),
|
19 |
+
__('Removes the first content image automatically after the featured image was set successfully.', 'quick-featured-images'),
|
20 |
+
__('Supports audio and video.', 'quick-featured-images'),
|
21 |
+
);
|
22 |
+
$screen = get_current_screen();
|
23 |
+
|
24 |
// check if file is called in an object context
|
25 |
// else use non-object context
|
26 |
if ( isset($this->plugin_slug ) ) {
|
57 |
} // switch()
|
58 |
} // if ('ja')
|
59 |
} // if !in_array()
|
|
|
60 |
?>
|
61 |
</div><!-- .qfi_content -->
|
62 |
</div><!-- #qfi_main -->
|
63 |
<div id="qfi_footer">
|
64 |
+
<div class="qfi_content">
|
65 |
+
<h2><?php esc_html_e( 'Credits and information', 'quick-featured-images' ); ?></h2>
|
66 |
+
<dl>
|
67 |
+
<dt><?php esc_html_e( 'Do you like the plugin?', 'quick-featured-images' ); ?></dt><dd><a href="http://wordpress.org/support/view/plugin-reviews/quick-featured-images" target="_blank"><?php esc_html_e( 'Please rate it at wordpress.org!', 'quick-featured-images' ); ?></a></dd>
|
68 |
<dt><?php esc_html_e( 'The plugin is for free. But the plugin author would be delighted to your small contribution.', 'quick-featured-images' ); ?></dt><dd><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=NSEQX73VHXKS8" target="_blank"><img src="https://www.paypalobjects.com/<?php echo $paypal_locale; ?>/i/btn/btn_donateCC_LG.gif" alt="(<?php esc_html_e( 'Donation Button', $text_domain ); ?>)" id="paypal_button" /><br /><?php esc_html_e( 'Donate with PayPal', 'quick-featured-images' ); ?></a><img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1" /></dd>
|
69 |
+
<dt><?php esc_html_e( 'Do you need support or have an idea for the plugin?', 'quick-featured-images' ); ?></dt><dd><a href="http://wordpress.org/support/plugin/quick-featured-images" target="_blank"><?php esc_html_e( 'Post your questions and ideas about Quick Featured Images in the forum at wordpress.org!', 'quick-featured-images' ); ?></a></dd>
|
70 |
+
<dt><?php esc_html_e( 'Let the thumbnails appear in the widget of the most recent posts with this fast plugin', 'quick-featured-images' ); ?></dt><dd><a href="http://wordpress.org/plugins/recent-posts-widget-with-thumbnails/" target="_blank"><?php printf( esc_html__( 'Download plugin %s at %s!', 'quick-featured-images' ), '<strong>Recent Posts Widget With Thumbnails</strong>', 'wordpress.org' ); ?></a></dd>
|
71 |
<dt><?php esc_html_e( 'Get the Pro version', 'quick-featured-images' ); ?> <a href="https://www.quickfeaturedimages.com/?utm_source=wordpress_org&utm_medium=plugin&utm_campaign=quick-featured-images&utm_content=go_pro" target="_blank">Quick Featured Images Pro</a></dd>
|
72 |
+
</dl>
|
73 |
+
<div class="ks_branding" style="float:right; text-align:end;">
|
74 |
+
<div class="ks_branding_label" style="width:100%;padding-top:10px;font-size:11px;font-weight:600;">
|
75 |
+
<?php _e('Developed by', 'quick-featured-images'); ?>
|
76 |
+
</div>
|
77 |
+
<div style="width: 100%; padding-bottom: 10px;"><?php echo $ks_logo; ?></div>
|
78 |
+
</div>
|
79 |
+
</div><!-- .qfi_content -->
|
80 |
</div><!-- #qfi_footer -->
|
81 |
</div><!-- .qfi_wrapper -->
|
82 |
+
<?php if( strstr( $screen->id, 'comparison' ) || strstr( $screen->id, 'overview' ) ) : ?>
|
83 |
+
<div class="upgrade_to_pro_bottom_banner">
|
84 |
+
<div class="upgrade_to_pro_bottom_banner_hd">
|
85 |
+
<?php _e('Upgrade to Quick Featured Images Pro to get hold of advanced features.', 'quick-featured-images');?>
|
86 |
+
</div>
|
87 |
+
<a class="upgrade_to_pro_bottom_banner_btn" href="https://www.kybernetik-services.com/shop/wordpress/plugin/quick-featured-images-pro/?utm_source=wordpress_org&utm_medium=pro_vs_free&utm_campaign=section-footer&utm_content=<?php echo QFI_VERSION;?>" target="_blank">
|
88 |
+
<?php _e('UPGRADE TO PRO', 'quick-featured-images'); ?>
|
89 |
+
</a>
|
90 |
+
<div class="upgrade_to_pro_bottom_banner_feature_list_main">
|
91 |
+
<?php
|
92 |
+
foreach($pro_upgarde_features as $pro_upgarde_feature)
|
93 |
+
{
|
94 |
+
?>
|
95 |
+
<div class="upgrade_to_pro_bottom_banner_feature_list">
|
96 |
+
<?php echo $pro_upgarde_feature;?>
|
97 |
+
</div>
|
98 |
+
<?php
|
99 |
+
}
|
100 |
+
?>
|
101 |
+
</div>
|
102 |
+
</div>
|
103 |
+
<style type="text/css">
|
104 |
+
.upgrade_to_pro_bottom_banner_feature_list{ background:url(<?php echo esc_url($tick); ?>) no-repeat left 5px; }
|
105 |
+
</style>
|
106 |
+
<?php endif; ?>
|
107 |
</div><!-- .wrap -->
|
quick-featured-images.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
* Plugin Name: Quick Featured Images
|
11 |
* Plugin URI: http://wordpress.org/plugins/quick-featured-images
|
12 |
* Description: Your time-saving Swiss Army Knife for featured images: Set, replace and delete them in bulk, in posts lists and set default images for future posts.
|
13 |
-
* Version: 13.
|
14 |
* Requires at least: 3.8
|
15 |
* Requires PHP: 5.2
|
16 |
* Author: Kybernetik Services
|
@@ -27,6 +27,8 @@ if ( ! defined( 'WPINC' ) ) {
|
|
27 |
}
|
28 |
|
29 |
define( 'QFI_ROOT', plugin_dir_path( __FILE__ ) );
|
|
|
|
|
30 |
|
31 |
function qfi_autoloader( $class_name )
|
32 |
{
|
@@ -71,14 +73,16 @@ add_action( 'plugins_loaded', array( 'Quick_Featured_Images_Defaults', 'get_inst
|
|
71 |
if ( is_admin() ) {
|
72 |
/*
|
73 |
* since 7.0: Make object instance of options page class
|
74 |
-
*
|
75 |
*/
|
76 |
add_action( 'plugins_loaded', array( 'Quick_Featured_Images_Settings', 'get_instance' ) );
|
77 |
|
78 |
/*
|
79 |
* since 7.0: Make object instance of column functions class
|
80 |
-
*
|
81 |
*/
|
82 |
add_action( 'plugins_loaded', array( 'Quick_Featured_Images_Columns', 'get_instance' ) );
|
83 |
|
|
|
|
|
|
|
|
|
84 |
}
|
10 |
* Plugin Name: Quick Featured Images
|
11 |
* Plugin URI: http://wordpress.org/plugins/quick-featured-images
|
12 |
* Description: Your time-saving Swiss Army Knife for featured images: Set, replace and delete them in bulk, in posts lists and set default images for future posts.
|
13 |
+
* Version: 13.6.0
|
14 |
* Requires at least: 3.8
|
15 |
* Requires PHP: 5.2
|
16 |
* Author: Kybernetik Services
|
27 |
}
|
28 |
|
29 |
define( 'QFI_ROOT', plugin_dir_path( __FILE__ ) );
|
30 |
+
define( 'QFI_ROOT_URL', plugin_dir_url( __FILE__ ) );
|
31 |
+
const QFI_VERSION = '13.6.0';
|
32 |
|
33 |
function qfi_autoloader( $class_name )
|
34 |
{
|
73 |
if ( is_admin() ) {
|
74 |
/*
|
75 |
* since 7.0: Make object instance of options page class
|
|
|
76 |
*/
|
77 |
add_action( 'plugins_loaded', array( 'Quick_Featured_Images_Settings', 'get_instance' ) );
|
78 |
|
79 |
/*
|
80 |
* since 7.0: Make object instance of column functions class
|
|
|
81 |
*/
|
82 |
add_action( 'plugins_loaded', array( 'Quick_Featured_Images_Columns', 'get_instance' ) );
|
83 |
|
84 |
+
/*
|
85 |
+
* since 13.6.0: Make object instance of comparison functions class
|
86 |
+
*/
|
87 |
+
add_action( 'plugins_loaded', array( 'Quick_Featured_Images_Comparison', 'get_instance' ) );
|
88 |
}
|