├── .gitignore ├── LICENSE ├── archive ├── LICENSE ├── assets │ ├── css │ │ ├── admin.css │ │ ├── animate.min.css │ │ ├── beaver-widgetopts.css │ │ ├── jqueryui │ │ │ └── 1.11.4 │ │ │ │ └── themes │ │ │ │ └── ui-lightness │ │ │ │ ├── images │ │ │ │ └── ui-icons_ffffff_256x240.png │ │ │ │ └── jquery-ui.css │ │ ├── select2.min.css │ │ ├── welcome.css │ │ └── widget-options.css │ ├── images │ │ ├── cover-book.jpg │ │ ├── logo-mascot.png │ │ ├── ui-icons_ffffff_256x240.png │ │ └── widget-options-profile.gif │ ├── js │ │ ├── jquery.liveFilter.js │ │ ├── jquery.liveFilter.min.js │ │ ├── jquery.widgetopts.beaver.js │ │ ├── jquery.widgetopts.beaver.min.js │ │ ├── select2-settings.js │ │ ├── select2-settings.min.js │ │ ├── select2.min.js │ │ ├── settings.js │ │ ├── settings.min.js │ │ ├── widgets.js │ │ ├── widgets.min.js │ │ ├── wpWidgetOpts.js │ │ └── wpWidgetOpts.min.js │ └── scss │ │ ├── welcome.scss │ │ └── widget-options.scss ├── gulpfile.js ├── includes │ ├── admin │ │ ├── globals.php │ │ ├── import-export.php │ │ ├── notices.php │ │ ├── settings │ │ │ ├── display-settings.php │ │ │ ├── modules │ │ │ │ ├── acf.php │ │ │ │ ├── alignment.php │ │ │ │ ├── animation.php │ │ │ │ ├── beaver_builder.php │ │ │ │ ├── cache.php │ │ │ │ ├── classes.php │ │ │ │ ├── clone.php │ │ │ │ ├── columns.php │ │ │ │ ├── dates.php │ │ │ │ ├── devices.php │ │ │ │ ├── disable_widgets.php │ │ │ │ ├── elementor.php │ │ │ │ ├── fixed.php │ │ │ │ ├── import-export.php │ │ │ │ ├── links.php │ │ │ │ ├── logic.php │ │ │ │ ├── move.php │ │ │ │ ├── permission.php │ │ │ │ ├── roles.php │ │ │ │ ├── search.php │ │ │ │ ├── shortcodes.php │ │ │ │ ├── sidebar-more_plugins.php │ │ │ │ ├── sidebar-opt_in.php │ │ │ │ ├── sidebar-support_box.php │ │ │ │ ├── sidebar-upsell_pro.php │ │ │ │ ├── siteorigin.php │ │ │ │ ├── sliding.php │ │ │ │ ├── state.php │ │ │ │ ├── styling.php │ │ │ │ ├── taxonomies.php │ │ │ │ ├── title.php │ │ │ │ ├── urls.php │ │ │ │ ├── visibility.php │ │ │ │ └── widget-area.php │ │ │ └── register-settings.php │ │ └── welcome.php │ ├── ajax-functions.php │ ├── extras.php │ ├── install.php │ ├── pagebuilders │ │ ├── beaver │ │ │ └── beaver.php │ │ ├── elementor │ │ │ ├── elementor.php │ │ │ └── render.php │ │ └── siteorigin.php │ ├── scripts.php │ ├── transient.php │ └── widgets │ │ ├── display.php │ │ ├── extras.php │ │ ├── option-tabs │ │ ├── alignment.php │ │ ├── devices.php │ │ ├── settings.php │ │ ├── state.php │ │ ├── upsell.php │ │ └── visibility.php │ │ └── widgets.php ├── package-lock.json ├── package.json ├── plugin.php ├── readme.md ├── screenshot-1.png ├── screenshot-10.png ├── screenshot-2.png ├── screenshot-3.png ├── screenshot-4.png ├── screenshot-5.png ├── screenshot-6.png ├── screenshot-7.png ├── screenshot-8.png └── screenshot-9.png ├── assets ├── css │ ├── admin.css │ ├── animate.min.css │ ├── beaver-widgetopts.css │ ├── bootstrap-multiselect.min.css │ ├── jqueryui │ │ └── 1.11.4 │ │ │ └── themes │ │ │ └── ui-lightness │ │ │ ├── images │ │ │ └── ui-icons_ffffff_256x240.png │ │ │ └── jquery-ui.css │ ├── select2.min.css │ ├── welcome.css │ └── widget-options.css ├── images │ ├── cover-book.jpg │ ├── logo-mascot.png │ ├── ui-icons_ffffff_256x240.png │ ├── widget-options-profile.gif │ └── wo-logo.png ├── js │ ├── bootstrap-multiselect.min.js │ ├── jquery.liveFilter.js │ ├── jquery.liveFilter.min.js │ ├── jquery.widgetopts.beaver.js │ ├── jquery.widgetopts.beaver.min.js │ ├── select2-settings.js │ ├── select2-settings.min.js │ ├── select2.min.js │ ├── settings.js │ ├── settings.min.js │ ├── widgetopts.global.js │ ├── widgetopts.resize.js │ ├── widgets.js │ ├── widgets.min.js │ ├── wpWidgetOpts.js │ └── wpWidgetOpts.min.js └── scss │ ├── welcome.scss │ └── widget-options.scss ├── includes ├── admin │ ├── globals.php │ ├── import-export.php │ ├── notices.php │ ├── settings │ │ ├── display-settings.php │ │ ├── modules │ │ │ ├── acf.php │ │ │ ├── alignment.php │ │ │ ├── animation.php │ │ │ ├── beaver_builder.php │ │ │ ├── cache.php │ │ │ ├── classes.php │ │ │ ├── classic-widgets-screen.php │ │ │ ├── clone.php │ │ │ ├── columns.php │ │ │ ├── custom-sidebar.php │ │ │ ├── dates.php │ │ │ ├── devices.php │ │ │ ├── disable_widgets.php │ │ │ ├── elementor.php │ │ │ ├── fixed.php │ │ │ ├── import-export.php │ │ │ ├── links.php │ │ │ ├── logic.php │ │ │ ├── move.php │ │ │ ├── page-and-post-block.php │ │ │ ├── permission.php │ │ │ ├── roles.php │ │ │ ├── search.php │ │ │ ├── shortcodes.php │ │ │ ├── sidebar-more_plugins.php │ │ │ ├── sidebar-opt_in.php │ │ │ ├── sidebar-support_box.php │ │ │ ├── sidebar-upsell_pro.php │ │ │ ├── siteorigin.php │ │ │ ├── sliding.php │ │ │ ├── state.php │ │ │ ├── styling.php │ │ │ ├── taxonomies.php │ │ │ ├── title.php │ │ │ ├── urls.php │ │ │ ├── visibility.php │ │ │ └── widget-area.php │ │ └── register-settings.php │ └── welcome.php ├── ajax-functions.php ├── extras.php ├── install.php ├── pagebuilders │ ├── beaver │ │ └── beaver.php │ ├── elementor │ │ ├── elementor.php │ │ └── render.php │ └── siteorigin.php ├── scripts.php ├── transient.php └── widgets │ ├── display.php │ ├── extras.php │ ├── gutenberg │ └── gutenberg-toolbar.php │ ├── option-tabs │ ├── alignment.php │ ├── animation.php │ ├── behavior.php │ ├── days-dates.php │ ├── devices.php │ ├── settings.php │ ├── state.php │ ├── styling.php │ ├── upsell.php │ └── visibility.php │ └── widgets.php ├── plugin.php ├── readme.md ├── readme.txt ├── screenshot-1.gif ├── screenshot-10.png ├── screenshot-11.png ├── screenshot-12.png ├── screenshot-13.png ├── screenshot-14.png ├── screenshot-2.png ├── screenshot-3.png ├── screenshot-4.png ├── screenshot-5.png ├── screenshot-6.png ├── screenshot-7.png ├── screenshot-8.png └── screenshot-9.png /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Mac crap 12 | .DS_Store 13 | 14 | # Sublime 15 | *.sublime-project 16 | *.sublime-workspace 17 | 18 | # PhpStorm 19 | .idea 20 | 21 | # Eclipse 22 | *.pydevproject 23 | .project 24 | .metadata 25 | build/ 26 | tmp/ 27 | tests/clover.xml 28 | 29 | # Grunt 30 | node_modules 31 | 32 | # Vendor 33 | vendor 34 | 35 | # Temporary files 36 | *~ 37 | -------------------------------------------------------------------------------- /archive/assets/css/beaver-widgetopts.css: -------------------------------------------------------------------------------- 1 | #fl-builder-settings-section-widgetopts-fields #fl-field-widgetopts-tabnav .fl-field-control{ 2 | padding: 0px; 3 | } 4 | .fl-builder-widgetopts-tab{ 5 | border-top: 1px solid #e6eaed; 6 | border-bottom: 1px solid #e6eaed; 7 | background: #f5f5f5; 8 | } 9 | .fl-builder-widgetopts-tab a{ 10 | display: inline-block; 11 | margin: 0; 12 | outline: none; 13 | padding: 8px 10px; 14 | color: #999 !important; 15 | } 16 | .fl-builder-widgetopts-tab a .dashicons{ 17 | font-size: 16px; 18 | } 19 | .fl-builder-widgetopts-tab a:first-child{ 20 | margin-left: 10px !important; 21 | } 22 | .fl-builder-widgetopts-tab a.widgetopts-s-active{ 23 | background: #fff; 24 | color: #111 !important; 25 | border-right: 1px solid #e6eaed; 26 | border-left: 1px solid #e6eaed; 27 | position: relative; 28 | top: 1px; 29 | } 30 | #fl-builder-settings-tab-widgetopts .fl-builder-settings-section{ 31 | display: none; 32 | } 33 | #fl-builder-settings-tab-widgetopts .fl-builder-settings-section table{ 34 | margin: 0px !important; 35 | width: 100% !important; 36 | } 37 | #fl-builder-settings-tab-widgetopts .fl-builder-settings-section table td:first-child{ 38 | padding-left: 0px !important; 39 | } 40 | #fl-builder-settings-tab-widgetopts .fl-builder-settings-section:nth-child(2){ 41 | display: block; 42 | } 43 | #fl-builder-settings-tab-widgetopts #fl-builder-settings-section-widgetopts-fields.fl-builder-settings-section{ 44 | display: block !important; 45 | padding: 0px !important; 46 | border-bottom: 0px; 47 | background: transparent; 48 | } 49 | #fl-builder-settings-tab-widgetopts .fl-builder-settings-section{ 50 | border: 1px solid #dfdfdf; 51 | border-top: 0px; 52 | padding: 15px 10px; 53 | background: #fff; 54 | } 55 | #fl-builder-settings-section-widgetopts-fields.fl-builder-settings-section{ 56 | margin-bottom: 0px; 57 | } 58 | .fl-builder-settings-section .fl-field-description{ 59 | margin-left: 10px !important; 60 | opacity: 0.8; 61 | font-size: 11px; 62 | } 63 | .fl-builder-settings-section .fl-field-description small{ 64 | display: block; 65 | font-size: 11px; 66 | padding: 0px 10px; 67 | } 68 | #fl-builder-settings-tab-widgetopts .fl-builder-settings-section textarea{ 69 | min-height: 90px; 70 | } 71 | .widgetopts-select2-l{ 72 | font-size: 10px; 73 | color: #999; 74 | font-style: italic; 75 | } 76 | .fl-builder-settings-section .select2-container--default .select2-selection--multiple, .fl-builder-settings .fl-builder-settings-section select, .fl-builder-settings .fl-builder-settings-section input[type="text"], .fl-builder-settings .fl-builder-settings-section textarea{ 77 | border: 1px solid #e6eaed !important; 78 | } 79 | 80 | .fl-builder-settings-section .extended-widget-opts-tabcontent-gopro{ 81 | padding: 20px; 82 | } 83 | .fl-builder-settings-section .extended-widget-opts-tabcontent-gopro ul{ 84 | margin-left: 20px; 85 | padding: 0px; 86 | } 87 | .fl-builder-settings-section .extended-widget-opts-tabcontent-gopro li{ 88 | list-style: none; 89 | } 90 | .fl-builder-settings-section#fl-builder-settings-section-widgetopts-upgrade{ 91 | background-color: #FFF1B8 !important; 92 | color: #444; 93 | } 94 | .fl-builder-settings-section .extended-widget-opts-tabcontent-gopro .widgetopts-unlock-features{ 95 | text-align: center; 96 | font-size: 16px; 97 | font-weight: bold; 98 | } 99 | .fl-builder-settings-section .extended-widget-opts-tabcontent-gopro .widgetopts-unlock-features .dashicons{ 100 | font-size: 26px; 101 | padding-right: 6px; 102 | } 103 | .fl-builder-settings-section .extended-widget-opts-tabcontent-gopro .button-primary{ 104 | background: #0085ba; 105 | border-color: #0073aa #006799 #006799; 106 | color: #fff; 107 | display: inline-block; 108 | text-decoration: none; 109 | font-size: 13px; 110 | line-height: 26px; 111 | height: 28px; 112 | margin: 0; 113 | padding: 0 10px 1px; 114 | cursor: pointer; 115 | border-width: 1px; 116 | border-style: solid; 117 | -webkit-appearance: none; 118 | border-radius: 3px; 119 | white-space: nowrap; 120 | box-sizing: border-box; 121 | } -------------------------------------------------------------------------------- /archive/assets/css/jqueryui/1.11.4/themes/ui-lightness/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/assets/css/jqueryui/1.11.4/themes/ui-lightness/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /archive/assets/css/welcome.css: -------------------------------------------------------------------------------- 1 | .widgetopts-badge{position:absolute;top:0;right:0;color:#999;font-size:21px;text-align:center;margin:5px 0 0;width:150px}.widgetopts-badge .widgetopts-mascot{display:block;text-align:center;height:150px;width:150px;background:url("../images/logo-mascot.png");-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover}.widgetopts-badge .version{line-height:30px}.about-wrap .widgetopts-features-button{font-size:16px;height:auto;padding:8px 25px;margin-top:20px}.widgetopts-about-wrap.about-wrap p{max-width:100%}.about-wrap .widgetopts-features img{-webkit-transition:opacity .15s ease-in-out;-moz-transition:opacity .15s ease-in-out;-o-transition:opacity .15s ease-in-out;transition:opacity .15s ease-in-out;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=88);opacity:.88}.about-wrap .widgetopts-features img:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1} 2 | -------------------------------------------------------------------------------- /archive/assets/css/widget-options.css: -------------------------------------------------------------------------------- 1 | body .extendedwopts-show{display:none}body .widgetopts-hide_title .widget-title{display:none}body .extendedwopts-md-right{text-align:right}body .extendedwopts-md-left{text-align:left}body .extendedwopts-md-center{text-align:center}body .extendedwopts-md-justify{text-align:justify}@media screen and (min-width: 769px){body .extendedwopts-hide.extendedwopts-desktop{display:none !important;}body .extendedwopts-show.extendedwopts-desktop{display:block}body .widget.clearfix-desktop{clear:both}}@media screen and (max-width: 768px) and (min-width: 737px){body .extendedwopts-hide.extendedwopts-tablet{display:none !important;}body .extendedwopts-show.extendedwopts-tablet{display:block}body .widget.clearfix-desktop{clear:none}body .widget.clearfix-tablet{clear:both}}@media screen and (max-width: 736px){body .extendedwopts-hide.extendedwopts-mobile{display:none !important;}body .extendedwopts-show.extendedwopts-mobile{display:block}body .widget.clearfix-desktop,body .widget.clearfix-tablet{clear:none}body .widget.clearfix-mobile{clear:both}} 2 | -------------------------------------------------------------------------------- /archive/assets/images/cover-book.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/assets/images/cover-book.jpg -------------------------------------------------------------------------------- /archive/assets/images/logo-mascot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/assets/images/logo-mascot.png -------------------------------------------------------------------------------- /archive/assets/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/assets/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /archive/assets/images/widget-options-profile.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/assets/images/widget-options-profile.gif -------------------------------------------------------------------------------- /archive/assets/js/jquery.liveFilter.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery.liveFilter 3 | * 4 | * Copyright (c) 2009 Mike Merritt 5 | * 6 | * Forked by Lim Chee Aun (cheeaun.com) 7 | * 8 | */ 9 | 10 | (function($){ 11 | $.fn.liveFilter = function(inputEl, filterEl, options){ 12 | var defaults = { 13 | filterChildSelector: null, 14 | filter: function(el, val){ 15 | return $(el).text().toUpperCase().indexOf(val.toUpperCase()) >= 0; 16 | }, 17 | before: function(){}, 18 | after: function(){} 19 | }; 20 | var options = $.extend(defaults, options); 21 | 22 | var el = $(this).find(filterEl); 23 | if (options.filterChildSelector) el = el.find(options.filterChildSelector); 24 | 25 | var filter = options.filter; 26 | $(inputEl).keyup(function(){ 27 | var val = $(this).val(); 28 | var contains = el.filter(function(){ 29 | return filter(this, val); 30 | }); 31 | var containsNot = el.not(contains); 32 | if (options.filterChildSelector){ 33 | contains = contains.parents(filterEl); 34 | containsNot = containsNot.parents(filterEl).hide(); 35 | } 36 | 37 | options.before.call(this, contains, containsNot); 38 | 39 | contains.show(); 40 | containsNot.hide(); 41 | 42 | if (val === '') { 43 | contains.show(); 44 | containsNot.show(); 45 | } 46 | 47 | options.after.call(this, contains, containsNot); 48 | }); 49 | } 50 | })(jQuery); 51 | -------------------------------------------------------------------------------- /archive/assets/js/jquery.liveFilter.min.js: -------------------------------------------------------------------------------- 1 | !function(e){e.fn.liveFilter=function(t,i,r){var n={filterChildSelector:null,filter:function(t,i){return e(t).text().toUpperCase().indexOf(i.toUpperCase())>=0},before:function(){},after:function(){}},r=e.extend(n,r),l=e(this).find(i);r.filterChildSelector&&(l=l.find(r.filterChildSelector));var f=r.filter;e(t).keyup(function(){var t=e(this).val(),n=l.filter(function(){return f(this,t)}),o=l.not(n);r.filterChildSelector&&(n=n.parents(i),o=o.parents(i).hide()),r.before.call(this,n,o),n.show(),o.hide(),""===t&&(n.show(),o.show()),r.after.call(this,n,o)})}}(jQuery); -------------------------------------------------------------------------------- /archive/assets/js/jquery.widgetopts.beaver.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | var widgetoptsBeaverModule = { 4 | init: function() { 5 | var self = this; 6 | jQuery( '.widgetopts-module-settings-container' ).hide(); 7 | 8 | self.bindEvents(); 9 | }, 10 | 11 | bindEvents: function() { 12 | var self = this; 13 | var $body = jQuery( 'body' ); 14 | 15 | $body.on( 'click', '.fl-builder-widgetopts-tab a', self.navClick ); 16 | 17 | }, 18 | 19 | navClick: function( e ) { 20 | e.preventDefault(); 21 | jQuery( '.widgetopts-s-active' ).removeClass( 'widgetopts-s-active' ); 22 | jQuery( '#fl-builder-settings-tab-widgetopts .fl-builder-settings-section' ).hide(); 23 | jQuery( jQuery( this ).attr('href') ).show(); 24 | jQuery( this ).addClass( 'widgetopts-s-active' ); 25 | } 26 | } 27 | 28 | jQuery(document).ready(function() { 29 | widgetoptsBeaverModule.init(); 30 | }); -------------------------------------------------------------------------------- /archive/assets/js/jquery.widgetopts.beaver.min.js: -------------------------------------------------------------------------------- 1 | "use strict";var widgetoptsBeaverModule={init:function(){var t=this;jQuery(".widgetopts-module-settings-container").hide(),t.bindEvents()},bindEvents:function(){var t=this;jQuery("body").on("click",".fl-builder-widgetopts-tab a",t.navClick)},navClick:function(t){t.preventDefault(),jQuery(".widgetopts-s-active").removeClass("widgetopts-s-active"),jQuery("#fl-builder-settings-tab-widgetopts .fl-builder-settings-section").hide(),jQuery(jQuery(this).attr("href")).show(),jQuery(this).addClass("widgetopts-s-active")}};jQuery(document).ready(function(){widgetoptsBeaverModule.init()}); -------------------------------------------------------------------------------- /archive/assets/js/select2-settings.js: -------------------------------------------------------------------------------- 1 | (function($){ 2 | 3 | WidgetOptsSelect2 = { 4 | _init: function() 5 | { 6 | $('select.widgetopts-select2').each(function() { 7 | $(this).select2({ 8 | width: '100%', 9 | allowClear: true, 10 | placeholder: ' ' 11 | }).on('change', $.proxy(WidgetOptsSelect2._maybePreview, this.context)) 12 | .on('select2:unselecting', function(e) { 13 | $(this).data('unselecting', true); 14 | }).on('select2:open', function(e) { // note the open event is important 15 | if ($(this).data('unselecting')) { 16 | $(this).removeData('unselecting'); // you need to unset this before close 17 | $(this).select2('close'); 18 | } 19 | }).on('select2:unselect', function(e) { // note the open event is important 20 | if( !$(this).val() ){ 21 | $(this).val("").trigger('change'); 22 | } 23 | }); 24 | 25 | if($(this).attr('multiple')) { 26 | var ul = $(this).siblings('.select2-container').first('ul.select2-selection__rendered'); 27 | ul.sortable({ 28 | placeholder : 'ui-state-highlight', 29 | forcePlaceholderSize: true, 30 | items : 'li:not(.select2-search__field)', 31 | tolerance : 'pointer', 32 | stop: function() { 33 | $($(ul).find('.select2-selection__choice').get().reverse()).each(function() { 34 | var id = $(this).data('data').id; 35 | var option = $(this).find('option[value="' + id + '"]')[0]; 36 | $(this).prepend(option); 37 | }); 38 | } 39 | }); 40 | } 41 | }); 42 | }, 43 | 44 | _maybePreview: function() { 45 | var e = { 46 | target: this 47 | }; 48 | 49 | var field = $(this).closest('.fl-field'); 50 | var previewType = field.data('preview'); 51 | 52 | if ('refresh' == previewType.type) { 53 | FLBuilder.preview.delayPreview(e); 54 | } 55 | } 56 | } 57 | 58 | FLBuilder.addHook('settings-form-init', function() { 59 | WidgetOptsSelect2._init(); 60 | }); 61 | 62 | })(jQuery); -------------------------------------------------------------------------------- /archive/assets/js/select2-settings.min.js: -------------------------------------------------------------------------------- 1 | !function(e){WidgetOptsSelect2={_init:function(){e("select.widgetopts-select2").each(function(){if(e(this).select2({width:"100%",allowClear:!0,placeholder:" "}).on("change",e.proxy(WidgetOptsSelect2._maybePreview,this.context)).on("select2:unselecting",function(t){e(this).data("unselecting",!0)}).on("select2:open",function(t){e(this).data("unselecting")&&(e(this).removeData("unselecting"),e(this).select2("close"))}).on("select2:unselect",function(t){e(this).val()||e(this).val("").trigger("change")}),e(this).attr("multiple")){var t=e(this).siblings(".select2-container").first("ul.select2-selection__rendered");t.sortable({placeholder:"ui-state-highlight",forcePlaceholderSize:!0,items:"li:not(.select2-search__field)",tolerance:"pointer",stop:function(){e(e(t).find(".select2-selection__choice").get().reverse()).each(function(){var t=e(this).data("data").id,i=e(this).find('option[value="'+t+'"]')[0];e(this).prepend(i)})}})}})},_maybePreview:function(){var t={target:this};"refresh"==e(this).closest(".fl-field").data("preview").type&&FLBuilder.preview.delayPreview(t)}},FLBuilder.addHook("settings-form-init",function(){WidgetOptsSelect2._init()})}(jQuery); -------------------------------------------------------------------------------- /archive/assets/scss/welcome.scss: -------------------------------------------------------------------------------- 1 | @import "compass"; 2 | 3 | .widgetopts-badge{ 4 | position: absolute; 5 | top: 0; 6 | right: 0; 7 | color: #999; 8 | font-size: 21px; 9 | text-align: center; 10 | margin: 5px 0 0; 11 | width: 150px; 12 | .widgetopts-mascot{ 13 | display: block; 14 | text-align: center; 15 | height: 150px; 16 | width: 150px; 17 | background: url('../images/logo-mascot.png'); 18 | @include background-size(cover); 19 | } 20 | .version{ 21 | line-height: 30px; 22 | } 23 | } 24 | .about-wrap .widgetopts-features-button{ 25 | font-size: 16px; 26 | height: auto; 27 | padding: 8px 25px; 28 | margin-top: 20px; 29 | } 30 | .widgetopts-about-wrap.about-wrap p{ 31 | max-width: 100%; 32 | } 33 | 34 | .about-wrap .widgetopts-features{ 35 | img{ 36 | @include transition( opacity .15s ease-in-out ); 37 | @include opacity( 0.88 ); 38 | &:hover{ 39 | @include opacity( 1 ); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /archive/assets/scss/widget-options.scss: -------------------------------------------------------------------------------- 1 | @import 'compass'; 2 | $desktop : 769px; 3 | $tablet : 768px; 4 | $mobile : 736px; 5 | body{ 6 | .extendedwopts-show{ 7 | display: none; 8 | } 9 | .widgetopts-hide_title{ 10 | .widget-title{ 11 | display: none; 12 | } 13 | } 14 | 15 | //alignment 16 | .extendedwopts-md-right{ 17 | text-align: right; 18 | } 19 | .extendedwopts-md-left{ 20 | text-align: left; 21 | } 22 | .extendedwopts-md-center{ 23 | text-align: center; 24 | } 25 | .extendedwopts-md-justify{ 26 | text-align: justify; 27 | } 28 | @media screen and (min-width: $desktop) { 29 | .extendedwopts-hide.extendedwopts-desktop{ 30 | display: none !important; 31 | } 32 | .extendedwopts-show.extendedwopts-desktop{ 33 | display: block; 34 | } 35 | .widget.clearfix-desktop{ 36 | clear: both; 37 | } 38 | } 39 | @media screen and (max-width: $tablet) 40 | and (min-width: $mobile + 1) { 41 | .extendedwopts-hide.extendedwopts-tablet{ 42 | display: none !important; 43 | } 44 | .extendedwopts-show.extendedwopts-tablet{ 45 | display: block; 46 | } 47 | .widget.clearfix-desktop{ 48 | clear: none; 49 | } 50 | .widget.clearfix-tablet{ 51 | clear: both; 52 | } 53 | } 54 | @media screen and (max-width: $mobile) { 55 | .extendedwopts-hide.extendedwopts-mobile{ 56 | display: none !important; 57 | } 58 | .extendedwopts-show.extendedwopts-mobile{ 59 | display: block; 60 | } 61 | .widget.clearfix-desktop, .widget.clearfix-tablet{ 62 | clear: none; 63 | } 64 | .widget.clearfix-mobile{ 65 | clear: both; 66 | } 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /archive/gulpfile.js: -------------------------------------------------------------------------------- 1 | var gulp = require('gulp'); 2 | var sass = require('gulp-sass'); 3 | var browserSync = require('browser-sync').create(); 4 | var runSequence = require('run-sequence'); 5 | var uglify = require('gulp-uglify'); 6 | var rename = require('gulp-rename'); 7 | var notify = require('gulp-notify'); 8 | var plumber = require('gulp-plumber'); 9 | 10 | var onError = function(err) { 11 | notify.onError({ 12 | title: "Gulp", 13 | subtitle: "Failure!", 14 | message: "Error: <%= error.message %>", 15 | sound: "Beep" 16 | })(err); 17 | 18 | this.emit('end'); 19 | }; 20 | 21 | gulp.task('browser-sync', function() { 22 | browserSync.init({ 23 | proxy: 'test-site.dev', 24 | // browser: 'safari' 25 | }); 26 | }); 27 | 28 | gulp.task('sass', function() { 29 | return gulp.src('assets/scss/*.scss') 30 | .pipe( plumber({ errorHandler: onError }) ) 31 | .pipe(sass({ 32 | outputStyle: 'compressed', 33 | includePaths: [ 34 | './node_modules/compass-mixins/lib' 35 | ] 36 | })) // Converts Sass to CSS with gulp-sass 37 | .pipe( gulp.dest('./assets/css/') ); // output to theme root 38 | }); 39 | 40 | gulp.task('uglify', function () { 41 | gulp.src(['assets/js/*.js', '!assets/js/*.min.js']) 42 | .pipe( plumber({ errorHandler: onError }) ) 43 | .pipe(uglify()) 44 | .pipe(rename({ 45 | suffix: '.min' 46 | })) 47 | .pipe(gulp.dest('./assets/js/')); 48 | }); 49 | 50 | gulp.task('watch', ['browser-sync', 'sass', 'uglify'], function(){ 51 | gulp.watch('assets/scss/*.scss', ['sass']); 52 | gulp.watch('*/*.php', browserSync.reload); 53 | gulp.watch('assets/css/*.css', browserSync.reload); 54 | gulp.watch('assets/js/*.js', browserSync.reload); 55 | }); 56 | 57 | gulp.task('default', function (callback) { 58 | runSequence(['sass', 'browser-sync', 'uglify', 'watch'], 59 | callback 60 | ) 61 | }) 62 | -------------------------------------------------------------------------------- /archive/includes/admin/globals.php: -------------------------------------------------------------------------------- 1 | 22 | -------------------------------------------------------------------------------- /archive/includes/admin/notices.php: -------------------------------------------------------------------------------- 1 | base ) && $screen->base != 'settings_page_widgetopts_plugin_settings' ){ 29 | return; 30 | } 31 | } 32 | 33 | $install_date = get_option( 'widgetopts_installDate' ); 34 | $saved = get_option( 'widgetopts_RatingDiv' ); 35 | $display_date = date( 'Y-m-d h:i:s' ); 36 | $datetime1 = new DateTime( $install_date ); 37 | $datetime2 = new DateTime( $display_date ); 38 | $diff_intrval = round( ($datetime2->format( 'U' ) - $datetime1->format( 'U' ) ) / (60*60*24)); 39 | if( 'yes' != $saved && $diff_intrval >= 7 ){ 40 | echo '
41 |

