Version Description
- 2020-10-16
- PRO version is here
- bug fixes and improvements
Download this release
Release Info
Developer | WebFactory |
Plugin | Sticky Menu (or Anything!) on Scroll |
Version | 2.25 |
Comparing to | |
See all releases |
Code changes from version 2.23 to 2.25
- assets/css/sticky-anything-admin.css +152 -0
- assets/faq.php +2 -1
- assets/img/wp-sticky-pro.png +0 -0
- assets/js/sticky-anything-admin.js +101 -57
- assets/sidebar.php +1 -0
- readme.txt +16 -7
- sticky-menu-or-anything.php +166 -14
- wp301/wp301.php +1 -1
assets/css/sticky-anything-admin.css
CHANGED
@@ -70,6 +70,7 @@
|
|
70 |
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
71 |
padding: 10px;
|
72 |
font-size: 14px;
|
|
|
73 |
}
|
74 |
|
75 |
.main-sidebar h3 {
|
@@ -269,3 +270,154 @@
|
|
269 |
[tooltip][flow^='right']:hover::after {
|
270 |
animation: tooltips-horz 300ms ease-out forwards;
|
271 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
71 |
padding: 10px;
|
72 |
font-size: 14px;
|
73 |
+
box-sizing: border-box;
|
74 |
}
|
75 |
|
76 |
.main-sidebar h3 {
|
270 |
[tooltip][flow^='right']:hover::after {
|
271 |
animation: tooltips-horz 300ms ease-out forwards;
|
272 |
}
|
273 |
+
|
274 |
+
.sticky-pro-dialog {
|
275 |
+
background-color: white !important;
|
276 |
+
}
|
277 |
+
|
278 |
+
.sticky-pro-dialog .ui-dialog-titlebar {
|
279 |
+
background-color: #FFDE66;
|
280 |
+
border-bottom: none;
|
281 |
+
text-align: center;
|
282 |
+
display: none;
|
283 |
+
}
|
284 |
+
.ui-dialog-content {
|
285 |
+
padding: 0 !important;
|
286 |
+
}
|
287 |
+
.sticky-pro-inside {
|
288 |
+
padding: 20px;
|
289 |
+
}
|
290 |
+
|
291 |
+
.nav-tab-pro {
|
292 |
+
background-color: #FFDE66;
|
293 |
+
}
|
294 |
+
|
295 |
+
.settings_page_stickyanythingmenu a.button-buy {
|
296 |
+
background-color: #B93C24;
|
297 |
+
color: #fff;
|
298 |
+
font-weight: 700;
|
299 |
+
padding: 5px 10px;
|
300 |
+
}
|
301 |
+
|
302 |
+
.settings_page_stickyanythingmenu a.button-buy del {
|
303 |
+
font-weight: normal;
|
304 |
+
}
|
305 |
+
|
306 |
+
.pro-feature {
|
307 |
+
background-color: #FFDE66;
|
308 |
+
padding: 5px;
|
309 |
+
color: #333;
|
310 |
+
text-decoration: none;
|
311 |
+
}
|
312 |
+
|
313 |
+
.pro-feature:hover {
|
314 |
+
background-color: #FFDE66;
|
315 |
+
padding: 5px;
|
316 |
+
color: #333;
|
317 |
+
text-decoration: underline;
|
318 |
+
}
|
319 |
+
|
320 |
+
.center {
|
321 |
+
text-align: center;
|
322 |
+
}
|
323 |
+
|
324 |
+
.sticky-pro-dialog .logo {
|
325 |
+
background-color: #FFDE66;
|
326 |
+
padding: 10px;
|
327 |
+
}
|
328 |
+
|
329 |
+
.sticky-pro-dialog .logo b {
|
330 |
+
font-size: 18px;
|
331 |
+
font-weight: 600;
|
332 |
+
margin-top: 20px;
|
333 |
+
display: inline-block;
|
334 |
+
margin: 10px 0 0 0;
|
335 |
+
line-height: 1.3;
|
336 |
+
}
|
337 |
+
|
338 |
+
.sticky-pro-dialog .logo i {
|
339 |
+
color: #B93C24;
|
340 |
+
font-style: normal;
|
341 |
+
}
|
342 |
+
|
343 |
+
.sticky-pro-dialog .footer {
|
344 |
+
padding: 15px 10px;
|
345 |
+
background-color: #FFDE66;
|
346 |
+
}
|
347 |
+
|
348 |
+
.sticky-pro-dialog {
|
349 |
+
font-size: 14px;
|
350 |
+
}
|
351 |
+
|
352 |
+
#sticky-table {
|
353 |
+
width: 100%;
|
354 |
+
margin: 10px 0 0 0;
|
355 |
+
border-collapse: collapse;
|
356 |
+
}
|
357 |
+
|
358 |
+
#sticky-table td {
|
359 |
+
padding: 7px 10px;
|
360 |
+
border: none;
|
361 |
+
}
|
362 |
+
|
363 |
+
#sticky-table tr:last-child td {
|
364 |
+
text-align: center;
|
365 |
+
}
|
366 |
+
|
367 |
+
#sticky-table .dashicons-yes {
|
368 |
+
color: #30b724;
|
369 |
+
}
|
370 |
+
|
371 |
+
#sticky-table tr:first-child td {
|
372 |
+
color: #B93C24;
|
373 |
+
font-size: 18px;
|
374 |
+
font-weight: 800 !important;
|
375 |
+
padding: 15px 0;
|
376 |
+
}
|
377 |
+
|
378 |
+
s#sticky-table tr td:nth-child(2) {
|
379 |
+
background-color: #FFDE66;
|
380 |
+
}
|
381 |
+
|
382 |
+
#ssticky-table tr td:last-child {
|
383 |
+
background-color: #FFDE66;
|
384 |
+
}
|
385 |
+
|
386 |
+
#sticky-table tr:last-child td {
|
387 |
+
border-top: thin solid #33333355;
|
388 |
+
padding: 20px 0 25px 0;
|
389 |
+
}
|
390 |
+
|
391 |
+
#sticky-table tr:last-child td span {
|
392 |
+
display: block;
|
393 |
+
padding: 0 0 5px 0;
|
394 |
+
font-weight: 700;
|
395 |
+
}
|
396 |
+
|
397 |
+
#sticky-features {
|
398 |
+
width: 100%;
|
399 |
+
padding: 20px 0 0 0;
|
400 |
+
}
|
401 |
+
|
402 |
+
#sticky-features td {
|
403 |
+
padding: 10px 20px;
|
404 |
+
}
|
405 |
+
|
406 |
+
.pro-ad-sidebar {
|
407 |
+
float: right;
|
408 |
+
width: 25%;
|
409 |
+
background: #FFDE66;
|
410 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
411 |
+
padding: 25px;
|
412 |
+
margin: 20px 0 0 0;
|
413 |
+
box-sizing: border-box;
|
414 |
+
}
|
415 |
+
|
416 |
+
.pro-ad-sidebar h3 {
|
417 |
+
margin: 10px 0 0 0;
|
418 |
+
line-height: 1.3;
|
419 |
+
}
|
420 |
+
|
421 |
+
.pro-ad-sidebar a {
|
422 |
+
text-decoration: none;
|
423 |
+
}
|
assets/faq.php
CHANGED
@@ -1,5 +1,6 @@
|
|
1 |
<p><strong><?php _e('Q: I need help please!','sticky-menu-or-anything-on-scroll'); ?></strong><br />
|
2 |
-
|
|
|
3 |
|
4 |
<p><strong><?php _e('Q: I selected a class/ID in the settings screen, but the element doesn\'t stick when I scroll down. Why not?','sticky-menu-or-anything-on-scroll'); ?></strong><br />
|
5 |
<?php _e('First, make sure that if you select the element by its classname, it is preceded by a dot (e.g. ".main-menu"), and if you select it by its ID, that it\'s preceded by a pound/hash/number sign (e.g. "#main-menu"). Also, make sure there is only ONE element on the page with the selector you\'re using. If there is none, or more than one element that matches your selector, nothing will happen.','sticky-menu-or-anything-on-scroll'); ?></p>
|
1 |
<p><strong><?php _e('Q: I need help please!','sticky-menu-or-anything-on-scroll'); ?></strong><br />
|
2 |
+
If you upgrade to WP Sticky PRO you'll have access to <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="support">fast email support</a> directly from plugin devs.<br><br>
|
3 |
+
<?php _e('Please read the FAQ below first and then go to the plugin\'s <a href="https://wordpress.org/support/plugin/sticky-menu-or-anything-on-scroll" target="_blank">community support forum</a> and post a message (include a link to your site). Support is provided on a voluntary basis.','sticky-menu-or-anything-on-scroll'); ?></p>
|
4 |
|
5 |
<p><strong><?php _e('Q: I selected a class/ID in the settings screen, but the element doesn\'t stick when I scroll down. Why not?','sticky-menu-or-anything-on-scroll'); ?></strong><br />
|
6 |
<?php _e('First, make sure that if you select the element by its classname, it is preceded by a dot (e.g. ".main-menu"), and if you select it by its ID, that it\'s preceded by a pound/hash/number sign (e.g. "#main-menu"). Also, make sure there is only ONE element on the page with the selector you\'re using. If there is none, or more than one element that matches your selector, nothing will happen.','sticky-menu-or-anything-on-scroll'); ?></p>
|
assets/img/wp-sticky-pro.png
ADDED
Binary file
|
assets/js/sticky-anything-admin.js
CHANGED
@@ -1,64 +1,108 @@
|
|
1 |
/**
|
2 |
-
*
|
3 |
-
|
4 |
-
|
5 |
-
jQuery(function($) {
|
6 |
-
|
7 |
-
// --- HANDLING THE TABS -----------------------------------
|
8 |
-
|
9 |
-
$('.nav-tab-wrapper a, a.faq').on('click',function(t) {
|
10 |
-
var tab_id = $(this).attr('href').replace('#', '.tab-sticky-');
|
11 |
-
var tab_name = $(this).attr('href').replace('#', '');
|
12 |
-
|
13 |
-
// Set the current tab active
|
14 |
-
$(this).parent().children().removeClass('nav-tab-active');
|
15 |
-
$(this).addClass('nav-tab-active');
|
16 |
-
|
17 |
-
// Show the active content
|
18 |
-
$('.tab-content').addClass('hide');
|
19 |
-
$('.tabs-content div' + tab_id).removeClass('hide');
|
20 |
-
$('input[name="sa_tab"]').val(tab_name);
|
21 |
-
|
22 |
-
// Change the URL
|
23 |
-
var currentURL = window.location.href;
|
24 |
-
if(currentURL.indexOf('&tab')>0) {
|
25 |
-
var newURL = currentURL.substring(0, currentURL.indexOf('&tab')) + '&tab=' + tab_name;
|
26 |
-
} else {
|
27 |
-
var newURL = currentURL + '&tab=' + tab_name;
|
28 |
-
}
|
29 |
-
|
30 |
-
switch(tab_name) {
|
31 |
-
case 'advanced':
|
32 |
-
var tab_title = 'Advanced Settings';
|
33 |
-
break;
|
34 |
-
case 'faq':
|
35 |
-
var tab_title = 'FAQ';
|
36 |
-
break;
|
37 |
-
default:
|
38 |
-
var tab_title = 'Basic Settings';
|
39 |
-
}
|
40 |
-
|
41 |
-
window.history.pushState(tab_title, tab_title, newURL);
|
42 |
-
t.preventDefault();
|
43 |
-
});
|
44 |
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
|
|
|
|
|
|
|
50 |
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
|
61 |
-
|
62 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
});
|
|
|
|
|
|
|
|
|
|
|
|
1 |
/**
|
2 |
+
* Sticky Menu or Anything
|
3 |
+
* (c) WebFactory 2020, https://wpsticky.com/
|
4 |
+
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
6 |
+
jQuery(function ($) {
|
7 |
+
$('.nav-tab-wrapper a, a.faq').not('.nav-tab-pro').on('click', function (t) {
|
8 |
+
var tab_id = $(this).attr('href').replace('#', '.tab-sticky-');
|
9 |
+
var tab_name = $(this).attr('href').replace('#', '');
|
10 |
|
11 |
+
// Set the current tab active
|
12 |
+
$(this).parent().children().removeClass('nav-tab-active');
|
13 |
+
$(this).addClass('nav-tab-active');
|
14 |
|
15 |
+
// Show the active content
|
16 |
+
$('.tab-content').addClass('hide');
|
17 |
+
$('.tabs-content div' + tab_id).removeClass('hide');
|
18 |
+
$('input[name="sa_tab"]').val(tab_name);
|
19 |
+
|
20 |
+
// Change the URL
|
21 |
+
var currentURL = window.location.href;
|
22 |
+
if (currentURL.indexOf('&tab') > 0) {
|
23 |
+
var newURL = currentURL.substring(0, currentURL.indexOf('&tab')) + '&tab=' + tab_name;
|
24 |
+
} else {
|
25 |
+
var newURL = currentURL + '&tab=' + tab_name;
|
26 |
+
}
|
27 |
+
|
28 |
+
switch (tab_name) {
|
29 |
+
case 'advanced':
|
30 |
+
var tab_title = 'Advanced Settings';
|
31 |
+
break;
|
32 |
+
case 'faq':
|
33 |
+
var tab_title = 'Support/FAQ';
|
34 |
+
break;
|
35 |
+
default:
|
36 |
+
var tab_title = 'Basic Settings';
|
37 |
+
}
|
38 |
+
|
39 |
+
window.history.pushState(tab_title, tab_title, newURL);
|
40 |
+
t.preventDefault();
|
41 |
+
});
|
42 |
+
|
43 |
+
$('a.faq').on('click', function (t) {
|
44 |
+
$('.nav-tab-wrapper a').removeClass('nav-tab-active');
|
45 |
+
$('.nav-tab-wrapper a[href="#faq"]').addClass('nav-tab-active');
|
46 |
+
});
|
47 |
+
|
48 |
+
$('#sa_legacymode').on('change', function () {
|
49 |
+
if ($('#sa_legacymode').is(':checked')) {
|
50 |
+
$('#row-dynamic-mode').removeClass('disabled-feature');
|
51 |
+
$('#row-dynamic-mode .showhide').slideDown();
|
52 |
+
} else {
|
53 |
+
$('#row-dynamic-mode').addClass('disabled-feature');
|
54 |
+
$('#row-dynamic-mode .showhide').slideUp();
|
55 |
+
}
|
56 |
+
});
|
57 |
|
58 |
+
$('.form-table').on('click', '.disabled-feature', function (e) {
|
59 |
+
e.preventDefault();
|
60 |
+
});
|
61 |
+
|
62 |
+
$('.open-sticky-pro-dialog').on('click', function(e) {
|
63 |
+
e.preventDefault();
|
64 |
+
|
65 |
+
$('#sticky-pro-dialog').dialog('open');
|
66 |
+
|
67 |
+
pro_feature = $(this).data('pro-feature');
|
68 |
+
if (!pro_feature) {
|
69 |
+
pro_feature = 'unknown';
|
70 |
+
}
|
71 |
+
|
72 |
+
$('.button-buy').each(function(ind, el) {
|
73 |
+
tmp = $(el).data('href-org');
|
74 |
+
tmp = tmp.replace('pricing-table', pro_feature);
|
75 |
+
$(el).attr('href', tmp);
|
76 |
});
|
77 |
+
|
78 |
+
return false;
|
79 |
+
});
|
80 |
+
|
81 |
+
$('#sticky-pro-dialog').dialog({
|
82 |
+
dialogClass: 'wp-dialog sticky-pro-dialog',
|
83 |
+
modal: true,
|
84 |
+
resizable: false,
|
85 |
+
width: 750,
|
86 |
+
height: 'auto',
|
87 |
+
show: 'fade',
|
88 |
+
hide: 'fade',
|
89 |
+
close: function (event, ui) {
|
90 |
+
},
|
91 |
+
open: function (event, ui) {
|
92 |
+
$(this).siblings().find('span.ui-dialog-title').html('WP Sticky PRO is here!');
|
93 |
+
sticky_fix_dialog_close(event, ui);
|
94 |
+
},
|
95 |
+
autoOpen: false,
|
96 |
+
closeOnEscape: true,
|
97 |
+
});
|
98 |
+
|
99 |
+
if (wpsticky.auto_open_pro_dialog) {
|
100 |
+
$('#sticky-pro-dialog').dialog('open');
|
101 |
+
}
|
102 |
});
|
103 |
+
|
104 |
+
function sticky_fix_dialog_close(event, ui) {
|
105 |
+
jQuery('.ui-widget-overlay').bind('click', function () {
|
106 |
+
jQuery('#' + event.target.id).dialog('close');
|
107 |
+
});
|
108 |
+
} // sticky_fix_dialog_close
|
assets/sidebar.php
CHANGED
@@ -13,3 +13,4 @@ Glad to see Sticky is helping you make things stick 😎<br>Please help other us
|
|
13 |
</div>
|
14 |
|
15 |
<p><a href="https://wordpress.org/support/plugin/sticky-menu-or-anything-on-scroll/reviews/#new-post" class="button button-primary" target="_blank">I want to rate & keep Sticky Menu free!</a> <a href="<?php echo $dismiss_url; ?>">I already rated it</a></p>
|
|
13 |
</div>
|
14 |
|
15 |
<p><a href="https://wordpress.org/support/plugin/sticky-menu-or-anything-on-scroll/reviews/#new-post" class="button button-primary" target="_blank">I want to rate & keep Sticky Menu free!</a> <a href="<?php echo $dismiss_url; ?>">I already rated it</a></p>
|
16 |
+
|
readme.txt
CHANGED
@@ -1,10 +1,11 @@
|
|
1 |
=== Sticky Menu, Sticky Header (or anything!) on Scroll ===
|
2 |
-
Contributors:
|
3 |
Tags: sticky header, sticky menu, sticky, header, sticky widget, floating menu, menu
|
4 |
-
Plugin URI: https://
|
5 |
Requires at least: 3.6
|
6 |
-
Tested up to: 5.
|
7 |
-
Stable tag: 2.
|
|
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -12,13 +13,13 @@ Sticky Menu or Sticky Header lets you stick any element at the top of the screen
|
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
-
The Sticky Menu (or Sticky Header) On Scroll plugin allows you to **make any element on your pages "sticky"** as soon as it hits the top of the page when you scroll down. Although this is commonly used to keep menus at the top of your page to create floating menus, the plugin allows you to make any element sticky. Make a sticky header, stick menu, sticky widget, sticky logo, sticky call to action or a floating menu.
|
16 |
|
17 |
-
A little bit of basic HTML/CSS knowledge is required. You just need to know how to pick the right selector for the element you want to make sticky, and you need to be sure it's a unique selector. Sometimes a simple selector like "nav", "#main-menu", ".menu-main-menu-1" is enough. Other times you will have to be more detailed and use a more specific selector such as "header > ul:first-child" or "nav.top .menu-header ul.main".
|
18 |
|
19 |
= Features =
|
20 |
|
21 |
-
* **Any element can stick**: although common use is for navigation menus, or header the plugin will let you pick any unique element with a name, class or ID to stick at the top of the page once you scroll past it. Use it for sticky widget, sticky sidebar, sticky header, sticky menu, sticky header, sticky call-to-action box, sticky banner ad, etc.
|
22 |
* **Positioning from top**: optionally, you can add any amount of space between the sticky element and the top of the page, so that the element is not always stuck at the "ceiling" of the page.
|
23 |
* **Enable for certain screen sizes only**: optionally, you can set a minimum and/or maximum screen size where the stickiness should work. This can be handy if you have a responsive site and you don't want your element to be sticky on smaller screens, for example.
|
24 |
* **Push-up element**: optionally, you can pick any other element lower on the page that will push the sticky element up again (for example a sidebar widget).
|
@@ -40,6 +41,9 @@ A little bit of basic HTML/CSS knowledge is required. You just need to know how
|
|
40 |
|
41 |
== Frequently Asked Questions ==
|
42 |
|
|
|
|
|
|
|
43 |
= I selected a class/ID in the settings screen, but the element doesn't stick when I scroll down. Why not? =
|
44 |
First, make sure that if you select the element by its class name, it is preceded by a dot (e.g. ".main-menu"), and if you select it by its ID, that it's preceded by a pound/hash/number sign (e.g. "#main-menu"). Also, make sure there is only ONE element on the page with the selector you're using. If there is none, or more than one element that matches your selector, nothing will happen.
|
45 |
|
@@ -127,6 +131,11 @@ Please go to the plugin's [support forum on WordPress.org](https://wordpress.org
|
|
127 |
|
128 |
== Changelog ==
|
129 |
|
|
|
|
|
|
|
|
|
|
|
130 |
= 2.23 =
|
131 |
* 2020-10-01
|
132 |
* more CSS fixes
|
1 |
=== Sticky Menu, Sticky Header (or anything!) on Scroll ===
|
2 |
+
Contributors: WebFactory
|
3 |
Tags: sticky header, sticky menu, sticky, header, sticky widget, floating menu, menu
|
4 |
+
Plugin URI: https://wpsticky.com/
|
5 |
Requires at least: 3.6
|
6 |
+
Tested up to: 5.6
|
7 |
+
Stable tag: 2.25
|
8 |
+
Requires PHP: 5.2
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
13 |
|
14 |
== Description ==
|
15 |
|
16 |
+
The WP Sticky Menu (or Sticky Header) On Scroll plugin allows you to **make any element on your pages "sticky"** as soon as it hits the top of the page when you scroll down. Although this is commonly used to keep menus at the top of your page to create floating menus, the plugin allows you to make any element sticky. Make a sticky header, stick menu, sticky widget, sticky logo, sticky call to action or a floating menu.
|
17 |
|
18 |
+
A little bit of basic HTML/CSS knowledge is required. You just need to know how to pick the right selector for the element you want to make sticky, and you need to be sure it's a unique selector. Sometimes a simple selector like "nav", "#main-menu", ".menu-main-menu-1" is enough. Other times you will have to be more detailed and use a more specific selector such as "header > ul:first-child" or "nav.top .menu-header ul.main". If you don't like messing with any code check out out the visual element picker in <a href="https://wpsticky.com/?ref=wp-org-readme">WP Sticky PRO</a>.
|
19 |
|
20 |
= Features =
|
21 |
|
22 |
+
* **Any element can stick**: although common use is for navigation menus, or header the plugin will let you pick any unique element with a name, class or ID to stick at the top of the page once you scroll past it. Use it for sticky widget, sticky sidebar, sticky header, sticky menu, sticky header, sticky call-to-action box, sticky banner ad, etc. Need to make <a href="https://wpsticky.com/?ref=wp-org-readme">multiple elements sticky</a>? Check out WP Sticky PRO.
|
23 |
* **Positioning from top**: optionally, you can add any amount of space between the sticky element and the top of the page, so that the element is not always stuck at the "ceiling" of the page.
|
24 |
* **Enable for certain screen sizes only**: optionally, you can set a minimum and/or maximum screen size where the stickiness should work. This can be handy if you have a responsive site and you don't want your element to be sticky on smaller screens, for example.
|
25 |
* **Push-up element**: optionally, you can pick any other element lower on the page that will push the sticky element up again (for example a sidebar widget).
|
41 |
|
42 |
== Frequently Asked Questions ==
|
43 |
|
44 |
+
= Can I make multiple elements sticky?
|
45 |
+
Sure, <a href="https://wpsticky.com/?ref=wp-org-readme">WP Sticky PRO</a> has that option. You can make as many elements sticky as you like and configure settings individually for each element.
|
46 |
+
|
47 |
= I selected a class/ID in the settings screen, but the element doesn't stick when I scroll down. Why not? =
|
48 |
First, make sure that if you select the element by its class name, it is preceded by a dot (e.g. ".main-menu"), and if you select it by its ID, that it's preceded by a pound/hash/number sign (e.g. "#main-menu"). Also, make sure there is only ONE element on the page with the selector you're using. If there is none, or more than one element that matches your selector, nothing will happen.
|
49 |
|
131 |
|
132 |
== Changelog ==
|
133 |
|
134 |
+
= 2.25 =
|
135 |
+
* 2020-10-16
|
136 |
+
* PRO version is here
|
137 |
+
* bug fixes and improvements
|
138 |
+
|
139 |
= 2.23 =
|
140 |
* 2020-10-01
|
141 |
* more CSS fixes
|
sticky-menu-or-anything.php
CHANGED
@@ -1,17 +1,20 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Sticky Menu (or Anything!) on Scroll
|
4 |
-
Plugin URI: https://
|
5 |
Description: Pick any element on the page, and it will stick when it reaches the top of the page when you scroll down. Handy for navigation menus, but can be used for any element on the page.
|
6 |
Author: WebFactory Ltd
|
7 |
Author URI: https://www.webfactoryltd.com/
|
8 |
-
Version: 2.
|
|
|
|
|
|
|
9 |
*/
|
10 |
|
11 |
defined('ABSPATH') or die('INSERT COIN');
|
12 |
|
13 |
require_once 'wp301/wp301.php';
|
14 |
-
new wf_wp301(__FILE__, '
|
15 |
|
16 |
/**
|
17 |
* === FUNCTIONS ========================================================================================
|
@@ -23,7 +26,7 @@ new wf_wp301(__FILE__, 'settings_page_stickyanythingmenu');
|
|
23 |
*/
|
24 |
if (!function_exists('sticky_anthing_default_options')) {
|
25 |
function sticky_anthing_default_options() {
|
26 |
-
$versionNum = '2.
|
27 |
if (get_option('sticky_anything_options') === false) {
|
28 |
$new_options['sa_version'] = $versionNum;
|
29 |
$new_options['sa_element'] = '';
|
@@ -36,7 +39,8 @@ if (!function_exists('sticky_anthing_default_options')) {
|
|
36 |
$new_options['sa_dynamicmode'] = false;
|
37 |
$new_options['sa_debugmode'] = false;
|
38 |
$new_options['sa_pushup'] = '';
|
39 |
-
|
|
|
40 |
add_option('sticky_anything_options',$new_options);
|
41 |
}
|
42 |
}
|
@@ -199,7 +203,8 @@ if (!function_exists('sticky_anything_config_page')) {
|
|
199 |
<h2 class="nav-tab-wrapper">
|
200 |
<a class="nav-tab <?php if ($activeTab == 'main') { echo 'nav-tab-active'; } ?>" href="#main"><?php _e('Basic settings','sticky-menu-or-anything-on-scroll'); ?></a>
|
201 |
<a class="nav-tab <?php if ($activeTab == 'advanced') { echo 'nav-tab-active'; } ?>" href="#advanced"><?php _e('Advanced settings','sticky-menu-or-anything-on-scroll'); ?></a>
|
202 |
-
|
|
|
203 |
</h2>
|
204 |
|
205 |
<br>
|
@@ -298,15 +303,30 @@ if (!function_exists('sticky_anything_config_page')) {
|
|
298 |
if (@$sticky_anything_options['sa_element'] != '#NO-ELEMENT') {
|
299 |
echo esc_html( @$sticky_anything_options['sa_element'] );
|
300 |
}
|
301 |
-
|
|
|
302 |
</td>
|
303 |
-
|
304 |
|
|
|
|
|
|
|
|
|
|
|
|
|
305 |
|
306 |
<tr>
|
307 |
<th scope="row"><label for="sa_topspace"><?php _e('Space between top of page and sticky element: (optional)','sticky-menu-or-anything-on-scroll'); ?></label> <span tooltip="<?php _e('If you don\'t want the element to be sticky at the very top of the page, but a little lower, add the number of pixels that should be between your element and the \'ceiling\' of the page.','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
308 |
<td>
|
309 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
310 |
</td>
|
311 |
</tr>
|
312 |
|
@@ -314,7 +334,17 @@ if (!function_exists('sticky_anything_config_page')) {
|
|
314 |
<th scope="row"><?php _e('Check for Admin Toolbar:','sticky-menu-or-anything-on-scroll'); ?> <span tooltip="<?php _e('If the sticky element gets obscured by the Administrator Toolbar for logged in users (or vice versa), check this box.','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
315 |
<td>
|
316 |
<input type="checkbox" id="sa_adminbar" name="sa_adminbar" <?php if ($sticky_anything_options['sa_adminbar'] ) echo ' checked="checked" ';?> />
|
317 |
-
<label for="sa_adminbar"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
318 |
</td>
|
319 |
</tr>
|
320 |
|
@@ -358,7 +388,8 @@ if (!function_exists('sticky_anything_config_page')) {
|
|
358 |
if ($sticky_anything_options['sa_pushup'] != '#NO-ELEMENT') {
|
359 |
echo esc_html( $sticky_anything_options['sa_pushup'] );
|
360 |
}
|
361 |
-
|
|
|
362 |
</td>
|
363 |
</tr>
|
364 |
|
@@ -369,7 +400,19 @@ if (!function_exists('sticky_anything_config_page')) {
|
|
369 |
<label for="sa_legacymode"><strong><?php _e('Legacy Mode (only recommended if you upgraded from earlier version).','sticky-menu-or-anything-on-scroll'); ?></strong></label>
|
370 |
<p class="description"><?php _e('In version 2.0, a new/better method for making elements sticky was introduced. However, if you upgraded this plugin from an earlier version, and the old method always worked for you, there is no need to use the new method and you should keep this option checked.<br>More information about this setting can be found in the <a href="#faq" class="faq">FAQ</a>.','sticky-menu-or-anything-on-scroll'); ?></p>
|
371 |
</td>
|
372 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
373 |
|
374 |
<tr id="row-dynamic-mode" <?php if ($sticky_anything_options['sa_legacymode'] == false ) echo 'class="disabled-feature"';?>>
|
375 |
<th scope="row"><div class="showhide" <?php if ($sticky_anything_options['sa_legacymode'] == false ) echo 'style="display:none;"';?>><?php _e('Dynamic mode:','sticky-menu-or-anything-on-scroll'); ?> <span tooltip="<?php _e('When Dynamic Mode is OFF, a cloned element will be created upon page load. If this mode is ON, a cloned element will be created every time your scrolled position hits the \'sticky\' point (option available in Legacy Mode only).','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></div></th>
|
@@ -419,8 +462,17 @@ if (!function_exists('sticky_anything_config_page')) {
|
|
419 |
include 'assets/sidebar.php';
|
420 |
echo '</div>';
|
421 |
}
|
|
|
422 |
?>
|
423 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
424 |
</div>
|
425 |
|
426 |
<?php
|
@@ -543,14 +595,113 @@ if (!function_exists('sticky_anything_styles')) {
|
|
543 |
return;
|
544 |
}
|
545 |
|
|
|
|
|
546 |
wp_register_script('stickyAnythingAdminScript', plugins_url('/assets/js/sticky-anything-admin.js', __FILE__), array( 'jquery' ), '2.1.1');
|
547 |
wp_enqueue_script('stickyAnythingAdminScript');
|
548 |
|
549 |
wp_register_style('stickyAnythingAdminStyle', plugins_url('/assets/css/sticky-anything-admin.css', __FILE__) );
|
550 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
551 |
}
|
552 |
}
|
553 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
554 |
/**
|
555 |
* Helper function for adding plugins to featured list
|
556 |
*
|
@@ -653,7 +804,8 @@ register_activation_hook( __FILE__, 'sticky_anthing_default_options' );
|
|
653 |
add_action('init','sticky_anything_update',1);
|
654 |
add_action('wp_enqueue_scripts', 'load_sticky_anything');
|
655 |
add_action('admin_menu', 'sticky_anything_menu');
|
656 |
-
add_action('admin_init', 'sticky_anything_admin_init'
|
|
|
657 |
add_action('admin_enqueue_scripts', 'sticky_anything_styles' );
|
658 |
add_filter("plugin_action_links_$plugin", 'sticky_anything_settings_link' );
|
659 |
add_filter('install_plugins_table_api_args_featured', 'sticky_featured_plugins_tab');
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Sticky Menu (or Anything!) on Scroll
|
4 |
+
Plugin URI: https://wpsticky.com/
|
5 |
Description: Pick any element on the page, and it will stick when it reaches the top of the page when you scroll down. Handy for navigation menus, but can be used for any element on the page.
|
6 |
Author: WebFactory Ltd
|
7 |
Author URI: https://www.webfactoryltd.com/
|
8 |
+
Version: 2.25
|
9 |
+
Requires at least: 3.6
|
10 |
+
Tested up to: 5.6
|
11 |
+
Requires PHP: 5.2
|
12 |
*/
|
13 |
|
14 |
defined('ABSPATH') or die('INSERT COIN');
|
15 |
|
16 |
require_once 'wp301/wp301.php';
|
17 |
+
new wf_wp301(__FILE__, 'skip_plugin_page');
|
18 |
|
19 |
/**
|
20 |
* === FUNCTIONS ========================================================================================
|
26 |
*/
|
27 |
if (!function_exists('sticky_anthing_default_options')) {
|
28 |
function sticky_anthing_default_options() {
|
29 |
+
$versionNum = '2.25';
|
30 |
if (get_option('sticky_anything_options') === false) {
|
31 |
$new_options['sa_version'] = $versionNum;
|
32 |
$new_options['sa_element'] = '';
|
39 |
$new_options['sa_dynamicmode'] = false;
|
40 |
$new_options['sa_debugmode'] = false;
|
41 |
$new_options['sa_pushup'] = '';
|
42 |
+
$new_options['sa_hide_review_notification'] = false;
|
43 |
+
$new_options['sa_dismiss_upsell_auto_open'] = false;
|
44 |
add_option('sticky_anything_options',$new_options);
|
45 |
}
|
46 |
}
|
203 |
<h2 class="nav-tab-wrapper">
|
204 |
<a class="nav-tab <?php if ($activeTab == 'main') { echo 'nav-tab-active'; } ?>" href="#main"><?php _e('Basic settings','sticky-menu-or-anything-on-scroll'); ?></a>
|
205 |
<a class="nav-tab <?php if ($activeTab == 'advanced') { echo 'nav-tab-active'; } ?>" href="#advanced"><?php _e('Advanced settings','sticky-menu-or-anything-on-scroll'); ?></a>
|
206 |
+
<a class="nav-tab <?php if ($activeTab == 'faq') { echo ' nav-tab-active'; } ?>" href="#faq"><?php _e('Support/FAQ','sticky-menu-or-anything-on-scroll'); ?></a>
|
207 |
+
<a class="nav-tab nav-tab-pro open-sticky-pro-dialog" href="#" data-pro-feature="tab">Get Sticky PRO</a>
|
208 |
</h2>
|
209 |
|
210 |
<br>
|
303 |
if (@$sticky_anything_options['sa_element'] != '#NO-ELEMENT') {
|
304 |
echo esc_html( @$sticky_anything_options['sa_element'] );
|
305 |
}
|
306 |
+
?>"/> <em><?php _e('(choose ONE element, e.g. <strong>#main-navigation</strong>, OR <strong>.main-menu-1</strong>, OR <strong>header nav</strong>, etc.)','sticky-menu-or-anything-on-scroll'); ?></em>
|
307 |
+
<p>Don't know the element's ID or class? Don't even know what that is? Use the <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="visual-elements-picker">visual element picker</a> and just point to the element you want.</p>
|
308 |
</td>
|
309 |
+
</tr>
|
310 |
|
311 |
+
<tr>
|
312 |
+
<th scope="row"><label for=""><?php _e('Add Another Sticky Element:','sticky-menu-or-anything-on-scroll'); ?></label> <span tooltip="<?php _e('Need more than one element sticky on your site?','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></span></th>
|
313 |
+
<td>
|
314 |
+
<p>Need two, three or ten elements on the site to be sticky? Upgrade to WP Sticky PRO and <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="multiple-elements">make as many elements sticky as you need</a> and configure settings for each element individually.</p>
|
315 |
+
</td>
|
316 |
+
</tr>
|
317 |
|
318 |
<tr>
|
319 |
<th scope="row"><label for="sa_topspace"><?php _e('Space between top of page and sticky element: (optional)','sticky-menu-or-anything-on-scroll'); ?></label> <span tooltip="<?php _e('If you don\'t want the element to be sticky at the very top of the page, but a little lower, add the number of pixels that should be between your element and the \'ceiling\' of the page.','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
320 |
<td>
|
321 |
+
<input type="number" id="sa_topspace" name="sa_topspace" value="<?php echo esc_html( @$sticky_anything_options['sa_topspace'] ); ?>" style="width:80px;"> pixels
|
322 |
+
</td>
|
323 |
+
</tr>
|
324 |
+
|
325 |
+
<tr>
|
326 |
+
<th scope="row"><label for="sa_opacity"><?php _e('Sticky element opacity when scrolling: (optional)','sticky-menu-or-anything-on-scroll'); ?></label> <span tooltip="<?php _e('Sticky element opacity when element is sticky/scrolling','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
327 |
+
<td>
|
328 |
+
<input type="number" id="sa_opacity" name="sa_opacity" value="100" style="width:80px;" disabled> %
|
329 |
+
<em>This option is available in <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="opacity">WP Sticky PRO</a>.</em>
|
330 |
</td>
|
331 |
</tr>
|
332 |
|
334 |
<th scope="row"><?php _e('Check for Admin Toolbar:','sticky-menu-or-anything-on-scroll'); ?> <span tooltip="<?php _e('If the sticky element gets obscured by the Administrator Toolbar for logged in users (or vice versa), check this box.','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
335 |
<td>
|
336 |
<input type="checkbox" id="sa_adminbar" name="sa_adminbar" <?php if ($sticky_anything_options['sa_adminbar'] ) echo ' checked="checked" ';?> />
|
337 |
+
<label for="sa_adminbar"><?php _e('Move the sticky element down a little if there is an Administrator Toolbar at the top (for logged in users).','sticky-menu-or-anything-on-scroll'); ?></label>
|
338 |
+
</td>
|
339 |
+
</tr>
|
340 |
+
|
341 |
+
<tr>
|
342 |
+
<th scope="row"><label for="sa_effects"><?php _e('Effects:','sticky-menu-or-anything-on-scroll'); ?></label> <span tooltip="<?php _e('Effects are added to the sticky element when scrolling','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
343 |
+
<td>
|
344 |
+
<input type="checkbox" disabled> <label>Fade-in</label><br>
|
345 |
+
<input type="checkbox" disabled> <label>Slide-down</label>
|
346 |
+
<br>
|
347 |
+
<p>Effects are available in <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="effects">WP Sticky PRO</a>.</p>
|
348 |
</td>
|
349 |
</tr>
|
350 |
|
388 |
if ($sticky_anything_options['sa_pushup'] != '#NO-ELEMENT') {
|
389 |
echo esc_html( $sticky_anything_options['sa_pushup'] );
|
390 |
}
|
391 |
+
?>"/> <em><?php _e('(choose ONE element, e.g. <strong>#footer</strong>, OR <strong>.widget-bottom</strong>, etc.)','sticky-menu-or-anything-on-scroll'); ?></em>
|
392 |
+
<p>Don't know the element's ID or class? Don't even know what that is? Use the <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="visual-elements-picker-2">visual element picker</a> and just point to the element you want.</p>
|
393 |
</td>
|
394 |
</tr>
|
395 |
|
400 |
<label for="sa_legacymode"><strong><?php _e('Legacy Mode (only recommended if you upgraded from earlier version).','sticky-menu-or-anything-on-scroll'); ?></strong></label>
|
401 |
<p class="description"><?php _e('In version 2.0, a new/better method for making elements sticky was introduced. However, if you upgraded this plugin from an earlier version, and the old method always worked for you, there is no need to use the new method and you should keep this option checked.<br>More information about this setting can be found in the <a href="#faq" class="faq">FAQ</a>.','sticky-menu-or-anything-on-scroll'); ?></p>
|
402 |
</td>
|
403 |
+
</tr>
|
404 |
+
|
405 |
+
<tr>
|
406 |
+
<th scope="row"><?php _e('Don\'t use sticky on selected pages/posts:','sticky-menu-or-anything-on-scroll'); ?> <span tooltip="<?php _e('Pick pages, posts, categories, tags, or post types where sticky will not be active.','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></th>
|
407 |
+
<td>
|
408 |
+
Posts: <select disabled><option>This option is available in the PRO version</option></select><br>
|
409 |
+
Pages: <select disabled><option>This option is available in the PRO version</option></select><br>
|
410 |
+
Categories: <select disabled><option>This option is available in the PRO version</option></select><br>
|
411 |
+
Tags: <select disabled><option>This option is available in the PRO version</option></select><br>
|
412 |
+
Post types: <select disabled><option>This option is available in the PRO version</option></select>
|
413 |
+
<p>If you need sticky elements only on some pages instead of the whole site check out <a href="#" class="open-sticky-pro-dialog pro-feature" data-pro-feature="page-picker">WP Sticky PRO</a>.</p>
|
414 |
+
</td>
|
415 |
+
</tr>
|
416 |
|
417 |
<tr id="row-dynamic-mode" <?php if ($sticky_anything_options['sa_legacymode'] == false ) echo 'class="disabled-feature"';?>>
|
418 |
<th scope="row"><div class="showhide" <?php if ($sticky_anything_options['sa_legacymode'] == false ) echo 'style="display:none;"';?>><?php _e('Dynamic mode:','sticky-menu-or-anything-on-scroll'); ?> <span tooltip="<?php _e('When Dynamic Mode is OFF, a cloned element will be created upon page load. If this mode is ON, a cloned element will be created every time your scrolled position hits the \'sticky\' point (option available in Legacy Mode only).','sticky-menu-or-anything-on-scroll'); ?>"><span class="dashicons dashicons-editor-help"></span></a></div></th>
|
462 |
include 'assets/sidebar.php';
|
463 |
echo '</div>';
|
464 |
}
|
465 |
+
$plugin_url = plugin_dir_url(__FILE__);
|
466 |
?>
|
467 |
|
468 |
+
<div class="pro-ad-sidebar">
|
469 |
+
<a title="WP Sticky PRO" href="#" class="open-sticky-pro-dialog" data-pro-feature="sidebar">
|
470 |
+
<div class="inner center logo">
|
471 |
+
<img style="max-height: 100px;" src="<?php echo $plugin_url; ?>assets/img/wp-sticky-pro.png" alt="WP Sticky PRO" title="WP Sticky PRO"><br>
|
472 |
+
<h3>WP Sticky PRO is here!<br>Grab the <u>50% OFF</u> launch DISCOUNT 🚀</h3>
|
473 |
+
</div></a>
|
474 |
+
</div>
|
475 |
+
|
476 |
</div>
|
477 |
|
478 |
<?php
|
595 |
return;
|
596 |
}
|
597 |
|
598 |
+
$sticky_anything_options = get_option( 'sticky_anything_options' );
|
599 |
+
|
600 |
wp_register_script('stickyAnythingAdminScript', plugins_url('/assets/js/sticky-anything-admin.js', __FILE__), array( 'jquery' ), '2.1.1');
|
601 |
wp_enqueue_script('stickyAnythingAdminScript');
|
602 |
|
603 |
wp_register_style('stickyAnythingAdminStyle', plugins_url('/assets/css/sticky-anything-admin.css', __FILE__) );
|
604 |
+
wp_enqueue_style('stickyAnythingAdminStyle');
|
605 |
+
|
606 |
+
wp_enqueue_style('wp-jquery-ui-dialog');
|
607 |
+
wp_enqueue_script('jquery-ui-dialog');
|
608 |
+
|
609 |
+
$js_vars = array(
|
610 |
+
'nonce_wp301_promo_submit' => wp_create_nonce('wp301_submit'),
|
611 |
+
'nonce_wp301_promo_dismiss' => wp_create_nonce('wp301_dismiss'),
|
612 |
+
'nonce_wp301_upsell_dismiss' => wp_create_nonce('wp301_dismiss'),
|
613 |
+
'auto_open_pro_dialog' => empty($sticky_anything_options['sa_dismiss_upsell_auto_open']),
|
614 |
+
);
|
615 |
+
|
616 |
+
wp_localize_script('jquery-ui-dialog', 'wpsticky', $js_vars);
|
617 |
+
|
618 |
+
$sticky_anything_options['sa_dismiss_upsell_auto_open'] = true;
|
619 |
+
update_option('sticky_anything_options', $sticky_anything_options);
|
620 |
}
|
621 |
}
|
622 |
|
623 |
+
function sticky_anything_admin_footer() {
|
624 |
+
$screen = get_current_screen();
|
625 |
+
if ($screen->id != 'settings_page_stickyanythingmenu') {
|
626 |
+
return;
|
627 |
+
}
|
628 |
+
|
629 |
+
$out = '';
|
630 |
+
$out .= '<div id="sticky-pro-dialog" style="display: none;" title="WP Sticky PRO is here!"><span class="ui-helper-hidden-accessible"><input type="text"/></span>';
|
631 |
+
|
632 |
+
$plugin_url = plugin_dir_url(__FILE__);
|
633 |
+
|
634 |
+
$out .= '<div class="center logo"><a href="https://wpsticky.com/?ref=sticky-free-popup" target="_blank"><img style="max-height: 100px;" src="' . $plugin_url . 'assets/img/wp-sticky-pro.png' . '" alt="WP Sticky PRO" title="WP Sticky PRO"></a><br>
|
635 |
+
<b>WP Sticky PRO is here!<br>Grab the <i>50% OFF</i> launch DISCOUNT 🚀</b></div>';
|
636 |
+
|
637 |
+
$out .= '<table id="sticky-table">';
|
638 |
+
$out .= '<tr>';
|
639 |
+
$out .= '<td class="center">Lifetime<br>Single License</td>';
|
640 |
+
$out .= '<td class="center">Lifetime<br>Team License</td>';
|
641 |
+
$out .= '<td class="center">Lifetime<br>Agency License</td>';
|
642 |
+
$out .= '</tr>';
|
643 |
+
|
644 |
+
$out .= '<tr>';
|
645 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span><b>1 Site License</b></td>';
|
646 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span><b>3 Sites License</b></td>';
|
647 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span><b>100 Sites License</b></td>';
|
648 |
+
$out .= '</tr>';
|
649 |
+
|
650 |
+
$out .= '<tr>';
|
651 |
+
$out .= '<td><span class="dashicons dashicons-no"></span>Install on Client Sites</td>';
|
652 |
+
$out .= '<td><span class="dashicons dashicons-no"></span>Install on Client Sites</td>';
|
653 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Install on Client Sites</td>';
|
654 |
+
$out .= '</tr>';
|
655 |
+
|
656 |
+
$out .= '<tr>';
|
657 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>One Time Payment</td>';
|
658 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>One Time Payment</td>';
|
659 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>One Time Payment</td>';
|
660 |
+
$out .= '</tr>';
|
661 |
+
|
662 |
+
$out .= '<tr>';
|
663 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Lifetime Updates & Support</td>';
|
664 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Lifetime Updates & Support</td>';
|
665 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Lifetime Updates & Support</td>';
|
666 |
+
$out .= '</tr>';
|
667 |
+
|
668 |
+
$out .= '<tr>';
|
669 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>All Plugin Features</td>';
|
670 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>All Plugin Features</td>';
|
671 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>All Plugin Features</td>';
|
672 |
+
$out .= '</tr>';
|
673 |
+
|
674 |
+
$out .= '<tr>';
|
675 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Unlimited Sticky Elements</td>';
|
676 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Unlimited Sticky Elements</td>';
|
677 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Unlimited Sticky Elements</td>';
|
678 |
+
$out .= '</tr>';
|
679 |
+
|
680 |
+
$out .= '<tr>';
|
681 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Visual Elements Picker</td>';
|
682 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Visual Elements Picker</td>';
|
683 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Visual Elements Picker</td>';
|
684 |
+
$out .= '</tr>';
|
685 |
+
|
686 |
+
$out .= '<tr>';
|
687 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Advanced Options & Effects</td>';
|
688 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Advanced Options & Effects</td>';
|
689 |
+
$out .= '<td><span class="dashicons dashicons-yes"></span>Advanced Options & Effects</td>';
|
690 |
+
$out .= '</tr>';
|
691 |
+
|
692 |
+
$out .= '<tr>';
|
693 |
+
$out .= '<td><span>20% discount</span><a class="button button-buy" data-href-org="https://wpsticky.com/buy/?product=single-launch&ref=pricing-table" href="https://wpsticky.com/buy/?product=single-launch&ref=pricing-table" target="_blank">BUY NOW <del>$49</del> $39</a></td>';
|
694 |
+
$out .= '<td><span>25% discount</span><a class="button button-buy" data-href-org="https://wpsticky.com/buy/?product=team-launch&ref=pricing-table" href="https://wpsticky.com/buy/?product=team-launch&ref=pricing-table" target="_blank">BUY NOW <del>$79</del> $59</a></td>';
|
695 |
+
$out .= '<td><span>50% discount</span><a class="button button-buy" data-href-org="https://wpsticky.com/buy/?product=agency-launch&ref=pricing-table" href="https://wpsticky.com/buy/?product=agency-launch&ref=pricing-table" target="_blank">BUY NOW <del>$199</del> $99</a></td>';
|
696 |
+
$out .= '</tr>';
|
697 |
+
|
698 |
+
$out .= '</table>';
|
699 |
+
|
700 |
+
$out .= '<div class="center footer"><b>100% No-Risk Money Back Guarantee!</b>. If you don\'t like the plugin over the next 7 days, we will happily refund 100% of your money. No questions asked!</div>';
|
701 |
+
|
702 |
+
echo $out;
|
703 |
+
} // sticky_anything_admin_footer
|
704 |
+
|
705 |
/**
|
706 |
* Helper function for adding plugins to featured list
|
707 |
*
|
804 |
add_action('init','sticky_anything_update',1);
|
805 |
add_action('wp_enqueue_scripts', 'load_sticky_anything');
|
806 |
add_action('admin_menu', 'sticky_anything_menu');
|
807 |
+
add_action('admin_init', 'sticky_anything_admin_init');
|
808 |
+
add_action('admin_footer', 'sticky_anything_admin_footer');
|
809 |
add_action('admin_enqueue_scripts', 'sticky_anything_styles' );
|
810 |
add_filter("plugin_action_links_$plugin", 'sticky_anything_settings_link' );
|
811 |
add_filter('install_plugins_table_api_args_featured', 'sticky_featured_plugins_tab');
|
wp301/wp301.php
CHANGED
@@ -265,7 +265,7 @@ if (false == class_exists('wf_wp301')) {
|
|
265 |
$out .= '<li>Create advanced redirect rules & control affiliate links</li>';
|
266 |
$out .= '<li>Detailed log of all redirects & 404s</li>';
|
267 |
$out .= '<li>Manage all sites\' licenses from a central Dashboard</li>';
|
268 |
-
$out .= '<li>Lifetime license for 10 sites. <a href="https://wp301redirects.com/free-license/?ref=free-' . $this->plugin_slug . '-
|
269 |
$out .= '</ul>';
|
270 |
|
271 |
$out .= '
|
265 |
$out .= '<li>Create advanced redirect rules & control affiliate links</li>';
|
266 |
$out .= '<li>Detailed log of all redirects & 404s</li>';
|
267 |
$out .= '<li>Manage all sites\' licenses from a central Dashboard</li>';
|
268 |
+
$out .= '<li>Lifetime license for 10 sites. <a href="https://wp301redirects.com/free-license/?ref=free-' . $this->plugin_slug . '-popup" target="_blank">See all features</a></li>';
|
269 |
$out .= '</ul>';
|
270 |
|
271 |
$out .= '
|