Version Description
- 2021/Mar/02 =
- FIX: Update responsive slides to improve jQuery compatability
- FIX: Updates uasort to be PHP8 compatible
- FIX: Fixes a typo in the export callback
Download this release
Release Info
Developer | metaslider |
Plugin | MetaSlider |
Version | 3.20.3 |
Comparing to | |
See all releases |
Code changes from version 3.20.2 to 3.20.3
- admin/routes/api.php +1 -1
- assets/sliders/responsiveslides/README.md +106 -0
- assets/sliders/responsiveslides/responsiveslides.js +391 -0
- assets/sliders/responsiveslides/responsiveslides.min.js +8 -8
- ml-slider.php +7 -4
- readme.txt +170 -62
- seasonal-discounts.json +9 -9
admin/routes/api.php
CHANGED
@@ -1001,7 +1001,7 @@ if (class_exists('WP_REST_Controller')) :
|
|
1001 |
)));
|
1002 |
register_rest_route($this->namespace, '/slideshow/export', array(array(
|
1003 |
'methods' => 'GET',
|
1004 |
-
'
|
1005 |
'permission_callback' => array($this->api, 'can_access')
|
1006 |
)));
|
1007 |
register_rest_route($this->namespace, '/slideshow/import', array(array(
|
1001 |
)));
|
1002 |
register_rest_route($this->namespace, '/slideshow/export', array(array(
|
1003 |
'methods' => 'GET',
|
1004 |
+
'callback' => array($this->api, 'export_slideshows'),
|
1005 |
'permission_callback' => array($this->api, 'can_access')
|
1006 |
)));
|
1007 |
register_rest_route($this->namespace, '/slideshow/import', array(array(
|
assets/sliders/responsiveslides/README.md
ADDED
@@ -0,0 +1,106 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# ResponsiveSlides.js v1.55
|
2 |
+
### Simple & lightweight responsive slider plugin (in 1kb)
|
3 |
+
|
4 |
+
|
5 |
+
[ResponsiveSlides.js](http://responsiveslides.com/) is a tiny jQuery plugin that creates a responsive slider using elements inside a container. It has been used on sites like [Microsoft's Build 2012](http://www.buildwindows.com/launch) and [Gridset App](https://gridsetapp.com). ResponsiveSlides.js works with wide range of browsers including all IE versions from IE6 and up. It also adds CSS max-width support for IE6 and other browsers that don't natively support it. Only dependency is [jQuery](http://jquery.com/) (1.6 and up supported, tested up to 1.8.3) and that all the images are the same size.
|
6 |
+
|
7 |
+
Biggest difference to other responsive slider plugins is the file size (1.4kb minified and gzipped) + that this one doesn't try to do everything. ResponsiveSlides.js has basically only two different modes: Either it just automatically fades the images, or operates as a responsive image container with pagination and/or navigation to fade between slides.
|
8 |
+
|
9 |
+
#### Features:
|
10 |
+
* Fully responsive
|
11 |
+
* 1kb minified and gzipped
|
12 |
+
* CSS3 transitions with JavaScript fallback
|
13 |
+
* Simple markup using unordered list
|
14 |
+
* Settings for transition and timeout durations
|
15 |
+
* Multiple slideshows supported
|
16 |
+
* Automatic and manual fade
|
17 |
+
* Works in all major desktop and mobile browsers
|
18 |
+
* Captions and other html-elements supported inside slides
|
19 |
+
* Separate pagination and next/prev controls
|
20 |
+
* Possibility to choose where the controls append to
|
21 |
+
* Possibility to randomize the order of the slides
|
22 |
+
* Possibility to use custom markup for pagination
|
23 |
+
* Can be paused while hovering slideshow and/or controls
|
24 |
+
* Images can be wrapped inside links
|
25 |
+
* Optional 'before' and 'after' callbacks
|
26 |
+
|
27 |
+
|
28 |
+
|
29 |
+
Usage Instructions and demo
|
30 |
+
======
|
31 |
+
|
32 |
+
For instructions and demo go to [http://responsiveslides.com/](http://responsiveslides.com/), or [download this repository as a zip file](https://github.com/viljamis/ResponsiveSlides.js/zipball/master) and and open "index.html" from the "example" folder.
|
33 |
+
|
34 |
+
* View [additional usage examples online](http://responsiveslides.com/themes/themes.html).
|
35 |
+
* View [a demo with captions](http://responsiveslides.com/with-captions/themes.html).
|
36 |
+
|
37 |
+
Currently jQuery 1.6 and up is supported.
|
38 |
+
|
39 |
+
|
40 |
+
|
41 |
+
License
|
42 |
+
======
|
43 |
+
|
44 |
+
Licensed under the MIT license.
|
45 |
+
|
46 |
+
Copyright (c) 2011-2012 Viljami Salminen, http://viljamis.com/
|
47 |
+
|
48 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
49 |
+
|
50 |
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
51 |
+
|
52 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
53 |
+
|
54 |
+
|
55 |
+
|
56 |
+
Changelog
|
57 |
+
======
|
58 |
+
|
59 |
+
|
60 |
+
v1.55 (2016-08-05) - Adds jQuery 3.0 compatibility (thanks to [@Requios](https://github.com/Requios)!).
|
61 |
+
|
62 |
+
v1.54 (2013-04-26) - Fixes few bugs with the before and after callbacks.
|
63 |
+
|
64 |
+
v1.53 (2013-01-14) - Minor speed optimization (thanks [@bazineta](https://github.com/bazineta)!).
|
65 |
+
|
66 |
+
v1.52 (2013-01-07) - Adds option called "manualControls" which allows to write custom markup for pager navigation (thanks to [@andyadams](https://github.com/andyadams)). "controls" option is renamed to "navContainer". Default speed of the transition is now to 500ms. Adds also webkit-backface-visibility: hidden; style for the slides to prevent some HD acceleration issues on mobile WebKit browsers.
|
67 |
+
|
68 |
+
v1.51 (2012-12-15) - Fixes a bug where pictures would not display if next button was clicked too quickly 10 times.
|
69 |
+
|
70 |
+
v1.5 (2012-12-14) - Adds CSS3 transition support with automatic jQuery fallback.
|
71 |
+
|
72 |
+
v1.32 (2012-05-09) - Fixes a bug which caused the slideshow to break in Chrome when changing between active and inactive browser tabs.
|
73 |
+
|
74 |
+
v1.31 (2012-05-02) - Easier to use callbacks (+ optional "active" class for the next/prev buttons when animating slides. If you need this functionality, open the unminified version and search for "Adds active class during slide animation" and remove comments around it).
|
75 |
+
|
76 |
+
v1.3 (2012-04-26) - Three new options: "random", "pause", "pauseControls" + small bug fixes.
|
77 |
+
|
78 |
+
v1.25 (2012-04-19) - No more flashing of unstyled slideshow before JS has loaded. Adds also better support for cases when JavaScript isn't available.
|
79 |
+
|
80 |
+
v1.24 (2012-04-12) - Changes the way slideshow works if there's only one slide. Now all classes and max-width for the container are added, but we don't show the next and prev buttons anymore as they don't make much sense in that case. This version also fixes a bug which made the 'previous' button always go to the next slide.
|
81 |
+
|
82 |
+
v1.23 (2012-03-31) - Adds new option called "controls", which allows to choose where the controls should be appended to. Includes also code optimization, bug fixes, better option names and better jQuery support (jQuery 1.4 and up is now supported).
|
83 |
+
|
84 |
+
v1.22 (2012-03-27) - Adds callback events which are similar as in [@Wilto](https://github.com/Wilto)'s [Dynamic Carousel](https://github.com/Wilto/Dynamic-Carousel/). The possibility to change the 'namespace' is also back + next/prev buttons have now classes which make more sense.
|
85 |
+
|
86 |
+
v1.21 (2012-03-23) - Added two new options: 'nextText' and 'prevText'.
|
87 |
+
|
88 |
+
v1.20 (2012-03-21) - New option called 'nav', which enables next and previous buttons. Can be used with 'pagination' and 'auto' options. Adds also new [themes folder](http://responsiveslides.com/themes/themes.html) with three different ways to use the new next and previous buttons.
|
89 |
+
|
90 |
+
v1.10 (2012-03-12) - Refactoring, New markup style, CSS is now separated from the plugin, you can have links around images and other elements inside slides (not just images, but also captions etc.) + New option called "pagination", which enables to choose both "pagination" and "auto" at the same time. Shout outs for the help to [@bgutschke](https://github.com/bgutschke)
|
91 |
+
|
92 |
+
v1.05 (2012-03-05) - No more need to change the namespace if you have more than one slideshow on the same page.
|
93 |
+
|
94 |
+
v1.04 (2011-12-19) - Fixes problems when ResponsiveSlides.js is used with other plugins
|
95 |
+
|
96 |
+
v1.03 (2011-12-12) - Code refactoring, smaller size, better performance
|
97 |
+
|
98 |
+
v1.01 (2011-12-11) - Better usage of styles and the namespace
|
99 |
+
|
100 |
+
v1.00 (2011-12-04) - Release
|
101 |
+
|
102 |
+
|
103 |
+
Want to do a pull request?
|
104 |
+
======
|
105 |
+
|
106 |
+
Great! New ideas are more than welcome, but please check the [Pull Request Guidelines](https://github.com/viljamis/ResponsiveSlides.js/wiki/Pull-Request-Guidelines) first before doing so.
|
assets/sliders/responsiveslides/responsiveslides.js
ADDED
@@ -0,0 +1,391 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*! ResponsiveSlides.js v1.55
|
2 |
+
* http://responsiveslides.com
|
3 |
+
* http://viljamis.com
|
4 |
+
*
|
5 |
+
* Copyright (c) 2011-2012 @viljamis
|
6 |
+
* Available under the MIT license
|
7 |
+
*/
|
8 |
+
|
9 |
+
/*jslint browser: true, sloppy: true, vars: true, plusplus: true, indent: 2 */
|
10 |
+
|
11 |
+
(function ($, window, i) {
|
12 |
+
$.fn.responsiveSlides = function (options) {
|
13 |
+
|
14 |
+
// Default settings
|
15 |
+
var settings = $.extend({
|
16 |
+
"auto": true, // Boolean: Animate automatically, true or false
|
17 |
+
"speed": 500, // Integer: Speed of the transition, in milliseconds
|
18 |
+
"timeout": 4000, // Integer: Time between slide transitions, in milliseconds
|
19 |
+
"pager": false, // Boolean: Show pager, true or false
|
20 |
+
"nav": false, // Boolean: Show navigation, true or false
|
21 |
+
"random": false, // Boolean: Randomize the order of the slides, true or false
|
22 |
+
"pause": false, // Boolean: Pause on hover, true or false
|
23 |
+
"pauseControls": true, // Boolean: Pause when hovering controls, true or false
|
24 |
+
"prevText": "Previous", // String: Text for the "previous" button
|
25 |
+
"nextText": "Next", // String: Text for the "next" button
|
26 |
+
"maxwidth": "", // Integer: Max-width of the slideshow, in pixels
|
27 |
+
"navContainer": "", // Selector: Where auto generated controls should be appended to, default is after the <ul>
|
28 |
+
"manualControls": "", // Selector: Declare custom pager navigation
|
29 |
+
"namespace": "rslides", // String: change the default namespace used
|
30 |
+
"before": $.noop, // Function: Before callback
|
31 |
+
"after": $.noop // Function: After callback
|
32 |
+
}, options);
|
33 |
+
|
34 |
+
return this.each(function () {
|
35 |
+
|
36 |
+
// Index for namespacing
|
37 |
+
i++;
|
38 |
+
|
39 |
+
var $this = $(this),
|
40 |
+
|
41 |
+
// Local variables
|
42 |
+
vendor,
|
43 |
+
selectTab,
|
44 |
+
startCycle,
|
45 |
+
restartCycle,
|
46 |
+
rotate,
|
47 |
+
$tabs,
|
48 |
+
|
49 |
+
// Helpers
|
50 |
+
index = 0,
|
51 |
+
$slide = $this.children(),
|
52 |
+
length = $slide.length,
|
53 |
+
fadeTime = parseFloat(settings.speed),
|
54 |
+
waitTime = parseFloat(settings.timeout),
|
55 |
+
maxw = parseFloat(settings.maxwidth),
|
56 |
+
|
57 |
+
// Namespacing
|
58 |
+
namespace = settings.namespace,
|
59 |
+
namespaceIdx = namespace + i,
|
60 |
+
|
61 |
+
// Classes
|
62 |
+
navClass = namespace + "_nav " + namespaceIdx + "_nav",
|
63 |
+
activeClass = namespace + "_here",
|
64 |
+
visibleClass = namespaceIdx + "_on",
|
65 |
+
slideClassPrefix = namespaceIdx + "_s",
|
66 |
+
|
67 |
+
// Pager
|
68 |
+
$pager = $("<ul class='" + namespace + "_tabs " + namespaceIdx + "_tabs' />"),
|
69 |
+
|
70 |
+
// Styles for visible and hidden slides
|
71 |
+
visible = {"float": "left", "position": "relative", "opacity": 1, "zIndex": 2},
|
72 |
+
hidden = {"float": "none", "position": "absolute", "opacity": 0, "zIndex": 1},
|
73 |
+
|
74 |
+
// Detect transition support
|
75 |
+
supportsTransitions = (function () {
|
76 |
+
var docBody = document.body || document.documentElement;
|
77 |
+
var styles = docBody.style;
|
78 |
+
var prop = "transition";
|
79 |
+
if (typeof styles[prop] === "string") {
|
80 |
+
return true;
|
81 |
+
}
|
82 |
+
// Tests for vendor specific prop
|
83 |
+
vendor = ["Moz", "Webkit", "Khtml", "O", "ms"];
|
84 |
+
prop = prop.charAt(0).toUpperCase() + prop.substr(1);
|
85 |
+
var i;
|
86 |
+
for (i = 0; i < vendor.length; i++) {
|
87 |
+
if (typeof styles[vendor[i] + prop] === "string") {
|
88 |
+
return true;
|
89 |
+
}
|
90 |
+
}
|
91 |
+
return false;
|
92 |
+
})(),
|
93 |
+
|
94 |
+
// Fading animation
|
95 |
+
slideTo = function (idx) {
|
96 |
+
settings.before(idx);
|
97 |
+
// If CSS3 transitions are supported
|
98 |
+
if (supportsTransitions) {
|
99 |
+
$slide
|
100 |
+
.removeClass(visibleClass)
|
101 |
+
.css(hidden)
|
102 |
+
.eq(idx)
|
103 |
+
.addClass(visibleClass)
|
104 |
+
.css(visible);
|
105 |
+
index = idx;
|
106 |
+
setTimeout(function () {
|
107 |
+
settings.after(idx);
|
108 |
+
}, fadeTime);
|
109 |
+
// If not, use jQuery fallback
|
110 |
+
} else {
|
111 |
+
$slide
|
112 |
+
.stop()
|
113 |
+
.fadeOut(fadeTime, function () {
|
114 |
+
$(this)
|
115 |
+
.removeClass(visibleClass)
|
116 |
+
.css(hidden)
|
117 |
+
.css("opacity", 1);
|
118 |
+
})
|
119 |
+
.eq(idx)
|
120 |
+
.fadeIn(fadeTime, function () {
|
121 |
+
$(this)
|
122 |
+
.addClass(visibleClass)
|
123 |
+
.css(visible);
|
124 |
+
settings.after(idx);
|
125 |
+
index = idx;
|
126 |
+
});
|
127 |
+
}
|
128 |
+
};
|
129 |
+
|
130 |
+
// Random order
|
131 |
+
if (settings.random) {
|
132 |
+
$slide.sort(function () {
|
133 |
+
return (Math.round(Math.random()) - 0.5);
|
134 |
+
});
|
135 |
+
$this
|
136 |
+
.empty()
|
137 |
+
.append($slide);
|
138 |
+
}
|
139 |
+
|
140 |
+
// Add ID's to each slide
|
141 |
+
$slide.each(function (i) {
|
142 |
+
this.id = slideClassPrefix + i;
|
143 |
+
});
|
144 |
+
|
145 |
+
// Add max-width and classes
|
146 |
+
$this.addClass(namespace + " " + namespaceIdx);
|
147 |
+
if (options && options.maxwidth) {
|
148 |
+
$this.css("max-width", maxw);
|
149 |
+
}
|
150 |
+
|
151 |
+
// Hide all slides, then show first one
|
152 |
+
$slide
|
153 |
+
.hide()
|
154 |
+
.css(hidden)
|
155 |
+
.eq(0)
|
156 |
+
.addClass(visibleClass)
|
157 |
+
.css(visible)
|
158 |
+
.show();
|
159 |
+
|
160 |
+
// CSS transitions
|
161 |
+
if (supportsTransitions) {
|
162 |
+
$slide
|
163 |
+
.show()
|
164 |
+
.css({
|
165 |
+
// -ms prefix isn't needed as IE10 uses prefix free version
|
166 |
+
"-webkit-transition": "opacity " + fadeTime + "ms ease-in-out",
|
167 |
+
"-moz-transition": "opacity " + fadeTime + "ms ease-in-out",
|
168 |
+
"-o-transition": "opacity " + fadeTime + "ms ease-in-out",
|
169 |
+
"transition": "opacity " + fadeTime + "ms ease-in-out"
|
170 |
+
});
|
171 |
+
}
|
172 |
+
|
173 |
+
// Only run if there's more than one slide
|
174 |
+
if ($slide.length > 1) {
|
175 |
+
|
176 |
+
// Make sure the timeout is at least 100ms longer than the fade
|
177 |
+
if (waitTime < fadeTime + 100) {
|
178 |
+
return;
|
179 |
+
}
|
180 |
+
|
181 |
+
// Pager
|
182 |
+
if (settings.pager && !settings.manualControls) {
|
183 |
+
var tabMarkup = [];
|
184 |
+
$slide.each(function (i) {
|
185 |
+
var n = i + 1;
|
186 |
+
tabMarkup +=
|
187 |
+
"<li>" +
|
188 |
+
"<a href='#' class='" + slideClassPrefix + n + "'>" + n + "</a>" +
|
189 |
+
"</li>";
|
190 |
+
});
|
191 |
+
$pager.append(tabMarkup);
|
192 |
+
|
193 |
+
// Inject pager
|
194 |
+
if (options.navContainer) {
|
195 |
+
$(settings.navContainer).append($pager);
|
196 |
+
} else {
|
197 |
+
$this.after($pager);
|
198 |
+
}
|
199 |
+
}
|
200 |
+
|
201 |
+
// Manual pager controls
|
202 |
+
if (settings.manualControls) {
|
203 |
+
$pager = $(settings.manualControls);
|
204 |
+
$pager.addClass(namespace + "_tabs " + namespaceIdx + "_tabs");
|
205 |
+
}
|
206 |
+
|
207 |
+
// Add pager slide class prefixes
|
208 |
+
if (settings.pager || settings.manualControls) {
|
209 |
+
$pager.find('li').each(function (i) {
|
210 |
+
$(this).addClass(slideClassPrefix + (i + 1));
|
211 |
+
});
|
212 |
+
}
|
213 |
+
|
214 |
+
// If we have a pager, we need to set up the selectTab function
|
215 |
+
if (settings.pager || settings.manualControls) {
|
216 |
+
$tabs = $pager.find('a');
|
217 |
+
|
218 |
+
// Select pager item
|
219 |
+
selectTab = function (idx) {
|
220 |
+
$tabs
|
221 |
+
.closest("li")
|
222 |
+
.removeClass(activeClass)
|
223 |
+
.eq(idx)
|
224 |
+
.addClass(activeClass);
|
225 |
+
};
|
226 |
+
}
|
227 |
+
|
228 |
+
// Auto cycle
|
229 |
+
if (settings.auto) {
|
230 |
+
|
231 |
+
startCycle = function () {
|
232 |
+
rotate = setInterval(function () {
|
233 |
+
|
234 |
+
// Clear the event queue
|
235 |
+
$slide.stop(true, true);
|
236 |
+
|
237 |
+
var idx = index + 1 < length ? index + 1 : 0;
|
238 |
+
|
239 |
+
// Remove active state and set new if pager is set
|
240 |
+
if (settings.pager || settings.manualControls) {
|
241 |
+
selectTab(idx);
|
242 |
+
}
|
243 |
+
|
244 |
+
slideTo(idx);
|
245 |
+
}, waitTime);
|
246 |
+
};
|
247 |
+
|
248 |
+
// Init cycle
|
249 |
+
startCycle();
|
250 |
+
}
|
251 |
+
|
252 |
+
// Restarting cycle
|
253 |
+
restartCycle = function () {
|
254 |
+
if (settings.auto) {
|
255 |
+
// Stop
|
256 |
+
clearInterval(rotate);
|
257 |
+
// Restart
|
258 |
+
startCycle();
|
259 |
+
}
|
260 |
+
};
|
261 |
+
|
262 |
+
// Pause on hover
|
263 |
+
if (settings.pause) {
|
264 |
+
$this.hover(function () {
|
265 |
+
clearInterval(rotate);
|
266 |
+
}, function () {
|
267 |
+
restartCycle();
|
268 |
+
});
|
269 |
+
}
|
270 |
+
|
271 |
+
// Pager click event handler
|
272 |
+
if (settings.pager || settings.manualControls) {
|
273 |
+
$tabs.bind("click", function (e) {
|
274 |
+
e.preventDefault();
|
275 |
+
|
276 |
+
if (!settings.pauseControls) {
|
277 |
+
restartCycle();
|
278 |
+
}
|
279 |
+
|
280 |
+
// Get index of clicked tab
|
281 |
+
var idx = $tabs.index(this);
|
282 |
+
|
283 |
+
// Break if element is already active or currently animated
|
284 |
+
if (index === idx || $("." + visibleClass).queue('fx').length) {
|
285 |
+
return;
|
286 |
+
}
|
287 |
+
|
288 |
+
// Remove active state from old tab and set new one
|
289 |
+
selectTab(idx);
|
290 |
+
|
291 |
+
// Do the animation
|
292 |
+
slideTo(idx);
|
293 |
+
})
|
294 |
+
.eq(0)
|
295 |
+
.closest("li")
|
296 |
+
.addClass(activeClass);
|
297 |
+
|
298 |
+
// Pause when hovering pager
|
299 |
+
if (settings.pauseControls) {
|
300 |
+
$tabs.hover(function () {
|
301 |
+
clearInterval(rotate);
|
302 |
+
}, function () {
|
303 |
+
restartCycle();
|
304 |
+
});
|
305 |
+
}
|
306 |
+
}
|
307 |
+
|
308 |
+
// Navigation
|
309 |
+
if (settings.nav) {
|
310 |
+
var navMarkup =
|
311 |
+
"<a href='#' class='" + navClass + " prev'>" + settings.prevText + "</a>" +
|
312 |
+
"<a href='#' class='" + navClass + " next'>" + settings.nextText + "</a>";
|
313 |
+
|
314 |
+
// Inject navigation
|
315 |
+
if (options.navContainer) {
|
316 |
+
$(settings.navContainer).append(navMarkup);
|
317 |
+
} else {
|
318 |
+
$this.after(navMarkup);
|
319 |
+
}
|
320 |
+
|
321 |
+
var $trigger = $("." + namespaceIdx + "_nav"),
|
322 |
+
$prev = $trigger.filter(".prev");
|
323 |
+
|
324 |
+
// Click event handler
|
325 |
+
$trigger.bind("click", function (e) {
|
326 |
+
e.preventDefault();
|
327 |
+
|
328 |
+
var $visibleClass = $("." + visibleClass);
|
329 |
+
|
330 |
+
// Prevent clicking if currently animated
|
331 |
+
if ($visibleClass.queue('fx').length) {
|
332 |
+
return;
|
333 |
+
}
|
334 |
+
|
335 |
+
// Adds active class during slide animation
|
336 |
+
// $(this)
|
337 |
+
// .addClass(namespace + "_active")
|
338 |
+
// .delay(fadeTime)
|
339 |
+
// .queue(function (next) {
|
340 |
+
// $(this).removeClass(namespace + "_active");
|
341 |
+
// next();
|
342 |
+
// });
|
343 |
+
|
344 |
+
// Determine where to slide
|
345 |
+
var idx = $slide.index($visibleClass),
|
346 |
+
prevIdx = idx - 1,
|
347 |
+
nextIdx = idx + 1 < length ? index + 1 : 0;
|
348 |
+
|
349 |
+
// Go to slide
|
350 |
+
slideTo($(this)[0] === $prev[0] ? prevIdx : nextIdx);
|
351 |
+
if (settings.pager || settings.manualControls) {
|
352 |
+
selectTab($(this)[0] === $prev[0] ? prevIdx : nextIdx);
|
353 |
+
}
|
354 |
+
|
355 |
+
if (!settings.pauseControls) {
|
356 |
+
restartCycle();
|
357 |
+
}
|
358 |
+
});
|
359 |
+
|
360 |
+
// Pause when hovering navigation
|
361 |
+
if (settings.pauseControls) {
|
362 |
+
$trigger.hover(function () {
|
363 |
+
clearInterval(rotate);
|
364 |
+
}, function () {
|
365 |
+
restartCycle();
|
366 |
+
});
|
367 |
+
}
|
368 |
+
}
|
369 |
+
|
370 |
+
}
|
371 |
+
|
372 |
+
// Max-width fallback
|
373 |
+
if (typeof document.body.style.maxWidth === "undefined" && options.maxwidth) {
|
374 |
+
var widthSupport = function () {
|
375 |
+
$this.css("width", "100%");
|
376 |
+
if ($this.width() > maxw) {
|
377 |
+
$this.css("width", maxw);
|
378 |
+
}
|
379 |
+
};
|
380 |
+
|
381 |
+
// Init fallback
|
382 |
+
widthSupport();
|
383 |
+
$(window).bind("resize", function () {
|
384 |
+
widthSupport();
|
385 |
+
});
|
386 |
+
}
|
387 |
+
|
388 |
+
});
|
389 |
+
|
390 |
+
};
|
391 |
+
})(jQuery, this, 0);
|
assets/sliders/responsiveslides/responsiveslides.min.js
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
-
/*! http://responsiveslides.com v1.
|
2 |
-
(function(c,
|
3 |
-
|
4 |
-
|
5 |
-
h+"ms ease-in-out","-o-transition":"opacity "+h+"ms ease-in-out",transition:"opacity "+h+"ms ease-in-out"});if(1<e.
|
6 |
-
|
7 |
-
a.pauseControls&&
|
8 |
-
a.pauseControls&&d.hover(function(){clearInterval(
|
1 |
+
/*! http://responsiveslides.com v1.55 by @viljamis */
|
2 |
+
(function(c,K,C){c.fn.responsiveSlides=function(m){var a=c.extend({auto:!0,speed:500,timeout:4E3,pager:!1,nav:!1,random:!1,pause:!1,pauseControls:!0,prevText:"Previous",nextText:"Next",maxwidth:"",navContainer:"",manualControls:"",namespace:"rslides",before:c.noop,after:c.noop},m);return this.each(function(){C++;var f=c(this),u,t,v,n,q,r,p=0,e=f.children(),D=e.length,h=parseFloat(a.speed),E=parseFloat(a.timeout),w=parseFloat(a.maxwidth),g=a.namespace,d=g+C,F=g+"_nav "+d+"_nav",x=g+"_here",k=d+"_on",
|
3 |
+
y=d+"_s",l=c("<ul class='"+g+"_tabs "+d+"_tabs' />"),z={"float":"left",position:"relative",opacity:1,zIndex:2},A={"float":"none",position:"absolute",opacity:0,zIndex:1},G=function(){var b=(document.body||document.documentElement).style,a="transition";if("string"===typeof b[a])return!0;u=["Moz","Webkit","Khtml","O","ms"];var a=a.charAt(0).toUpperCase()+a.substr(1),c;for(c=0;c<u.length;c++)if("string"===typeof b[u[c]+a])return!0;return!1}(),B=function(b){a.before(b);G?(e.removeClass(k).css(A).eq(b).addClass(k).css(z),
|
4 |
+
p=b,setTimeout(function(){a.after(b)},h)):e.stop().fadeOut(h,function(){c(this).removeClass(k).css(A).css("opacity",1)}).eq(b).fadeIn(h,function(){c(this).addClass(k).css(z);a.after(b);p=b})};a.random&&(e.sort(function(){return Math.round(Math.random())-.5}),f.empty().append(e));e.each(function(a){this.id=y+a});f.addClass(g+" "+d);m&&m.maxwidth&&f.css("max-width",w);e.hide().css(A).eq(0).addClass(k).css(z).show();G&&e.show().css({"-webkit-transition":"opacity "+h+"ms ease-in-out","-moz-transition":"opacity "+
|
5 |
+
h+"ms ease-in-out","-o-transition":"opacity "+h+"ms ease-in-out",transition:"opacity "+h+"ms ease-in-out"});if(1<e.length){if(E<h+100)return;if(a.pager&&!a.manualControls){var H=[];e.each(function(a){a+=1;H+="<li><a href='#' class='"+y+a+"'>"+a+"</a></li>"});l.append(H);m.navContainer?c(a.navContainer).append(l):f.after(l)}a.manualControls&&(l=c(a.manualControls),l.addClass(g+"_tabs "+d+"_tabs"));(a.pager||a.manualControls)&&l.find("li").each(function(a){c(this).addClass(y+(a+1))});if(a.pager||a.manualControls)r=
|
6 |
+
l.find("a"),t=function(a){r.closest("li").removeClass(x).eq(a).addClass(x)};a.auto&&(v=function(){q=setInterval(function(){e.stop(!0,!0);var b=p+1<D?p+1:0;(a.pager||a.manualControls)&&t(b);B(b)},E)},v());n=function(){a.auto&&(clearInterval(q),v())};a.pause&&f.hover(function(){clearInterval(q)},function(){n()});if(a.pager||a.manualControls)r.bind("click",function(b){b.preventDefault();a.pauseControls||n();b=r.index(this);p===b||c("."+k).queue("fx").length||(t(b),B(b))}).eq(0).closest("li").addClass(x),
|
7 |
+
a.pauseControls&&r.hover(function(){clearInterval(q)},function(){n()});if(a.nav){g="<a href='#' class='"+F+" prev'>"+a.prevText+"</a><a href='#' class='"+F+" next'>"+a.nextText+"</a>";m.navContainer?c(a.navContainer).append(g):f.after(g);var d=c("."+d+"_nav"),I=d.filter(".prev");d.bind("click",function(b){b.preventDefault();b=c("."+k);if(!b.queue("fx").length){var d=e.index(b);b=d-1;d=d+1<D?p+1:0;B(c(this)[0]===I[0]?b:d);(a.pager||a.manualControls)&&t(c(this)[0]===I[0]?b:d);a.pauseControls||n()}});
|
8 |
+
a.pauseControls&&d.hover(function(){clearInterval(q)},function(){n()})}}if("undefined"===typeof document.body.style.maxWidth&&m.maxwidth){var J=function(){f.css("width","100%");f.width()>w&&f.css("width",w)};J();c(K).bind("resize",function(){J()})}})}})(jQuery,this,0);
|
ml-slider.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* Plugin Name: MetaSlider
|
7 |
* Plugin URI: https://www.metaslider.com
|
8 |
* Description: Easy to use slideshow plugin. Create SEO optimised responsive slideshows with Nivo Slider, Flex Slider, Coin Slider and Responsive Slides.
|
9 |
-
* Version: 3.20.
|
10 |
* Author: MetaSlider
|
11 |
* Author URI: https://www.metaslider.com
|
12 |
* License: GPL-2.0+
|
@@ -35,7 +35,7 @@ class MetaSliderPlugin
|
|
35 |
*
|
36 |
* @var string
|
37 |
*/
|
38 |
-
public $version = '3.20.
|
39 |
|
40 |
/**
|
41 |
* Pro installed version number
|
@@ -893,11 +893,14 @@ class MetaSliderPlugin
|
|
893 |
*
|
894 |
* @param array $elem1 The first element to comapre
|
895 |
* @param array $elem2 The second element to comapr
|
896 |
-
* @return
|
897 |
*/
|
898 |
private function compare_elems($elem1, $elem2)
|
899 |
{
|
900 |
-
|
|
|
|
|
|
|
901 |
}
|
902 |
|
903 |
|
6 |
* Plugin Name: MetaSlider
|
7 |
* Plugin URI: https://www.metaslider.com
|
8 |
* Description: Easy to use slideshow plugin. Create SEO optimised responsive slideshows with Nivo Slider, Flex Slider, Coin Slider and Responsive Slides.
|
9 |
+
* Version: 3.20.3
|
10 |
* Author: MetaSlider
|
11 |
* Author URI: https://www.metaslider.com
|
12 |
* License: GPL-2.0+
|
35 |
*
|
36 |
* @var string
|
37 |
*/
|
38 |
+
public $version = '3.20.3';
|
39 |
|
40 |
/**
|
41 |
* Pro installed version number
|
893 |
*
|
894 |
* @param array $elem1 The first element to comapre
|
895 |
* @param array $elem2 The second element to comapr
|
896 |
+
* @return int
|
897 |
*/
|
898 |
private function compare_elems($elem1, $elem2)
|
899 |
{
|
900 |
+
if ($elem1['priority'] == $elem2['priority']) {
|
901 |
+
return 0;
|
902 |
+
}
|
903 |
+
return $elem1['priority'] > $elem2['priority'] ? 1 : -1;
|
904 |
}
|
905 |
|
906 |
|
readme.txt
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
Contributors: matchalabs, DavidAnderson, dnutbourne, kbat82
|
3 |
Tags: slideshow, slider, image slider, carousel, gallery, flexslider, wordpress slider, nivoslider, rotating banner, responsive slideshow, seo slideshow, unsplash
|
4 |
Requires at least: 3.5
|
5 |
-
Stable tag: 3.20.
|
6 |
Requires PHP: 5.2
|
7 |
-
Tested up to: 5.
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -12,100 +12,204 @@ The best slider, gallery, and carousel plugin for WordPress. Responsive and easy
|
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
-
|
16 |
|
17 |
[vimeo https://vimeo.com/393891282]
|
18 |
|
19 |
-
|
|
|
20 |
|
21 |
-
|
22 |
|
23 |
-
|
|
|
24 |
|
25 |
-
|
|
|
26 |
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
*
|
34 |
-
*
|
35 |
-
*
|
36 |
-
*
|
37 |
-
*
|
38 |
-
*
|
39 |
-
*
|
40 |
-
*
|
41 |
-
*
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
|
48 |
-
|
49 |
|
50 |
-
|
51 |
-
|
52 |
-
* Creatively responsive
|
53 |
|
54 |
-
|
55 |
|
56 |
-
|
57 |
-
* Includes drag and drop slide reordering, intelligent image cropping, set image crop position.
|
58 |
-
* Multiple slideshow configuration options (e.g. for speed, timing, plus many more!)
|
59 |
|
60 |
-
|
|
|
61 |
|
62 |
-
|
63 |
-
|
64 |
-
* Fully localized
|
65 |
-
* WordPress Multi-site compatible, and
|
66 |
-
* Compatible with translation plugins (WPML, PolyLang & qTranslate)
|
67 |
-
* Developer Friendly, with extensive hooks & filters
|
68 |
|
69 |
-
|
|
|
70 |
|
71 |
-
|
72 |
|
73 |
-
|
74 |
|
75 |
-
|
76 |
-
* HTML slides
|
77 |
-
* Layer slides with CSS3 animations & HTML5 Video backgrounds
|
78 |
-
* Full-featured text editor to include extra CSS
|
79 |
-
* Dynamic Post Feed/Featured Image Slides (content slider)
|
80 |
-
* Slide scheduling & slide visibility
|
81 |
-
* Custom Themes - build your own theme
|
82 |
-
* Thumbnail Navigation
|
83 |
-
* Premium Support
|
84 |
|
85 |
-
|
86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
* [Flex Slider](http://flexslider.woothemes.com/)
|
88 |
* [Responsive Slides](http://responsiveslides.com/)
|
89 |
* [Coin Slider](http://workshop.rs/projects/coin-slider/)
|
90 |
* [Nivo Slider](https://github.com/Codeinwp/Nivo-Slider-jQuery)
|
91 |
|
92 |
-
Find out more at
|
93 |
|
94 |
Follow us on Twitter: [@wpmetaslider](https://twitter.com/wpmetaslider)
|
95 |
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
|
100 |
-
MetaSlider only collects this diagnostic data when a user allows it via a notice in WP Admin or MetaSlider settings. View our [privacy policy](https://www.metaslider.com/privacy-policy).
|
101 |
|
102 |
== Installation ==
|
103 |
|
104 |
The easy way:
|
105 |
|
106 |
1. Go to the Plugins Menu in WordPress
|
107 |
-
|
108 |
-
|
109 |
|
110 |
The not so easy way:
|
111 |
|
@@ -163,6 +267,10 @@ See https://www.metaslider.com/documentation/image-cropping/
|
|
163 |
|
164 |
== Changelog ==
|
165 |
|
|
|
|
|
|
|
|
|
166 |
|
167 |
= 3.20.2 - 2021/Feb/08 =
|
168 |
* FIX: Removes various PHP notices
|
2 |
Contributors: matchalabs, DavidAnderson, dnutbourne, kbat82
|
3 |
Tags: slideshow, slider, image slider, carousel, gallery, flexslider, wordpress slider, nivoslider, rotating banner, responsive slideshow, seo slideshow, unsplash
|
4 |
Requires at least: 3.5
|
5 |
+
Stable tag: 3.20.3
|
6 |
Requires PHP: 5.2
|
7 |
+
Tested up to: 5.7
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
+
With MetaSlider you can create a powerful, SEO-optimized slider, slideshow, carousel, or gallery in minutes with the world’s #1 responsive plugin for image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slides!
|
16 |
|
17 |
[vimeo https://vimeo.com/393891282]
|
18 |
|
19 |
+
### Overview
|
20 |
+
With MetaSlider and [MetaSlider Pro](https://www.metaslider.com/upgrade/), WordPress’s most popular slider plugin, enhancing your blog or website couldn’t be easier! Simply select images, photos, videos and more from your WordPress Media Library, drag and drop them into place, and then set the slide captions, links and SEO fields all from one page.
|
21 |
|
22 |
+
Meta Slider sliders, slideshows, carousels, and galleries are compatible with the WordPress Block Editor (Gutenberg).
|
23 |
|
24 |
+
### For Site Owners
|
25 |
+
MetaSlider gives you the power to create a beautiful slider, slideshow, carousel, or gallery on your WordPress site, through the most simple and intuitive plugin interface of any WordPress image, photo, and video plugin. Show off your images, photographs and videos, latest work, or even the products in your online store. MetaSlider’s built-in SEO features ensure that people will have no trouble finding your site and the slider, slide show, gallery and carousel that you create!
|
26 |
|
27 |
+
### For Developers
|
28 |
+
Create impressive sliders, slideshows, carousels, and galleries for your clients and feel confident that when they take over they will easily be able to maintain it. Meta Slider gives access to much of its functionality through WordPress filters and actions, so you can customise MetaSlider just the way you want.
|
29 |
|
30 |
+
### For Theme Developers
|
31 |
+
Use MetaSlider’s powerful filters and actions to perfectly customise MetaSlider to your WordPress theme. A perfectly integrated slider, slide show, carousel, and gallery plugin will make your theme more engaging and effective for your users. MetaSlider supports any content type that your users might want: image, photo, video (YouTube/Vimeo), layer, html, product, and post feed.
|
32 |
+
|
33 |
+
### MetaSlider Pro
|
34 |
+
For users looking to further customize a slider, slideshow, carousel, or gallery experience, we offer additional power features with [MetaSlider Pro](https://www.metaslider.com/upgrade/).
|
35 |
+
|
36 |
+
* **YouTube & Vimeo video slides**: Easily include responsive high definition YouTube & Vimeo videos in your slideshows.
|
37 |
+
* **HTML slides**: Create completely customised HTML slides using the inline editor. We’ve even built-in over 50 awesome CSS3 transitions!
|
38 |
+
* **Layer slides**: Create CSS3 animated HTML Layer slides using the built in Drag & Drop WYSIWYG editor.
|
39 |
+
* **Full-featured text editor to include extra CSS**
|
40 |
+
* **Dynamic Post Feed/Featured Image Slides**: Automatically show your latest blog posts, events or WooCommerce products in your slide show.
|
41 |
+
* **Slide scheduling & slide visibility**: Pro customers can now schedule sliders to appear only within specific dates.
|
42 |
+
* **Custom Themes – build your own theme**: MetaSlider now has 11 stunning new and free of charge professional slider themes for you to explore.
|
43 |
+
* **Thumbnail Navigation**: Give your slideshows a gallery feel with Thumbnail Navigation
|
44 |
+
* **Premium Support**
|
45 |
+
|
46 |
+
### Four Slideshow Types
|
47 |
+
MetaSlider sliders, slideshows, and carousels feature four responsive slideshow types with 20+ transition effects: Flex Slider 2, Nivo Slider, Responsive Slides, Coin Slider. These sliders support image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slides. Some slide types require [MetaSlider Pro](https://www.metaslider.com/upgrade/).
|
48 |
+
|
49 |
+
### New Photo Gallery Experience
|
50 |
+
MetaSlider now features a new gallery experience that supports images and photos. With an easy drag and drop photo gallery builder, you can create a responsive and optimized photo gallery in seconds using the same WordPress Media Gallery images you are already using with MetaSlider sliders, slide shows, and carousels. The Meta Slider photo gallery can be added to any page using a simple shortcode, just like MetaSlider.
|
51 |
+
|
52 |
+
We are building the photo gallery following these principles:
|
53 |
+
* Fast - Using modern best practices, your responsive photo gallery will be faster than ever.
|
54 |
+
* SEO-focused - Search engines will love your photo gallery.
|
55 |
+
* Fully WCAG accessible - All users will be able to enjoy your responsive photo gallery.
|
56 |
+
* Easy to use, fun to master. With advanced photo gallery features for those who need them.
|
57 |
+
|
58 |
+
Our responsive photo gallery includes the easy to use features you would expect. You can create a photo gallery, add images to your gallery from the WordPress Media Library, drag and drop images and photos in your gallery to reorder, and add an image alt attribute to your images and photos to ensure that your gallery is SEO friendly. To make sure that your responsive photo gallery looks just right on your WordPress page or post, the Meta Slider gallery allows you to change the image and photo width, max width, min width, and spacing of your gallery.
|
59 |
+
|
60 |
+
The MetaSlider photo gallery also offers a distraction free fullscreen mode for gallery editing, and we will soon add to the photo gallery a dark mode and background color selection.
|
61 |
+
|
62 |
+
To add your responsive Meta Slider photo gallery to a page, simply click the “add to page” button in your gallery editor to generate a WordPress shortcode that you can drop onto any page or post.
|
63 |
+
|
64 |
+
The MetaSlider photo gallery is in development, and we would love to hear your feedback on the gallery and ideas for photo gallery features we should work on next.
|
65 |
+
|
66 |
+
### Carousel
|
67 |
+
In addition to creating traditional sliders and slideshows, MetaSlider can be used to build carousels that allow you to show multiple images at any one time. MetaSlider carousels are compatible with all slide types: image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slides. They’re ideal for showing a list of your latest posts or to use as a “Featured Product” slider for your homepage.
|
68 |
+
|
69 |
+
### Simple and Easy to Use
|
70 |
+
MetaSlider has a beautiful, intuitive interface that will let you create stunning slideshows with ease. MetaSlider’s simple, easy-to-use slider and gallery building interface allows you to build a beautiful image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slider, slideshow, carousel and gallery that is fast and responsive. With MetaSlider’s drag and drop reordering for your slider, slideshow, carousel, and gallery, you can easily iterate on a design to find the perfect look for your site.
|
71 |
+
|
72 |
+
Our simple and intuitive interface is perfect for individual users, developers & clients!
|
73 |
+
|
74 |
+
### Support for Every Type of Content
|
75 |
+
MetaSlider provides unrestricted support for your image and photo slider, slide show, carousel, and gallery, including captions, links, title texts and alt text. With the [MetaSlider Pro](https://www.metaslider.com/upgrade/) add-on you can also add video (YouTube/Vimeo), layer, html, product, and post feed content to a slider, slide show or carousel.
|
76 |
+
|
77 |
+
You can use any combination of MetaSlider Pro slide types for sliders, slideshows, and carousels. For example you can have a slider with an image slide, a post feed slide (that can contain multiple posts), and a video slide. To create this simply add slides as you normally would, selecting the relevant slide type each time.
|
78 |
+
|
79 |
+
The Meta Slider gallery currently supports image and photo content that can be added directly from your WordPress Media Library.
|
80 |
+
|
81 |
+
### Images
|
82 |
+
This may be the most basic slide type, but it still makes a great impression on any website! Present your beautiful images to a stunning slider, slide show, carousel, or gallery. Image slides are a basic slide type included in Meta Slider. An image slide will display an image with a caption. You can optionally link the slide to a URL of your choice.
|
83 |
+
|
84 |
+
Add images to your slide shows directly from your WordPress media manager, add the captions you want, set SEO fields and adjust the settings to display the slideshow just how you like it. Take it further with [MetaSlider Pro](https://www.metaslider.com/upgrade/) and use the Theme Editor to change the look of the navigation, the arrows, and the captions.
|
85 |
+
|
86 |
+
### Photos
|
87 |
+
Use responsive image slides and filmstrip navigation to create a simple but effective slideshow to show off your beautiful photographs and other images. Add a photo lightbox plugin with our [MetaSlider Lightbox add-on](https://wordpress.org/plugins/ml-slider-lightbox/) to let people view the image as large as possible.
|
88 |
+
|
89 |
+
Take your photo portfolio further with Thumbnail Navigation as part of [MetaSlider Pro](https://www.metaslider.com/upgrade/). Thumbnail navigation for photos adds a carousel row of thumbnails below your slider or slideshow. You can customize the photo thumbnails to optimize the most engaging experience for your site visitors.
|
90 |
+
|
91 |
+
### Animated Layer Slides
|
92 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/) you can create animated Layer Slides for your slider, slideshow, or carousel. Create CSS3 animated HTML Layer slides using the built in drag and drop editor. Meta Slider Layer Slides are ideal for easily creating eye catching slider presentations and slide shows using stunning effects with 50 animation options and a beautiful, easy to use interface. Layers can include text, html, images, photos, videos and even shortcodes! Layer Slide users also benefit from additional optimisation and customisation options, including using a video as the slide background and adjusting the padding and background colour of each layer.
|
93 |
+
|
94 |
+
### Post Feed Slides
|
95 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/) you can create Post Feed slides to automatically show your latest content, blog posts, events or WooCommerce products in your slider, slide show, or carousel. MetaSlider Post Feed slides dynamically pull in slides based on your WordPress posts, using the featured image as the slide. They are also commonly known as “Content Sliders”, “Featured Sliders”, “Post Sliders” or “Dynamic Sliders”.
|
96 |
+
|
97 |
+
The post feed slide settings allow you to control which post types you want to display, the order to display them in and to restrict the posts to certain tags or categories. You can customise the caption template with a selection of template tags including {title}, {excerpt}, {author} and {date}. As with all our other slide types a Post Feed slide can appear in combination with any other slide type.
|
98 |
|
99 |
+
Post Feed slides can be used to show one post at a time but they work particularly well in carousel mode (as above) allowing you to show off a large number of your latest posts in a small amount of space.
|
100 |
|
101 |
+
### Video Slides
|
102 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/) you can easily include responsive high definition YouTube & Vimeo videos in your slider, slideshow, or carousel. A video slide will display a video in your slide show directly from Vimeo or YouTube. The video will automatically pause if the user skips to the next slide.
|
|
|
103 |
|
104 |
+
Simply add the URL of your video to a YouTube or Vimeo slide and Meta Slider will add it to your slider, slideshow, or carousel. Either create a slide show full of you favourite videos or mix it in between slides of other types to get just the result that you want.
|
105 |
|
106 |
+
If you select the FlexSlider option with video slides you can take advantage of MetaSliders play/pause functionality. This means that you can have your slideshow autoplay but will pause when you set a video to play and carry on once the video has finished. You could even have the slider or slide show autoplay to give you a smooth, completely automatic presentation!
|
|
|
|
|
107 |
|
108 |
+
### HTML Overlay Slides
|
109 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/) you can create completely customized HTML slides using the inline editor. We’ve even built-in over 50 awesome CSS3 transitions!
|
110 |
|
111 |
+
### External URL Slides
|
112 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/) you can create External URL Slides to load images for your slider, slideshow, or carousel directly from non-WordPress sources, for example CDN’s or image hosts.
|
|
|
|
|
|
|
|
|
113 |
|
114 |
+
### Sliders Make Any Site More Engaging
|
115 |
+
**Portfolio Sites**
|
116 |
|
117 |
+
Add some photos to your slider, slideshow, or carousel as layer slides, then add a layer covering the image set to a semi-transparent colour to give a fantastic overlay. Then add some text that animates in to give some details about your company. Select the stretch option so that your slider, slideshow, or carousel fills the screen to really make an impact. Underneath that, add an image slide showing some of your latest work. Add our [MetaSlider Lightbox add-on plugin](https://wordpress.org/plugins/ml-slider-lightbox/) to let you zoom-in on the work. Or you could add a post slide in carousel mode, set to display a post type of your client with their logo as the featured image.
|
118 |
|
119 |
+
**Photography Sites**
|
120 |
|
121 |
+
Use image slides and filmstrip navigation to create a simple but effective slider or slideshow to show off your beautiful photographs and other images. Add a lightbox plugin with our [MetaSlider Lightbox add-on](https://wordpress.org/plugins/ml-slider-lightbox/) to let people view the image as large as possible.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
122 |
|
123 |
+
**Online Store**
|
124 |
|
125 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/), add a slider or slideshow with layer slides showing off your latest offers at the top and a carousel post slide at the bottom displaying your products post type. MetaSlider works nicely with Woocommerce and allows you to use information such as the product price in the post slide template.
|
126 |
+
|
127 |
+
**News Site or Blog**
|
128 |
+
|
129 |
+
With [MetaSlider Pro](https://www.metaslider.com/upgrade/), show off your featured story or use a Post Slide to show your latest posts with a slider, slideshow, or carousel.
|
130 |
+
|
131 |
+
Use simple image slides to show images relating to a featured story. Combine that with a slider or slide show, set to carousel mode, containing a post slide to display other stories. Use the Theme Editor to move and style the captions to fit your theme.
|
132 |
+
|
133 |
+
### Optimized for Speed
|
134 |
+
MetaSlider is Fast – only the minimum JavaScript/CSS is included on your page to power your slider, slideshow, carousel, or gallery. We have optimized the Meta Slider plugin so that your images, photos, videos (YouTube/Vimeo), layers, html slides, products, and post feeds, load quickly without slowing down your website visitors’ experience.
|
135 |
+
### Unsplash Integration
|
136 |
+
MetaSlider is integrated with Unsplash to access free images and photos via Unsplash.com for your slider, slideshow, carousel, and gallery. Finding the right image or photo can be the hardest part of creating a compelling slider, slide show, carousel, or gallery, and MetaSlider makes this process easy for you by never leaving your WordPress plugin interface.
|
137 |
+
### Responsive and SEO-optimized
|
138 |
+
MetaSlider is a responsive, SEO-optimized WordPress plugin that lets you create a slider, slideshow, carousel, and gallery in seconds that are responsive and SEO-optimized.
|
139 |
+
|
140 |
+
Your MetaSlider responsive slider, slideshow, carousel, or gallery will adapt to the width of the device they’re being displayed on, including desktop, mobile or tablet. The content will be responsive regardless of the type of content you use: image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slides.
|
141 |
+
|
142 |
+
The Meta Slider SEO tab lets you set image title and alt text for your slides. The title text should provide additional information about the slide, whereas the alt text should be used to describe the image itself. This data allows search engines to ‘read’ your slides and helps with search engine rankings!
|
143 |
+
|
144 |
+
### Powerful Editing Options
|
145 |
+
In addition to MetaSlider simple and easy to use drag and drop features, our slider, slide show, gallery, and carousel plugin for WordPress offers many powerful features. Whether you are someone running a site who wants to make a great first impression with beautiful photos or someone making websites for clients, Meta Slider enables you to create the perfect customized experience. These editing features support any content type, including image, photo, video (YouTube/Vimeo), layer, html, product, and post feed.
|
146 |
+
|
147 |
+
* **Full width slider and gallery support** to match your site design, compatible with any WordPress theme that you choose to use.
|
148 |
+
* **Intelligent Image Cropping**: Unique Smart Crop functionality ensures your slides are perfectly resized. No fuss.
|
149 |
+
* **Smart Pad**: WWith cropping disabled, Smart Pad automatically adds padding to portrait images allowing you to mix portrait and landscape images and maintain a consistent slideshow height.
|
150 |
+
* **Drag and Drop editor**: Includes drag and drop slide reordering, intelligent image cropping, set image crop position.
|
151 |
+
* **Slider configuration**: transition effect, speed, timing, plus many more!
|
152 |
+
* **Live Theme Editor**: With [MetaSlider Pro](https://www.metaslider.com/upgrade/) you can create unlimited themes and preview them on-the-fly.
|
153 |
+
* **Thumbnail Navigation (Pro)**: [MetaSlider Pro](https://www.metaslider.com/upgrade/) adds in 2 new types of slider and slideshow navigation:
|
154 |
+
* “Thumbnail” will output a static row of thumbnails below the slideshow. Compatible with Flex and Nivo Slider.
|
155 |
+
* “Filmstrip” will output a carousel style row of thumbnails below the slideshow (with left and right navigation) – perfect if you have lots of slides! Compatible with Flex Slider.
|
156 |
+
|
157 |
+
### Flexible Workflow
|
158 |
+
MetaSlider is optimized for a fast and flexible workflow. You can preview your slider, slideshow, carousel, or gallery directly from the editor in the Meta Slider dashboard. You can create the perfect design without switching back and forth between the dashboard and your page or post.
|
159 |
+
|
160 |
+
Adding a MetaSlider slider, slideshow, carousel, or gallery is as easy as adding a shortcode to your WordPress page or post. The shortcode workflow creates maximum flexibility for embedding Meta Slider exactly where it will be most effective.
|
161 |
+
|
162 |
+
### Slider Themes
|
163 |
+
[MetaSlider Pro](https://www.metaslider.com/upgrade/) introduces the Meta Slider Theme Editor. MetaSlider Pro includes 11 free professional and responsive slide show themes for sliders, slideshows, and carousels. These themes enable you to effortlessly create beautiful and effective sliders, slideshows, and carousels designed by professionals.
|
164 |
+
|
165 |
+
The MetaSlider theme editor also allows you to create your own slider, slideshow, and carousel themes to use across your sites where you install Meta Slider. With these themes you can perfectly display any content, including image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slides.
|
166 |
+
|
167 |
+
### Import/Export Sliders
|
168 |
+
With slider, slideshow, and carousel import/export you can move your perfectly designed sliders between your websites or your clients’ websites. Instead of recreating your settings on every website, export your slider, slideshow, or carousel with one click and import it to another WordPress suite just as easily with Meta Slider.
|
169 |
+
Gutenberg Block Editor Ready
|
170 |
+
MetaSlider has been designed to also work seamlessly with the new Gutenberg WordPress Block Editor by using our Gutenberg block. We give you ultimate flexibility to embed Meta Slider into your WordPress website using a Gutenberg block, shortcode, or widget.
|
171 |
+
|
172 |
+
### Fully Localized with Translation Support
|
173 |
+
MetaSlider is compatible with some of the most popular WordPress translation plugins, including WPML, PolyLang & qTranslate. You can make sure that your slider, slideshow, carousel, or gallery are fully localized for your audiences around the world. Localization supports any content you include in your slider, including image, photo, video (YouTube/Vimeo), layer, html, product, and post feed slides.
|
174 |
+
|
175 |
+
### Lightbox Support
|
176 |
+
MetaSlider offers responsive image and photo lightbox support with the [MetaSlider Lightbox add-on](https://www.metaslider.com/upgrade/), allowing slides to be opened in a lightbox, using one of several supported lightbox plugins, including Easy FancyBox, Simple Lightbox, and FooBox Image Lightbox.
|
177 |
+
|
178 |
+
### Plugin Integrations
|
179 |
+
MetaSlider is integrated with other popular WordPress plugins including WooCommerce, the Events Calendar, and WPML, to enable you to seamlessly show the most engaging content to your audience in a slider, slide show, carousel, or gallery.
|
180 |
+
|
181 |
+
Popular events management plugin The Events Calendar can be used in conjunction with MetaSlider’s new Post Feed Slides. MetaSlider detects if you have The Events Calendar plugin activated and offers you the ability to order by event date so you can show off your upcoming events in a slider, slideshow, or carousel.
|
182 |
+
|
183 |
+
### Advanced Developer Features
|
184 |
+
In addition to being the easiest to use WordPress slider, slideshow, carousel, and gallery plugin, MetaSlider also offers advanced developer features that make Meta Slider the most powerful plugin to create a slider, slideshow, carousel, and gallery:
|
185 |
+
|
186 |
+
* Developer Friendly, with extensive hooks & filters - Meta Slider exposes its functionality through WordPress filters and actions, so you can customise Meta Slider just the way you want
|
187 |
+
* Advanced theme editor to design the perfect slider, slide show, or carousel
|
188 |
+
* WordPress Multi Site compatible
|
189 |
+
|
190 |
+
## Special Thanks to the Sliders that we Support
|
191 |
+
You can read more about them here:
|
192 |
* [Flex Slider](http://flexslider.woothemes.com/)
|
193 |
* [Responsive Slides](http://responsiveslides.com/)
|
194 |
* [Coin Slider](http://workshop.rs/projects/coin-slider/)
|
195 |
* [Nivo Slider](https://github.com/Codeinwp/Nivo-Slider-jQuery)
|
196 |
|
197 |
+
Find out more at [metaslider.com](https://www.metaslider.com/)
|
198 |
|
199 |
Follow us on Twitter: [@wpmetaslider](https://twitter.com/wpmetaslider)
|
200 |
|
201 |
+
### Privacy Policy:
|
202 |
+
MetaSlider uses the Appsero SDK to collect non-sensitive diagnostic data upon a user’s confirmation. This data helps us to troubleshoot problems faster & make product improvements.
|
203 |
+
Meta Slider only collects this diagnostic data when a user allows it via a notice in WP Admin or MetaSlider settings. View our [privacy policy](https://www.metaslider.com/privacy-policy).
|
204 |
|
|
|
205 |
|
206 |
== Installation ==
|
207 |
|
208 |
The easy way:
|
209 |
|
210 |
1. Go to the Plugins Menu in WordPress
|
211 |
+
2. Search for "MetaSlider"
|
212 |
+
3. Click "Install"
|
213 |
|
214 |
The not so easy way:
|
215 |
|
267 |
|
268 |
== Changelog ==
|
269 |
|
270 |
+
= 3.20.3 - 2021/Mar/02 =
|
271 |
+
* FIX: Update responsive slides to improve jQuery compatability
|
272 |
+
* FIX: Updates uasort to be PHP8 compatible
|
273 |
+
* FIX: Fixes a typo in the export callback
|
274 |
|
275 |
= 3.20.2 - 2021/Feb/08 =
|
276 |
* FIX: Removes various PHP notices
|
seasonal-discounts.json
CHANGED
@@ -1,18 +1,18 @@
|
|
1 |
{
|
2 |
"blackfriday": {
|
3 |
-
"discount_code": "
|
4 |
-
"valid_from": "
|
5 |
-
"valid_to": "
|
6 |
},
|
7 |
"christmas": {
|
8 |
-
"discount_code": "
|
9 |
-
"valid_from": "
|
10 |
-
"valid_to": "
|
11 |
},
|
12 |
"newyear": {
|
13 |
-
"discount_code": "
|
14 |
-
"valid_from": "
|
15 |
-
"valid_to": "
|
16 |
},
|
17 |
"spring": {
|
18 |
"discount_code": "springsale2021",
|
1 |
{
|
2 |
"blackfriday": {
|
3 |
+
"discount_code": "blackfridaysale2021",
|
4 |
+
"valid_from": "2021-11-20 00:00:00",
|
5 |
+
"valid_to": "2021-11-30 23:59:59"
|
6 |
},
|
7 |
"christmas": {
|
8 |
+
"discount_code": "christmassale2021",
|
9 |
+
"valid_from": "2021-12-01 00:00:00",
|
10 |
+
"valid_to": "2021-12-25 23:59:59"
|
11 |
},
|
12 |
"newyear": {
|
13 |
+
"discount_code": "newyearsale2022",
|
14 |
+
"valid_from": "2021-12-26 00:00:00",
|
15 |
+
"valid_to": "2022-01-14 23:59:59"
|
16 |
},
|
17 |
"spring": {
|
18 |
"discount_code": "springsale2021",
|