Awesome, you\'ve been using Widget Options for more than 1 week.
May i ask you to give it a 5-star rating on WordPress?
42 | This will help to spread its popularity and to make this plugin a better one. 43 |

Your help is much appreciated. Thank you very much,
~ Widget Options Team 44 |

49 |
50 | 73 | '; 74 | } 75 | } 76 | add_action( 'admin_notices', 'widgetopts_admin_notices' ); 77 | endif; 78 | ?> 79 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/acf.php: -------------------------------------------------------------------------------- 1 | Widget Options :: ACF Support 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.3 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Elementor Pagebuilder Support 15 | * 16 | * @since 4.3 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | if( !class_exists( 'widgetopts_settings_acf' ) ){ 22 | function widgetopts_settings_acf(){ 23 | global $widget_options; 24 | //avoid issue after update 25 | if( !isset( $widget_options['acf'] ) ){ 26 | $widget_options['acf'] = ''; 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 |

    53 | 54 |

    55 |

    56 | 57 |

    58 | 59 | 60 |
  • 61 | 66 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/alignment.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Custom Alignment 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Alignment Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_alignment' ) ): 21 | function widgetopts_settings_alignment(){ 22 | global $widget_options; ?> 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 | 53 |
  • 54 | 59 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/animation.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Animation 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Animation Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_animation' ) ): 20 | function widgetopts_settings_animation(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/beaver_builder.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Beaver Builder Pagebuilder Support 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.5 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Beaver Builder Pagebuilder Support 15 | * 16 | * @since 4.5 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | if( !class_exists( 'widgetopts_settings_beaver' ) ){ 22 | function widgetopts_settings_beaver(){ 23 | global $widget_options; 24 | //avoid issue after update 25 | if( !isset( $widget_options['beaver'] ) ){ 26 | $widget_options['beaver'] = ''; 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 |

    53 | Widget Options section on every Beaver Builder modules that will extend functionalities and will let you control each widgets even more.', 'widget-options' );?> 54 |

    55 |

    56 |

    57 |
    58 |

    59 |
    60 | 61 | 62 |
  • 63 | 68 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/cache.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Cache 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.2 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Fixed Widget Options 15 | * 16 | * @since 3.2 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_cache' ) ): 20 | function widgetopts_settings_cache(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/clone.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Clone Widget 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.4 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Clone Widgets 15 | * 16 | * @since 3.4 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_clone' ) ): 20 | function widgetopts_settings_clone(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/columns.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Column Display 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Column Display Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_columns' ) ): 20 | function widgetopts_settings_columns(){ 21 | ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/dates.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Days & Date Range 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Days & Date Range Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_dates' ) ): 21 | function widgetopts_settings_dates(){ ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/devices.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Devices Restriction 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Devices Visibility Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_devices' ) ): 21 | function widgetopts_settings_devices(){ 22 | global $widget_options; ?> 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 | 53 |
  • 54 | 59 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/disable_widgets.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Disable Widgets 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Disable Widgets Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_disable_widgets' ) ): 20 | function widgetopts_settings_disable_widgets(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/elementor.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Elementor Pagebuilder Support 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.3 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Elementor Pagebuilder Support 15 | * 16 | * @since 4.3 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | if( !class_exists( 'widgetopts_settings_elementor' ) ){ 22 | function widgetopts_settings_elementor(){ 23 | global $widget_options; 24 | //avoid issue after update 25 | if( !isset( $widget_options['elementor'] ) ){ 26 | $widget_options['elementor'] = ''; 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 |

    53 | Widget Options section on every Elementor widgets that will extend functionalities and will let you control each widgets even more.', 'widget-options' );?> 54 |

    55 |

    56 |

    57 |

    58 | 59 |

    60 | 61 | 62 |
  • 63 | 68 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/fixed.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Fixed Widget 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Fixed Widget Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_fixed' ) ): 21 | function widgetopts_settings_fixed(){ ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/import-export.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Import & Export 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.4 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Import & Export 15 | * 16 | * @since 4.4 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | function widgetopts_settings_import_export(){ 22 | global $widget_options; 23 | //avoid issue after update 24 | if( !isset( $widget_options['import_export'] ) ){ 25 | $widget_options['import_export'] = ''; 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 | Tools > Import/Export Widgets. This will give you the easiest option to export and import your widgets. Creating backup and restore of your widgets can be done really simple!', 'widget-options' );?> 53 |

    54 |

    55 | 56 |

    57 | 58 | 59 |
  • 60 | 64 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/links.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Link Widget 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Links Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_links' ) ): 20 | function widgetopts_settings_links(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/logic.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Display Logic 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Display Logic Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_logic' ) ): 21 | function widgetopts_settings_logic(){ 22 | global $widget_options; ?> 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 | Please note that the display logic you introduce is EVAL'd directly. Anyone who has access to edit widget appearance will have the right to add any code, including malicious and possibly destructive functions. There is an optional filter widget_options_logic_override which you can use to bypass the EVAL with your own code if needed.", 'widget-options' )?> 51 |

    52 | 53 | 54 | 57 | 64 | 65 |
    55 | 56 | 58 | value="1" /> 59 | 60 |

    61 | 62 |

    63 |
    66 | 67 | 68 |
  • 69 | 74 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/move.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Move Widget 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.4 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Move Widget Feature 15 | * 16 | * @since 3.4 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | if( !function_exists( 'widgetopts_settings_move' ) ): 22 | function widgetopts_settings_move(){ 23 | global $widget_options; 24 | 25 | //avoid issue after update 26 | if( !isset( $widget_options['move'] ) ){ 27 | $widget_options['move'] = ''; 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 |

    53 |

    54 | Move button that will let you easily move any widgets to any sidebar widget areas without dragging them. This will definitely increase your productivity and widget management specially on smaller screen devices such as mobile phones. You can check how this feature works on this video. Thanks!', 'widget-options' );?> 55 |

    56 |

    57 | 58 |

    59 | 60 | 61 |
  • 62 | 67 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/permission.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Custom Alignment 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Alignment Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_permissions' ) ): 20 | function widgetopts_settings_permissions(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 32 | 37 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/roles.php: -------------------------------------------------------------------------------- 1 | Widget Options :: User Roles Restriction 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for User Roles Restriction 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_roles' ) ): 21 | function widgetopts_settings_roles(){ ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/search.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Live Widget Search 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.3 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Live Widget Search 15 | * 16 | * @since 3.3 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_search' ) ): 21 | function widgetopts_settings_search(){ 22 | global $widget_options; 23 | //prevent undefined index error on upgrade 24 | if( !isset( $widget_options['search'] ) ){ 25 | $widget_options['search'] = ''; 26 | } 27 | ?> 28 | 59 | 64 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/shortcodes.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Shortcodes 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Shortcodes Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_shortcodes' ) ): 20 | function widgetopts_settings_shortcodes(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/sidebar-more_plugins.php: -------------------------------------------------------------------------------- 1 | Widget Options 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 4.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Metabox for Support 15 | * 16 | * @since 4.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_more_plugins' ) ): 20 | function widgetopts_settings_more_plugins(){ ?> 21 |
    22 |

    23 |
    24 |

    25 |

    26 | 27 |

    28 |
    29 |
    30 | 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/sidebar-opt_in.php: -------------------------------------------------------------------------------- 1 | Widget Options 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 4.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Metabox for Support 15 | * 16 | * @since 4.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_sidebar_opt_in' ) ): 20 | function widgetopts_settings_sidebar_opt_in(){ ?> 21 |
    22 |

    23 |
    24 |

    25 |
    26 |

    27 | 28 |

    29 |

    30 |
    31 | 32 | 33 | 34 | 35 | 36 |

    37 |

    38 | 39 |

    40 |
    41 |
    42 |
    43 | 55 | 56 | 61 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/sidebar-support_box.php: -------------------------------------------------------------------------------- 1 | Widget Options 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 4.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Metabox for Support 15 | * 16 | * @since 4.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_support_box' ) ): 20 | function widgetopts_settings_support_box(){ ?> 21 |
    22 |

    23 |
    24 |

    25 | 26 |

    27 |

    28 | 29 |

    30 |

    31 | 32 |

    33 |

    34 | 35 |

    36 | 42 |
    43 |
    44 | 45 | 50 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/sidebar-upsell_pro.php: -------------------------------------------------------------------------------- 1 | Widget Options 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 4.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Metabox for Purchase Validation 15 | * 16 | * @since 4.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_upgrade_pro' ) ): 20 | function widgetopts_settings_upgrade_pro(){ ?> 21 |
    22 |

    23 |
    24 |

    25 | Unlock all features! Get the world\'s most complete widget management and get best out of your widgets with Extended Widget Options including: ', 'widget-options' );?> 28 |

    29 | 58 |

    59 | 60 |

    61 |
    62 |
    63 | 69 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/siteorigin.php: -------------------------------------------------------------------------------- 1 | Widget Options :: SiteOrigin Pagebuilder Support 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for SiteOrigin Pagebuilder Support 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_siteorigin' ) ): 21 | function widgetopts_settings_siteorigin(){ 22 | global $widget_options; ?> 23 |
  • 24 |
    25 |

    26 |

    27 | 28 |

    29 | 30 |
    31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
    40 |
    41 | 42 | 43 | 44 |

    45 |

    46 | Pagebuilder by SiteOrigin. Easily manage and extends widget functionalities and visibility using tabbed options provided for each widgets.', 'widget-options' );?> 47 |

    48 |

    49 |

    50 |

    51 |

    52 | 53 |

    54 |

    55 | 56 |

    57 | 58 | 59 |
  • 60 | 65 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/sliding.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Widgets on Menu 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 1.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Widgets on Menu Options 15 | * 16 | * @since 1.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_sliding_addon' ) ): 20 | function widgetopts_settings_sliding_addon(){ 21 | 22 | if( !is_plugin_active( 'sliding-widget-options/plugin.php' ) ){ ?> 23 |
  • 24 |
    25 | 26 |

    27 |
    28 |

    29 | Elementor Compatible', 'widget-options' ); 33 | } 34 | ?> 35 |

    36 |
    37 |
  • 38 | 44 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/state.php: -------------------------------------------------------------------------------- 1 | Widget Options :: User Login State 5 | * 6 | * @copyright Copyright (c) 2018, Jeffrey Carandang 7 | * @since 3.7 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for User Login State 15 | * 16 | * @since 3.7 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | if( !class_exists( 'widgetopts_settings_state' ) ){ 22 | function widgetopts_settings_state(){ 23 | global $widget_options; 24 | //avoid issue after update 25 | if( !isset( $widget_options['state'] ) ){ 26 | $widget_options['state'] = ''; 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 | 53 |

    54 |

    55 | 56 |

    57 | 58 | 59 |
  • 60 | 65 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/styling.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Custom Styling 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Styling Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_styling' ) ): 20 | function widgetopts_settings_styling(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/taxonomies.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Extended Taxonomy Terms 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Extended Taxonomy Terms Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_taxonomies' ) ): 20 | function widgetopts_settings_taxonomies(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/title.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Hide Title 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Hide Widget Title 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_title' ) ): 21 | function widgetopts_settings_title(){ 22 | global $widget_options; ?> 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 | 53 |
  • 54 | 59 | -------------------------------------------------------------------------------- /archive/includes/admin/settings/modules/urls.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Link Widget 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Links Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_urls' ) ): 20 | function widgetopts_settings_urls(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | * to create a URL wildcard restrictions.', 'widget-options' );?> 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /archive/includes/install.php: -------------------------------------------------------------------------------- 1 | 16 |
    17 |

    18 | Widget Options Plugin, it may cause issue with the extended plugin version. Thanks!', 'widget-options' );?> 19 |

    20 |
    21 | ' . __( 'Settings', 'widget-options' ) . ''; 35 | $upgrade_link = apply_filters('widget_options_site_url', trailingslashit(WIDGETOPTS_PLUGIN_WEBSITE).'pricing/?utm_source=upgradebtn&utm_medium=plugins&utm_campaign=widgetoptspluginlink'); 36 | $links[] = '' . __( 'Upgrade', 'widget-options' ) . ''; 37 | return $links; 38 | } 39 | } 40 | 41 | //register default values 42 | if( !function_exists( 'widgetopts_register_defaults' ) ){ 43 | register_activation_hook( WIDGETOPTS_PLUGIN_FILE, 'widgetopts_register_defaults' ); 44 | add_action( 'plugins_loaded', 'widgetopts_register_defaults' ); 45 | function widgetopts_register_defaults(){ 46 | if( is_admin() ){ 47 | 48 | if( !get_option( 'widgetopts_installDate' ) ){ 49 | add_option( 'widgetopts_installDate', date( 'Y-m-d h:i:s' ) ); 50 | } 51 | 52 | if( !get_option( '_widgetopts_default_registered_' ) ){ 53 | //activate free version modules 54 | add_option( 'widgetopts_tabmodule-visibility', 'activate' ); 55 | add_option( 'widgetopts_tabmodule-devices', 'activate' ); 56 | add_option( 'widgetopts_tabmodule-alignment', 'activate' ); 57 | add_option( 'widgetopts_tabmodule-hide_title', 'activate' ); 58 | add_option( 'widgetopts_tabmodule-classes', 'activate' ); 59 | add_option( 'widgetopts_tabmodule-logic', 'activate' ); 60 | add_option( 'widgetopts_tabmodule-state', 'activate' ); 61 | //add free version settings 62 | $defaults = array( 63 | 'visibility' => array( 64 | 'post_type' => '1', 65 | 'taxonomies' => '1', 66 | 'misc' => '1' 67 | ), 68 | 'classes' => array( 69 | 'id' => '1', 70 | 'type' => 'both' 71 | ), 72 | ); 73 | //upgraded settings from previous version 74 | $options = get_option('extwopts_class_settings'); 75 | if( isset( $options['class_field'] ) ){ 76 | $defaults['classes']['type'] = $options['class_field']; 77 | } 78 | if( isset( $options['classlists'] ) ){ 79 | $defaults['classes']['classlists'] = $options['classlists']; 80 | } 81 | add_option( 'widgetopts_tabmodule-settings', serialize( $defaults ) ); 82 | add_option( '_widgetopts_default_registered_', '1' ); 83 | delete_transient( 'widgetopts_tabs_transient' ); //remove transient for settings 84 | delete_option( 'widgetopts_settings' ); 85 | } 86 | 87 | //make sure to delete previous pages cache 88 | if( !get_option( 'widgetopts_removed_global_pages' ) ){ 89 | delete_option( 'widgetopts_global_pages' ); 90 | add_option( 'widgetopts_removed_global_pages', 1 ); 91 | } 92 | 93 | } 94 | } 95 | } 96 | 97 | ?> 98 | -------------------------------------------------------------------------------- /archive/includes/pagebuilders/siteorigin.php: -------------------------------------------------------------------------------- 1 | $widgets ) { 23 | if( isset( $widgets['extended_widget_opts'] ) && !empty( $widgets['extended_widget_opts'] ) ){ 24 | 25 | if( isset( $panels_data['widgets'][$key] ) && 'activate' == $widget_options['logic'] ){ 26 | // display widget logic 27 | if( isset( $widgets['extended_widget_opts']['class'] ) && isset( $widgets['extended_widget_opts']['class']['logic'] ) && !empty( $widgets['extended_widget_opts']['class']['logic'] ) ){ 28 | $display_logic = stripslashes( trim( $widgets['extended_widget_opts']['class']['logic'] ) ); 29 | $display_logic = apply_filters( 'widget_options_logic_override', $display_logic ); 30 | if ( $display_logic === false ){ 31 | unset( $panels_data['widgets'][$key]); 32 | } 33 | if ( $display_logic === true ){ 34 | // return true; 35 | } 36 | if ( stristr($display_logic,"return")===false ){ 37 | $display_logic="return (" . $display_logic . ");"; 38 | } 39 | $display_logic = htmlspecialchars_decode($display_logic, ENT_QUOTES); 40 | try { 41 | if (!eval($display_logic)) { 42 | unset($panels_data['widgets'][$key]); 43 | } 44 | } catch (ParseError $e) { 45 | unset($panels_data['widgets'][$key]); 46 | } 47 | } 48 | } 49 | 50 | } 51 | } 52 | } 53 | } 54 | return $panels_data; 55 | 56 | } 57 | } 58 | 59 | if( !function_exists( 'widgetopts_siteorigin_panels_widget_classes' ) ){ 60 | add_filter( 'siteorigin_panels_widget_classes', 'widgetopts_siteorigin_panels_widget_classes', 10, 4 ); 61 | function widgetopts_siteorigin_panels_widget_classes( $classes, $widget, $instance, $widget_info ){ 62 | if( isset( $instance['extended_widget_opts'] ) ){ 63 | global $widget_options; 64 | 65 | $get_classes = widgetopts_classes_generator( $instance['extended_widget_opts'], $widget_options, $widget_options['settings'], true ); 66 | $get_classes[] = 'widgetopts-SO'; 67 | 68 | $classes = apply_filters( 'widgetopts_siteorigin_panels_widget_classes', array_merge( $classes, $get_classes ), $widget_info ); 69 | } 70 | 71 | return $classes; 72 | } 73 | } 74 | 75 | ?> 76 | -------------------------------------------------------------------------------- /archive/includes/transient.php: -------------------------------------------------------------------------------- 1 | post_type ){ 19 | delete_option( 'widgetopts_global_all_pages' ); 20 | } 21 | 22 | if( 'publish' == $new_status && 'publish' != $old_status ){ 23 | if( is_array( $widgetopts_types ) && !empty( $widgetopts_types ) && !in_array( $post->post_type, $widgetopts_types ) ){ 24 | delete_option( 'widgetopts_global_types' ); 25 | } 26 | } 27 | } 28 | } 29 | 30 | //remove widgetopts_categories transient when new category created 31 | if( !function_exists( 'widgetopts_delete_transient_terms' ) ){ 32 | add_action( 'create_term', 'widgetopts_delete_transient_terms', 10, 3 ); 33 | add_action( 'edit_term', 'widgetopts_delete_transient_terms', 10, 3 ); 34 | add_action( 'delete_term', 'widgetopts_delete_transient_terms', 10, 3 ); 35 | function widgetopts_delete_transient_terms( $term_id, $tt_id, $taxonomy ){ 36 | global $widgetopts_taxonomies; 37 | 38 | delete_transient( 'widgetopts_taxonomy_' . $taxonomy ); 39 | 40 | if( is_array( $widgetopts_taxonomies ) && !empty( $widgetopts_taxonomies ) && !in_array( $taxonomy, $widgetopts_taxonomies ) ){ 41 | delete_option( 'widgetopts_global_taxonomies' ); 42 | } 43 | 44 | if( $taxonomy == 'category' ){ 45 | delete_option( 'widgetopts_global_categories' ); 46 | } 47 | } 48 | } 49 | ?> 50 | -------------------------------------------------------------------------------- /archive/includes/widgets/option-tabs/alignment.php: -------------------------------------------------------------------------------- 1 | 24 |
  • 25 | 26 |
  • 27 | 44 |
    45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 62 | 63 | 64 | 65 | 66 | 67 |
    54 | 61 |
    Upgrade to Pro Version for Multiple Devices Alignment and Additional Widget Options.', 'widget-options' );?>
    68 |
    69 | 72 | -------------------------------------------------------------------------------- /archive/includes/widgets/option-tabs/state.php: -------------------------------------------------------------------------------- 1 | 24 |
  • 25 | 26 |
  • 27 | 42 |
    43 |

    44 |

    45 | 50 |

    51 |

    52 |
    53 | 56 | -------------------------------------------------------------------------------- /archive/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "widget-options", 3 | "version": "3.2.0", 4 | "description": "Your all-in-one plugin to completely manage your widgets.", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/flowdee/widget-options" 12 | }, 13 | "author": "flowdee", 14 | "license": "BSD-2-Clause", 15 | "devDependencies": { 16 | "browser-sync": "^2.26.3", 17 | "compass-mixins": "^0.12.10", 18 | "gulp": "^4.0.0", 19 | "gulp-minify": "0.0.14", 20 | "gulp-minify-css": "^1.2.4", 21 | "gulp-notify": "^2.2.0", 22 | "gulp-plumber": "^1.2.0", 23 | "gulp-rename": "^1.4.0", 24 | "gulp-sass": "^3.2.1", 25 | "gulp-uglify": "^2.1.2", 26 | "run-sequence": "^1.2.2" 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /archive/readme.md: -------------------------------------------------------------------------------- 1 | # [WordPress Widget Options](https://widget-options.com/) # 2 | 3 | ![Plugin Version](https://img.shields.io/wordpress/plugin/v/widget-options.svg?maxAge=2592000) ![Total Downloads](https://img.shields.io/wordpress/plugin/dt/widget-options.svg?maxAge=2592000) ![Plugin Rating](https://img.shields.io/wordpress/plugin/r/widget-options.svg?maxAge=2592000) ![WordPress Compatibility](https://img.shields.io/wordpress/v/widget-options.svg?maxAge=2592000) [![License](https://img.shields.io/badge/license-GPL--2.0%2B-red.svg)](https://github.com/WidgetOptions/widget-options/blob/master/LICENSE) 4 | 5 | ### Welcome to our GitHub Repository 6 | 7 | Widget Options for WordPress provide extensive options for better widget management. This plugin will give you complete freedom on handling each of your widgets. 8 | 9 | More information can be found at [widget-options.com](https://widget-options.com/). 10 | 11 | ## Installation ## 12 | 13 | For detailed setup instructions, visit the plugin [Installation](https://wordpress.org/plugins/widget-options/installation/) page. 14 | 15 | ## Bugs ## 16 | If you find an issue, let us know [here](https://github.com/WidgetOptions/widget-options/issues)! 17 | 18 | ## Support ## 19 | This is a developer's portal for Widget Options and should _not_ be used for support. Please visit the [support page](https://widget-options.com/contact/) if you need to submit a support request. 20 | 21 | ## Contributions ## 22 | There are various ways you can contribute: 23 | 24 | 1. Raise an [Issue](https://github.com/WidgetOptions/widget-options/issues) on GitHub 25 | 2. Send us a Pull Request with your bug fixes and/or new features 26 | 3. Translate Widget Options into different languages 27 | 4. Provide feedback and suggestions on [enhancements](https://github.com/WidgetOptions/widget-options/issues) 28 | -------------------------------------------------------------------------------- /archive/screenshot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-1.png -------------------------------------------------------------------------------- /archive/screenshot-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-10.png -------------------------------------------------------------------------------- /archive/screenshot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-2.png -------------------------------------------------------------------------------- /archive/screenshot-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-3.png -------------------------------------------------------------------------------- /archive/screenshot-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-4.png -------------------------------------------------------------------------------- /archive/screenshot-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-5.png -------------------------------------------------------------------------------- /archive/screenshot-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-6.png -------------------------------------------------------------------------------- /archive/screenshot-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-7.png -------------------------------------------------------------------------------- /archive/screenshot-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-8.png -------------------------------------------------------------------------------- /archive/screenshot-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/archive/screenshot-9.png -------------------------------------------------------------------------------- /assets/css/jqueryui/1.11.4/themes/ui-lightness/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/assets/css/jqueryui/1.11.4/themes/ui-lightness/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /assets/css/welcome.css: -------------------------------------------------------------------------------- 1 | .widgetopts-badge{position:absolute;top:0;right:0;color:#999;font-size:21px;text-align:center;margin:5px 0 0;width:150px}.widgetopts-badge .widgetopts-mascot{display:block;text-align:center;height:150px;width:150px;background:url("../images/logo-mascot.png");-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover}.widgetopts-badge .version{line-height:30px}.about-wrap .widgetopts-features-button{font-size:16px;height:auto;padding:8px 25px;margin-top:20px}.widgetopts-about-wrap.about-wrap p{max-width:100%}.about-wrap .widgetopts-features img{-webkit-transition:opacity .15s ease-in-out;-moz-transition:opacity .15s ease-in-out;-o-transition:opacity .15s ease-in-out;transition:opacity .15s ease-in-out;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=88);opacity:.88}.about-wrap .widgetopts-features img:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1} 2 | -------------------------------------------------------------------------------- /assets/css/widget-options.css: -------------------------------------------------------------------------------- 1 | body .extendedwopts-show { 2 | display: none; 3 | } 4 | body .widgetopts-hide_title .widget-title { 5 | display: none; 6 | } 7 | body .extendedwopts-md-right { 8 | text-align: right; 9 | } 10 | body .extendedwopts-md-left { 11 | text-align: left; 12 | } 13 | body .extendedwopts-md-center { 14 | text-align: center; 15 | } 16 | body .extendedwopts-md-justify { 17 | text-align: justify; 18 | } 19 | @media screen and (min-width: 1181px) { 20 | body .extendedwopts-hide.extendedwopts-desktop { 21 | display: none !important; 22 | } 23 | body .extendedwopts-show.extendedwopts-desktop { 24 | display: block; 25 | } 26 | body .widget.clearfix-desktop { 27 | clear: both; 28 | } 29 | } 30 | @media screen and (max-width: 1024px) and (orientation: Portrait) { 31 | body .extendedwopts-hide.extendedwopts-tablet { 32 | display: none !important; 33 | } 34 | body .extendedwopts-show.extendedwopts-tablet { 35 | display: block; 36 | } 37 | body .widget.clearfix-desktop { 38 | clear: none; 39 | } 40 | body .widget.clearfix-tablet { 41 | clear: both; 42 | } 43 | } 44 | @media screen and (max-width: 1180px) and (orientation: landscape) { 45 | body .extendedwopts-hide.extendedwopts-tablet { 46 | display: none !important; 47 | } 48 | body .extendedwopts-show.extendedwopts-tablet { 49 | display: block; 50 | } 51 | body .widget.clearfix-desktop { 52 | clear: none; 53 | } 54 | body .widget.clearfix-tablet { 55 | clear: both; 56 | } 57 | } 58 | @media screen and (max-width: 767px) and (orientation: Portrait) { 59 | body .extendedwopts-hide.extendedwopts-tablet:not(.extendedwopts-mobile) { 60 | display: block !important; 61 | } 62 | body .extendedwopts-show.extendedwopts-tablet:not(.extendedwopts-mobile) { 63 | display: none !important; 64 | } 65 | body .extendedwopts-hide.extendedwopts-mobile { 66 | display: none !important; 67 | } 68 | body .extendedwopts-show.extendedwopts-mobile { 69 | display: block; 70 | } 71 | body .widget.clearfix-desktop, 72 | body .widget.clearfix-tablet { 73 | clear: none; 74 | } 75 | body .widget.clearfix-mobile { 76 | clear: both; 77 | } 78 | } 79 | @media screen and (max-width: 991px) and (orientation: landscape) { 80 | body .extendedwopts-hide.extendedwopts-tablet:not(.extendedwopts-mobile) { 81 | display: block !important; 82 | } 83 | body .extendedwopts-show.extendedwopts-tablet:not(.extendedwopts-mobile) { 84 | display: none !important; 85 | } 86 | body .extendedwopts-hide.extendedwopts-mobile { 87 | display: none !important; 88 | } 89 | body .extendedwopts-show.extendedwopts-mobile { 90 | display: block; 91 | } 92 | body .widget.clearfix-desktop, 93 | body .widget.clearfix-tablet { 94 | clear: none; 95 | } 96 | body .widget.clearfix-mobile { 97 | clear: both; 98 | } 99 | } 100 | .panel-cell-style:after { 101 | content: ""; 102 | display: block; 103 | clear: both; 104 | position: relative; 105 | } 106 | -------------------------------------------------------------------------------- /assets/images/cover-book.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/assets/images/cover-book.jpg -------------------------------------------------------------------------------- /assets/images/logo-mascot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/assets/images/logo-mascot.png -------------------------------------------------------------------------------- /assets/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/assets/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /assets/images/widget-options-profile.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/assets/images/widget-options-profile.gif -------------------------------------------------------------------------------- /assets/images/wo-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/assets/images/wo-logo.png -------------------------------------------------------------------------------- /assets/js/jquery.liveFilter.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery.liveFilter 3 | * 4 | * Copyright (c) 2009 Mike Merritt 5 | * 6 | * Forked by Lim Chee Aun (cheeaun.com) 7 | * 8 | */ 9 | 10 | (function($){ 11 | $.fn.liveFilter = function(inputEl, filterEl, options){ 12 | var defaults = { 13 | filterChildSelector: null, 14 | filter: function(el, val){ 15 | return $(el).text().toUpperCase().indexOf(val.toUpperCase()) >= 0; 16 | }, 17 | before: function(){}, 18 | after: function(){} 19 | }; 20 | var options = $.extend(defaults, options); 21 | 22 | var el = $(this).find(filterEl); 23 | if (options.filterChildSelector) el = el.find(options.filterChildSelector); 24 | 25 | var filter = options.filter; 26 | $(inputEl).keyup(function(){ 27 | var val = $(this).val(); 28 | var contains = el.filter(function(){ 29 | return filter(this, val); 30 | }); 31 | var containsNot = el.not(contains); 32 | if (options.filterChildSelector){ 33 | contains = contains.parents(filterEl); 34 | containsNot = containsNot.parents(filterEl).hide(); 35 | } 36 | 37 | options.before.call(this, contains, containsNot); 38 | 39 | contains.show(); 40 | containsNot.hide(); 41 | 42 | if (val === '') { 43 | contains.show(); 44 | containsNot.show(); 45 | } 46 | 47 | options.after.call(this, contains, containsNot); 48 | }); 49 | } 50 | })(jQuery); 51 | -------------------------------------------------------------------------------- /assets/js/jquery.liveFilter.min.js: -------------------------------------------------------------------------------- 1 | !function(e){e.fn.liveFilter=function(t,i,r){var n={filterChildSelector:null,filter:function(t,i){return e(t).text().toUpperCase().indexOf(i.toUpperCase())>=0},before:function(){},after:function(){}},r=e.extend(n,r),l=e(this).find(i);r.filterChildSelector&&(l=l.find(r.filterChildSelector));var f=r.filter;e(t).keyup(function(){var t=e(this).val(),n=l.filter(function(){return f(this,t)}),o=l.not(n);r.filterChildSelector&&(n=n.parents(i),o=o.parents(i).hide()),r.before.call(this,n,o),n.show(),o.hide(),""===t&&(n.show(),o.show()),r.after.call(this,n,o)})}}(jQuery); -------------------------------------------------------------------------------- /assets/js/jquery.widgetopts.beaver.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | var widgetoptsBeaverModule = { 4 | init: function() { 5 | var self = this; 6 | jQuery( '.widgetopts-module-settings-container' ).hide(); 7 | 8 | self.bindEvents(); 9 | }, 10 | 11 | bindEvents: function() { 12 | var self = this; 13 | var $body = jQuery( 'body' ); 14 | 15 | $body.on( 'click', '.fl-builder-widgetopts-tab a', self.navClick ); 16 | 17 | }, 18 | 19 | navClick: function( e ) { 20 | e.preventDefault(); 21 | jQuery( '.widgetopts-s-active' ).removeClass( 'widgetopts-s-active' ); 22 | jQuery( '#fl-builder-settings-tab-widgetopts .fl-builder-settings-section' ).hide(); 23 | jQuery( jQuery( this ).attr('href') ).show(); 24 | jQuery( this ).addClass( 'widgetopts-s-active' ); 25 | } 26 | } 27 | 28 | jQuery(document).ready(function() { 29 | widgetoptsBeaverModule.init(); 30 | }); -------------------------------------------------------------------------------- /assets/js/jquery.widgetopts.beaver.min.js: -------------------------------------------------------------------------------- 1 | "use strict";var widgetoptsBeaverModule={init:function(){jQuery(".widgetopts-module-settings-container").hide(),this.bindEvents()},bindEvents:function(){jQuery(document).on("click",".fl-builder-widgetopts-tab a",this.navClick)},navClick:function(e){e.preventDefault();let t=e.target;jQuery(e.target).is("span")&&(t=jQuery(e.target).parent()),jQuery(".widgetopts-s-active").removeClass("widgetopts-s-active"),jQuery("#fl-builder-settings-tab-widgetopts .fl-builder-settings-section").hide(),jQuery(jQuery(t).attr("href")).show(),jQuery(t).addClass("widgetopts-s-active")}};jQuery(document).ready((function(){widgetoptsBeaverModule.init()})); -------------------------------------------------------------------------------- /assets/js/select2-settings.js: -------------------------------------------------------------------------------- 1 | (function($){ 2 | 3 | WidgetOptsSelect2 = { 4 | _init: function() 5 | { 6 | $('select.widgetopts-select2').each(function() { 7 | $(this).select2({ 8 | width: '100%', 9 | allowClear: true, 10 | placeholder: ' ' 11 | }).on('change', $.proxy(WidgetOptsSelect2._maybePreview, this.context)) 12 | .on('select2:unselecting', function(e) { 13 | $(this).data('unselecting', true); 14 | }).on('select2:open', function(e) { // note the open event is important 15 | if ($(this).data('unselecting')) { 16 | $(this).removeData('unselecting'); // you need to unset this before close 17 | $(this).select2('close'); 18 | } 19 | }).on('select2:unselect', function(e) { // note the open event is important 20 | if( !$(this).val() ){ 21 | $(this).val("").trigger('change'); 22 | } 23 | }); 24 | 25 | if($(this).attr('multiple')) { 26 | var ul = $(this).siblings('.select2-container').first('ul.select2-selection__rendered'); 27 | ul.sortable({ 28 | placeholder : 'ui-state-highlight', 29 | forcePlaceholderSize: true, 30 | items : 'li:not(.select2-search__field)', 31 | tolerance : 'pointer', 32 | stop: function() { 33 | $($(ul).find('.select2-selection__choice').get().reverse()).each(function() { 34 | var id = $(this).data('data').id; 35 | var option = $(this).find('option[value="' + id + '"]')[0]; 36 | $(this).prepend(option); 37 | }); 38 | } 39 | }); 40 | } 41 | }); 42 | }, 43 | 44 | _maybePreview: function() { 45 | var e = { 46 | target: this 47 | }; 48 | 49 | var field = $(this).closest('.fl-field'); 50 | var previewType = field.data('preview'); 51 | 52 | if ('refresh' == previewType.type) { 53 | FLBuilder.preview.delayPreview(e); 54 | } 55 | } 56 | } 57 | 58 | FLBuilder.addHook('settings-form-init', function() { 59 | WidgetOptsSelect2._init(); 60 | }); 61 | 62 | })(jQuery); -------------------------------------------------------------------------------- /assets/js/select2-settings.min.js: -------------------------------------------------------------------------------- 1 | !function(e){WidgetOptsSelect2={_init:function(){e("select.widgetopts-select2").each(function(){if(e(this).select2({width:"100%",allowClear:!0,placeholder:" "}).on("change",e.proxy(WidgetOptsSelect2._maybePreview,this.context)).on("select2:unselecting",function(t){e(this).data("unselecting",!0)}).on("select2:open",function(t){e(this).data("unselecting")&&(e(this).removeData("unselecting"),e(this).select2("close"))}).on("select2:unselect",function(t){e(this).val()||e(this).val("").trigger("change")}),e(this).attr("multiple")){var t=e(this).siblings(".select2-container").first("ul.select2-selection__rendered");t.sortable({placeholder:"ui-state-highlight",forcePlaceholderSize:!0,items:"li:not(.select2-search__field)",tolerance:"pointer",stop:function(){e(e(t).find(".select2-selection__choice").get().reverse()).each(function(){var t=e(this).data("data").id,i=e(this).find('option[value="'+t+'"]')[0];e(this).prepend(i)})}})}})},_maybePreview:function(){var t={target:this};"refresh"==e(this).closest(".fl-field").data("preview").type&&FLBuilder.preview.delayPreview(t)}},FLBuilder.addHook("settings-form-init",function(){WidgetOptsSelect2._init()})}(jQuery); -------------------------------------------------------------------------------- /assets/js/widgetopts.resize.js: -------------------------------------------------------------------------------- 1 | (function () { 2 | // Define breakpoints for mobile, tablet, and desktop 3 | const mobileBreakpoint = 767; 4 | const tabletBreakpoint = 1024; 5 | 6 | let previousDeviceCategory = ""; // To store the previous window size category 7 | 8 | // Function to detect device size category 9 | function getDeviceCategory() { 10 | const width = window.innerWidth; 11 | 12 | if (width <= mobileBreakpoint) { 13 | return "mobile"; 14 | } else if (width > mobileBreakpoint && width <= tabletBreakpoint) { 15 | return "tablet"; 16 | } else { 17 | return "desktop"; 18 | } 19 | } 20 | 21 | // Function to check for window resize and refresh if needed 22 | function checkWindowSize() { 23 | const currentDeviceCategory = getDeviceCategory(); 24 | 25 | // Compare with the previous device category 26 | if (currentDeviceCategory !== previousDeviceCategory) { 27 | previousDeviceCategory = currentDeviceCategory; // Update the previous category 28 | location.reload(); 29 | } 30 | } 31 | 32 | document.addEventListener("DOMContentLoaded", function () { 33 | let resizeTimeout; 34 | 35 | function checkWindowSizeDebounced() { 36 | clearTimeout(resizeTimeout); 37 | resizeTimeout = setTimeout(checkWindowSize, 200); // 200ms delay 38 | } 39 | 40 | // Initial detection when the page loads 41 | previousDeviceCategory = getDeviceCategory(); 42 | 43 | window.addEventListener("resize", checkWindowSizeDebounced); 44 | }); 45 | })(); 46 | -------------------------------------------------------------------------------- /assets/scss/welcome.scss: -------------------------------------------------------------------------------- 1 | @import "compass"; 2 | 3 | .widgetopts-badge{ 4 | position: absolute; 5 | top: 0; 6 | right: 0; 7 | color: #999; 8 | font-size: 21px; 9 | text-align: center; 10 | margin: 5px 0 0; 11 | width: 150px; 12 | .widgetopts-mascot{ 13 | display: block; 14 | text-align: center; 15 | height: 150px; 16 | width: 150px; 17 | background: url('../images/logo-mascot.png'); 18 | @include background-size(cover); 19 | } 20 | .version{ 21 | line-height: 30px; 22 | } 23 | } 24 | .about-wrap .widgetopts-features-button{ 25 | font-size: 16px; 26 | height: auto; 27 | padding: 8px 25px; 28 | margin-top: 20px; 29 | } 30 | .widgetopts-about-wrap.about-wrap p{ 31 | max-width: 100%; 32 | } 33 | 34 | .about-wrap .widgetopts-features{ 35 | img{ 36 | @include transition( opacity .15s ease-in-out ); 37 | @include opacity( 0.88 ); 38 | &:hover{ 39 | @include opacity( 1 ); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /assets/scss/widget-options.scss: -------------------------------------------------------------------------------- 1 | @import 'compass'; 2 | $desktop : 769px; 3 | $tablet : 768px; 4 | $mobile : 736px; 5 | body{ 6 | .extendedwopts-show{ 7 | display: none; 8 | } 9 | .widgetopts-hide_title{ 10 | .widget-title{ 11 | display: none; 12 | } 13 | } 14 | 15 | //alignment 16 | .extendedwopts-md-right{ 17 | text-align: right; 18 | } 19 | .extendedwopts-md-left{ 20 | text-align: left; 21 | } 22 | .extendedwopts-md-center{ 23 | text-align: center; 24 | } 25 | .extendedwopts-md-justify{ 26 | text-align: justify; 27 | } 28 | @media screen and (min-width: $desktop) { 29 | .extendedwopts-hide.extendedwopts-desktop{ 30 | display: none !important; 31 | } 32 | .extendedwopts-show.extendedwopts-desktop{ 33 | display: block; 34 | } 35 | .widget.clearfix-desktop{ 36 | clear: both; 37 | } 38 | } 39 | @media screen and (max-width: $tablet) 40 | and (min-width: $mobile + 1) { 41 | .extendedwopts-hide.extendedwopts-tablet{ 42 | display: none !important; 43 | } 44 | .extendedwopts-show.extendedwopts-tablet{ 45 | display: block; 46 | } 47 | .widget.clearfix-desktop{ 48 | clear: none; 49 | } 50 | .widget.clearfix-tablet{ 51 | clear: both; 52 | } 53 | } 54 | @media screen and (max-width: $mobile) { 55 | .extendedwopts-hide.extendedwopts-mobile{ 56 | display: none !important; 57 | } 58 | .extendedwopts-show.extendedwopts-mobile{ 59 | display: block; 60 | } 61 | .widget.clearfix-desktop, .widget.clearfix-tablet{ 62 | clear: none; 63 | } 64 | .widget.clearfix-mobile{ 65 | clear: both; 66 | } 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /includes/admin/globals.php: -------------------------------------------------------------------------------- 1 | $c) { 34 | if (!empty($c['widgetopts_expiry'])) { 35 | if (time() > strtotime($c['widgetopts_expiry'])) { 36 | unset($_cached[$key]); 37 | } 38 | } 39 | } 40 | 41 | update_option('widgetopts_editor_cached', json_encode($_cached)); 42 | } 43 | } 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/acf.php: -------------------------------------------------------------------------------- 1 | Widget Options :: ACF Support 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.3 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Elementor Pagebuilder Support 15 | * 16 | * @since 4.3 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !class_exists( 'widgetopts_settings_acf' ) ){ 26 | function widgetopts_settings_acf(){ 27 | global $widget_options; 28 | //avoid issue after update 29 | if( !isset( $widget_options['acf'] ) ){ 30 | $widget_options['acf'] = ''; 31 | } 32 | ?> 33 |
  • 34 |
    35 |

    36 |
    37 |

    38 | 39 |

    40 | 41 |
    42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |
    51 |
    52 | 53 | 54 | 55 |

    56 |

    57 | 58 |

    59 |

    60 | 61 |

    62 | 63 | 64 |
  • 65 | 70 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/alignment.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Custom Alignment 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Alignment Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !function_exists( 'widgetopts_settings_alignment' ) ): 26 | function widgetopts_settings_alignment(){ 27 | global $widget_options; ?> 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 |

    53 |

    54 | 55 |

    56 | 57 | 58 |
  • 59 | 64 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/animation.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Animation 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Animation Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_animation' ) ): 20 | function widgetopts_settings_animation(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/beaver_builder.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Beaver Builder Pagebuilder Support 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.5 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Beaver Builder Pagebuilder Support 15 | * 16 | * @since 4.5 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !class_exists( 'widgetopts_settings_beaver' ) ){ 26 | function widgetopts_settings_beaver(){ 27 | global $widget_options; 28 | //avoid issue after update 29 | if( !isset( $widget_options['beaver'] ) ){ 30 | $widget_options['beaver'] = ''; 31 | } 32 | ?> 33 |
  • 34 |
    35 |

    36 |
    37 |

    38 | 39 |

    40 | 41 |
    42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |
    51 |
    52 | 53 | 54 | 55 |

    56 |

    57 | Widget Options section on every Beaver Builder modules that will extend functionalities and will let you control each widgets even more.', 'widget-options' );?> 58 |

    59 |

    60 |

    61 |
    62 |

    63 |
    64 | 65 | 66 |
  • 67 | 72 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/cache.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Cache 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.2 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Fixed Widget Options 15 | * 16 | * @since 3.2 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_cache' ) ): 20 | function widgetopts_settings_cache(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/classic-widgets-screen.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Pages classic_widgets_screen 6 | * 7 | * @copyright Copyright (c) 2016, Jeffrey Carandang 8 | * @since 3.0 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Card Module for Pages classic_widgets_screen Options 16 | * 17 | * @since 3.0 18 | * @global $widget_options 19 | * @return void 20 | */ 21 | 22 | /* 23 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 24 | */ 25 | if (!function_exists('widgetopts_settings_classic_widgets_screen')) : 26 | function widgetopts_settings_classic_widgets_screen() 27 | { 28 | global $widget_options; 29 | ?> 30 |
  • 31 |
    32 |

    33 |

    34 | 35 |

    36 |
    37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 |
    46 |
    47 | 48 | 49 |

    50 |

    51 | 52 |

    53 |

    54 | 55 |

    56 | 57 |
  • 58 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/clone.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Clone Widget 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.4 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Clone Widgets 15 | * 16 | * @since 3.4 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_clone' ) ): 20 | function widgetopts_settings_clone(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/columns.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Column Display 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Column Display Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_columns' ) ): 20 | function widgetopts_settings_columns(){ 21 | ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/custom-sidebar.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Widget Area Options 6 | * 7 | * @copyright Copyright (c) 2017, Jeffrey Carandang 8 | * @since 4.4 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Card Module for Widget Area Options 16 | * 17 | * @since 4.2 18 | * @global $widget_options 19 | * @return void 20 | */ 21 | if (!function_exists('widgetopts_settings_custom_sidebar')) : 22 | function widgetopts_settings_custom_sidebar() 23 | { 24 | 25 | ?> 26 |
  • 27 |
    28 | 30 |

    31 |
    32 |

    33 | 34 |

    35 |
    36 |
  • 37 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/dates.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Days & Date Range 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Days & Date Range Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_dates' ) ): 21 | function widgetopts_settings_dates(){ ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/devices.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Devices Restriction 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Devices Visibility Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !function_exists( 'widgetopts_settings_devices' ) ): 26 | function widgetopts_settings_devices(){ 27 | global $widget_options; ?> 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 |

    53 |

    54 | 55 |

    56 | 57 | 58 |
  • 59 | 64 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/disable_widgets.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Disable Widgets 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Disable Widgets Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_disable_widgets' ) ): 20 | function widgetopts_settings_disable_widgets(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/elementor.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Elementor Pagebuilder Support 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.3 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Elementor Pagebuilder Support 15 | * 16 | * @since 4.3 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !class_exists( 'widgetopts_settings_elementor' ) ){ 26 | function widgetopts_settings_elementor(){ 27 | global $widget_options; 28 | //avoid issue after update 29 | if( !isset( $widget_options['elementor'] ) ){ 30 | $widget_options['elementor'] = ''; 31 | } 32 | ?> 33 |
  • 34 |
    35 |

    36 |
    37 |

    38 | 39 |

    40 | 41 |
    42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |
    51 |
    52 | 53 | 54 | 55 |

    56 |

    57 | Widget Options section on every Elementor widgets that will extend functionalities and will let you control each widgets even more.', 'widget-options' );?> 58 |

    59 |

    60 |

    61 |

    62 | 63 |

    64 | 65 | 66 |
  • 67 | 72 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/fixed.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Fixed Widget 6 | * 7 | * @copyright Copyright (c) 2016, Jeffrey Carandang 8 | * @since 3.0 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Card Module for Fixed Widget Options 16 | * 17 | * @since 3.0 18 | * @global $widget_options 19 | * @return void 20 | */ 21 | if (!function_exists('widgetopts_settings_fixed')) : 22 | function widgetopts_settings_fixed() 23 | { ?> 24 |
  • 25 |
    26 | 27 |

    28 |
    29 |

    30 | 31 |

    32 |
    33 |
  • 34 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/import-export.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Import & Export 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 4.4 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Import & Export 15 | * 16 | * @since 4.4 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | function widgetopts_settings_import_export(){ 26 | global $widget_options; 27 | //avoid issue after update 28 | if( !isset( $widget_options['import_export'] ) ){ 29 | $widget_options['import_export'] = ''; 30 | } 31 | ?> 32 |
  • 33 |
    34 |

    35 |

    36 | 37 |

    38 | 39 |
    40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
    49 | 50 |
    51 | 52 | 53 | 54 |

    55 |

    56 | Tools > Import/Export Widgets. This will give you the easiest option to export and import your widgets. Creating backup and restore of your widgets can be done really simple!', 'widget-options' );?> 57 |

    58 |

    59 | 60 |

    61 | 62 | 63 |
  • 64 | 68 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/links.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Link Widget 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Links Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_links' ) ): 20 | function widgetopts_settings_links(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/logic.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Display Logic 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Display Logic Options 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_logic' ) ): 21 | function widgetopts_settings_logic(){ 22 | global $widget_options; ?> 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 | Please note that the display logic you introduce is EVAL'd directly. Anyone who has access to edit widget appearance will have the right to add any code, including malicious and possibly destructive functions. There is an optional filter widget_options_logic_override which you can use to bypass the EVAL with your own code if needed.", 'widget-options' )?> 51 |

    52 | 53 | 54 | 57 | 64 | 65 |
    55 | 56 | 58 | value="1" /> 59 | 60 |

    61 | 62 |

    63 |
    66 | 67 | 68 |
  • 69 | 74 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/move.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Move Widget 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.4 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Move Widget Feature 15 | * 16 | * @since 3.4 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !function_exists( 'widgetopts_settings_move' ) ): 26 | function widgetopts_settings_move(){ 27 | global $widget_options; 28 | 29 | //avoid issue after update 30 | if( !isset( $widget_options['move'] ) ){ 31 | $widget_options['move'] = ''; 32 | } 33 | ?> 34 |
  • 35 |
    36 |

    37 |

    38 | 39 |

    40 | 41 |
    42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |
    51 | 52 |
    53 | 54 | 55 | 56 |

    57 |

    58 | Move button that will let you easily move any widgets to any sidebar widget areas without dragging them. This will definitely increase your productivity and widget management specially on smaller screen devices such as mobile phones. You can check how this feature works on this video. Thanks!', 'widget-options' );?> 59 |

    60 |

    61 | 62 |

    63 | 64 | 65 |
  • 66 | 71 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/page-and-post-block.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Hide Title 6 | * 7 | * @copyright Copyright (c) 2016, Jeffrey Carandang 8 | * @since 4.0 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Card Module for Hide Widget Title 16 | * 17 | * @since 4.0 18 | * @global $widget_options 19 | * @return void 20 | */ 21 | 22 | /* 23 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 24 | */ 25 | 26 | function widgetopts_settings_page_and_post_block() 27 | { 28 | global $widget_options; 29 | $hide_page_and_post_block = (isset($widget_options['settings']['hide_page_and_post_block'])) ? $widget_options['settings']['hide_page_and_post_block'] : array(); 30 | ?> 31 |
  • 32 |
    33 |

    34 |

    35 | 36 |

    37 | 38 |
    39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |
    48 |
    49 | 50 | 51 | 52 |

    53 |

    54 | 55 |

    56 | 57 | 58 | 61 | 68 | 69 |
    59 | 60 | 62 | value="1" /> 63 | 64 |

    65 | 66 |

    67 |
    70 | 71 | 72 |
  • 73 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/permission.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Custom Alignment 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Alignment Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_permissions' ) ): 20 | function widgetopts_settings_permissions(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 32 | 37 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/roles.php: -------------------------------------------------------------------------------- 1 | Widget Options :: User Roles Restriction 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for User Roles Restriction 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | if( !function_exists( 'widgetopts_settings_roles' ) ): 21 | function widgetopts_settings_roles(){ ?> 22 |
  • 23 |
    24 | 25 |

    26 |
    27 |

    28 | 29 |

    30 |
    31 |
  • 32 | 37 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/search.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Live Widget Search 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 3.3 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Live Widget Search 15 | * 16 | * @since 3.3 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !function_exists( 'widgetopts_settings_search' ) ): 26 | function widgetopts_settings_search(){ 27 | global $widget_options; 28 | //prevent undefined index error on upgrade 29 | if( !isset( $widget_options['search'] ) ){ 30 | $widget_options['search'] = ''; 31 | } 32 | ?> 33 |
  • 64 | 69 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/shortcodes.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Shortcodes 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Shortcodes Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_shortcodes' ) ): 20 | function widgetopts_settings_shortcodes(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/sidebar-more_plugins.php: -------------------------------------------------------------------------------- 1 | Widget Options 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 4.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Metabox for Support 15 | * 16 | * @since 4.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_more_plugins' ) ): 20 | function widgetopts_settings_more_plugins(){ ?> 21 |
    22 |

    23 |
    24 |

    25 |

    26 | 27 |

    28 |
    29 |
    30 | 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/sidebar-opt_in.php: -------------------------------------------------------------------------------- 1 | Widget Options 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 4.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Metabox for Support 15 | * 16 | * @since 4.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_sidebar_opt_in' ) ): 20 | function widgetopts_settings_sidebar_opt_in(){ ?> 21 |
    22 |

    23 |
    24 |

    25 |
    26 |

    27 | 28 |

    29 |

    30 |
    31 | 32 | 33 | 34 | 35 | 36 |

    37 |

    38 | 39 |

    40 |
    41 |
    42 |
    43 | 55 | 56 | 61 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/sidebar-upsell_pro.php: -------------------------------------------------------------------------------- 1 | Widget Options 6 | * 7 | * @copyright Copyright (c) 2016, Jeffrey Carandang 8 | * @since 4.0 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Metabox for Purchase Validation 16 | * 17 | * @since 4.0 18 | * @return void 19 | */ 20 | if (!function_exists('widgetopts_settings_upgrade_pro')) : 21 | function widgetopts_settings_upgrade_pro() 22 | { ?> 23 |
    24 |

    25 |
    26 |

    27 | Unlock all features! Get the world\'s most complete widget management and get best out of your widgets with Widget Options Extended including: ', 'widget-options'); ?> 30 |

    31 | 60 |

    61 | 62 |

    63 |
    64 |
    65 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/siteorigin.php: -------------------------------------------------------------------------------- 1 | Widget Options :: SiteOrigin Pagebuilder Support 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for SiteOrigin Pagebuilder Support 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !function_exists( 'widgetopts_settings_siteorigin' ) ): 26 | function widgetopts_settings_siteorigin(){ 27 | global $widget_options; ?> 28 |
  • 29 |
    30 |

    31 |

    32 | 33 |

    34 | 35 |
    36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
    45 |
    46 | 47 | 48 | 49 |

    50 |

    51 | Pagebuilder by SiteOrigin. Easily manage and extends widget functionalities and visibility using tabbed options provided for each widgets.', 'widget-options' );?> 52 |

    53 |

    54 |

    55 |

    56 |

    57 | 58 |

    59 |

    60 | 61 |

    62 | 63 | 64 |
  • 65 | 70 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/sliding.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Widgets on Menu 5 | * 6 | * @copyright Copyright (c) 2017, Jeffrey Carandang 7 | * @since 1.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Widgets on Menu Options 15 | * 16 | * @since 1.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_sliding_addon' ) ): 20 | function widgetopts_settings_sliding_addon(){ 21 | 22 | if( !is_plugin_active( 'sliding-widget-options/plugin.php' ) ){ ?> 23 |
  • 24 |
    25 | 26 |

    27 |
    28 |

    29 | Elementor Compatible', 'widget-options' ); 33 | } 34 | ?> 35 |

    36 |
    37 |
  • 38 | 44 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/state.php: -------------------------------------------------------------------------------- 1 | Widget Options :: User Login State 5 | * 6 | * @copyright Copyright (c) 2018, Jeffrey Carandang 7 | * @since 3.7 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for User Login State 15 | * 16 | * @since 3.7 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !class_exists( 'widgetopts_settings_state' ) ){ 26 | function widgetopts_settings_state(){ 27 | global $widget_options; 28 | //avoid issue after update 29 | if( !isset( $widget_options['state'] ) ){ 30 | $widget_options['state'] = ''; 31 | } 32 | ?> 33 |
  • 34 |
    35 |

    36 |

    37 | 38 |

    39 | 40 |
    41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 |
    50 |
    51 | 52 | 53 | 54 |

    55 |

    56 | 57 |

    58 |

    59 | 60 |

    61 | 62 | 63 |
  • 64 | 69 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/styling.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Custom Styling 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Custom Styling Options 15 | * 16 | * @since 3.0 17 | * @return void 18 | */ 19 | if( !function_exists( 'widgetopts_settings_styling' ) ): 20 | function widgetopts_settings_styling(){ ?> 21 |
  • 22 |
    23 | 24 |

    25 |
    26 |

    27 | 28 |

    29 |
    30 |
  • 31 | 36 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/taxonomies.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Extended Taxonomy Terms 6 | * 7 | * @copyright Copyright (c) 2016, Jeffrey Carandang 8 | * @since 3.0 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Card Module for Extended Taxonomy Terms Options 16 | * 17 | * @since 3.0 18 | * @return void 19 | */ 20 | if (!function_exists('widgetopts_settings_taxonomies')) : 21 | function widgetopts_settings_taxonomies() 22 | { ?> 23 |
  • 24 |
    25 | 26 |

    27 |
    28 |

    29 | 30 |

    31 |
    32 |
  • 33 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/title.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Hide Title 5 | * 6 | * @copyright Copyright (c) 2016, Jeffrey Carandang 7 | * @since 3.0 8 | */ 9 | 10 | // Exit if accessed directly 11 | if ( ! defined( 'ABSPATH' ) ) exit; 12 | 13 | /** 14 | * Create Card Module for Hide Widget Title 15 | * 16 | * @since 3.0 17 | * @global $widget_options 18 | * @return void 19 | */ 20 | 21 | /* 22 | * Note: Please add a class "no-settings" in the
  • card if the card has no additional configuration, if there are configuration please remove the class 23 | */ 24 | 25 | if( !function_exists( 'widgetopts_settings_title' ) ): 26 | function widgetopts_settings_title(){ 27 | global $widget_options; ?> 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 |

    53 |

    54 | 55 |

    56 | 57 | 58 |
  • 59 | 64 | -------------------------------------------------------------------------------- /includes/admin/settings/modules/urls.php: -------------------------------------------------------------------------------- 1 | Widget Options :: Link Widget 6 | * 7 | * @copyright Copyright (c) 2016, Jeffrey Carandang 8 | * @since 3.0 9 | */ 10 | 11 | // Exit if accessed directly 12 | if (!defined('ABSPATH')) exit; 13 | 14 | /** 15 | * Create Card Module for Custom Links Options 16 | * 17 | * @since 3.0 18 | * @return void 19 | */ 20 | if (!function_exists('widgetopts_settings_urls')) : 21 | function widgetopts_settings_urls() 22 | { ?> 23 |
  • 24 |
    25 | 26 |

    27 |
    28 |

    29 | * to create a URL wildcard restrictions.', 'widget-options'); ?> 30 |

    31 |
    32 |
  • 33 | -------------------------------------------------------------------------------- /includes/pagebuilders/siteorigin.php: -------------------------------------------------------------------------------- 1 | $widgets) { 25 | if (isset($widgets['extended_widget_opts']) && !empty($widgets['extended_widget_opts'])) { 26 | 27 | if (isset($panels_data['widgets'][$key]) && 'activate' == $widget_options['logic']) { 28 | // display widget logic 29 | if (isset($widgets['extended_widget_opts']['class']) && isset($widgets['extended_widget_opts']['class']['logic']) && !empty($widgets['extended_widget_opts']['class']['logic'])) { 30 | $display_logic = stripslashes(trim($widgets['extended_widget_opts']['class']['logic'])); 31 | $display_logic = apply_filters('widget_options_logic_override', $display_logic); 32 | if ($display_logic === false) { 33 | unset($panels_data['widgets'][$key]); 34 | } 35 | if ($display_logic === true) { 36 | // return true; 37 | } 38 | // if (stristr($display_logic, "return") === false) { 39 | // $display_logic = "return (" . $display_logic . ");"; 40 | // } 41 | $display_logic = htmlspecialchars_decode($display_logic, ENT_QUOTES); 42 | try { 43 | if (!widgetopts_safe_eval($display_logic)) { 44 | unset($panels_data['widgets'][$key]); 45 | } 46 | } catch (ParseError $e) { 47 | unset($panels_data['widgets'][$key]); 48 | } 49 | } 50 | } 51 | } 52 | } 53 | } 54 | } 55 | return $panels_data; 56 | } 57 | } 58 | 59 | if (!function_exists('widgetopts_siteorigin_panels_widget_classes')) { 60 | add_filter('siteorigin_panels_widget_classes', 'widgetopts_siteorigin_panels_widget_classes', 10, 4); 61 | function widgetopts_siteorigin_panels_widget_classes($classes, $widget, $instance, $widget_info) 62 | { 63 | if (isset($instance['extended_widget_opts'])) { 64 | global $widget_options; 65 | 66 | $get_classes = widgetopts_classes_generator($instance['extended_widget_opts'], $widget_options, $widget_options['settings'], true); 67 | $get_classes[] = 'widgetopts-SO'; 68 | 69 | $classes = apply_filters('widgetopts_siteorigin_panels_widget_classes', array_merge($classes, $get_classes), $widget_info); 70 | } 71 | 72 | return $classes; 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /includes/transient.php: -------------------------------------------------------------------------------- 1 | post_type ){ 19 | delete_option( 'widgetopts_global_all_pages' ); 20 | } 21 | 22 | if( 'publish' == $new_status && 'publish' != $old_status ){ 23 | if( is_array( $widgetopts_types ) && !empty( $widgetopts_types ) && !in_array( $post->post_type, $widgetopts_types ) ){ 24 | delete_option( 'widgetopts_global_types' ); 25 | } 26 | } 27 | } 28 | } 29 | 30 | //remove widgetopts_categories transient when new category created 31 | if( !function_exists( 'widgetopts_delete_transient_terms' ) ){ 32 | add_action( 'create_term', 'widgetopts_delete_transient_terms', 10, 3 ); 33 | add_action( 'edit_term', 'widgetopts_delete_transient_terms', 10, 3 ); 34 | add_action( 'delete_term', 'widgetopts_delete_transient_terms', 10, 3 ); 35 | function widgetopts_delete_transient_terms( $term_id, $tt_id, $taxonomy ){ 36 | global $widgetopts_taxonomies; 37 | 38 | delete_transient( 'widgetopts_taxonomy_' . $taxonomy ); 39 | 40 | if( is_array( $widgetopts_taxonomies ) && !empty( $widgetopts_taxonomies ) && !in_array( $taxonomy, $widgetopts_taxonomies ) ){ 41 | delete_option( 'widgetopts_global_taxonomies' ); 42 | } 43 | 44 | if( $taxonomy == 'category' ){ 45 | delete_option( 'widgetopts_global_categories' ); 46 | } 47 | } 48 | } 49 | ?> 50 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # [WordPress Widget Options](https://widget-options.com/) # 2 | 3 | ![Plugin Version](https://img.shields.io/wordpress/plugin/v/widget-options.svg?maxAge=2592000) ![Total Downloads](https://img.shields.io/wordpress/plugin/dt/widget-options.svg?maxAge=2592000) ![Plugin Rating](https://img.shields.io/wordpress/plugin/r/widget-options.svg?maxAge=2592000) ![WordPress Compatibility](https://img.shields.io/wordpress/v/widget-options.svg?maxAge=2592000) [![License](https://img.shields.io/badge/license-GPL--2.0%2B-red.svg)](https://github.com/WidgetOptions/widget-options/blob/master/LICENSE) 4 | 5 | ### Welcome to our GitHub Repository 6 | 7 | Widget Options for WordPress provide extensive options for better widget management. This plugin will give you complete freedom on handling each of your widgets. 8 | 9 | More information can be found at [widget-options.com](https://widget-options.com/). 10 | 11 | ## Installation ## 12 | 13 | For detailed setup instructions, visit the plugin [Installation](https://wordpress.org/plugins/widget-options/installation/) page. 14 | 15 | ## Bugs ## 16 | If you find an issue, let us know [here](https://github.com/WidgetOptions/widget-options/issues)! 17 | 18 | ## Support ## 19 | This is a developer's portal for Widget Options and should _not_ be used for support. Please visit the [support page](https://widget-options.com/contact/) if you need to submit a support request. 20 | 21 | ## Contributions ## 22 | There are various ways you can contribute: 23 | 24 | 1. Raise an [Issue](https://github.com/WidgetOptions/widget-options/issues) on GitHub 25 | 2. Send us a Pull Request with your bug fixes and/or new features 26 | 3. Translate Widget Options into different languages 27 | 4. Provide feedback and suggestions on [enhancements](https://github.com/WidgetOptions/widget-options/issues) 28 | -------------------------------------------------------------------------------- /screenshot-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-1.gif -------------------------------------------------------------------------------- /screenshot-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-10.png -------------------------------------------------------------------------------- /screenshot-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-11.png -------------------------------------------------------------------------------- /screenshot-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-12.png -------------------------------------------------------------------------------- /screenshot-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-13.png -------------------------------------------------------------------------------- /screenshot-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-14.png -------------------------------------------------------------------------------- /screenshot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-2.png -------------------------------------------------------------------------------- /screenshot-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-3.png -------------------------------------------------------------------------------- /screenshot-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-4.png -------------------------------------------------------------------------------- /screenshot-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-5.png -------------------------------------------------------------------------------- /screenshot-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-6.png -------------------------------------------------------------------------------- /screenshot-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-7.png -------------------------------------------------------------------------------- /screenshot-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-8.png -------------------------------------------------------------------------------- /screenshot-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WidgetOptions/widget-options/5bf0f05247d70228009d7660654511298ca1901f/screenshot-9.png --------------------------------------------------------------------------------