PluginProbe ʕ •ᴥ•ʔ
Widget Options – Advanced Conditional Visibility for Gutenberg Blocks & Classic Widgets / 3.7.6
Widget Options – Advanced Conditional Visibility for Gutenberg Blocks & Classic Widgets v3.7.6
4.2.5 4.2.4 trunk 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.2 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8 3.8.1 3.8.10 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.8.8 3.8.9 3.8.9.1 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.5.1 4.0.6 4.0.6.1 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.2 4.1.3 4.2.0 4.2.1 4.2.2 4.2.3
widget-options / plugin.php
widget-options Last commit date
assets 5 years ago includes 4 years ago languages 5 years ago templates 5 years ago LICENSE 5 years ago plugin.php 5 years ago readme.md 5 years ago readme.txt 4 years ago screenshot-1.png 5 years ago screenshot-10.png 5 years ago screenshot-2.png 5 years ago screenshot-3.png 5 years ago screenshot-4.png 5 years ago screenshot-5.png 5 years ago screenshot-6.png 5 years ago screenshot-7.png 5 years ago screenshot-8.png 5 years ago screenshot-9.png 5 years ago
plugin.php
252 lines
1 <?php
2 /**
3 * Plugin Name: Widget Options
4 * Plugin URI: https://widget-options.com/
5 * Description: Additional Widget options for better widget control. Get <strong><a href="http://widget-options.com/" target="_blank" >Extended Widget Options for WordPress</a></strong> for complete widget controls. Thanks!
6 * Version: 3.7.6
7 * Author: Widget Options Team
8 * Author URI: https://widget-options.com/
9 * Text Domain: widget-options
10 * Domain Path: languages
11 *
12 * @category Widgets
13 * @author Widget Options Team
14 */
15 // Exit if accessed directly.
16 if ( ! defined( 'ABSPATH' ) ) exit;
17 if ( ! class_exists( 'WP_Widget_Options' ) ) :
18
19 /**
20 * Main WP_Widget_Options Class.
21 *
22 * @since 3.2
23 */
24 final class WP_Widget_Options {
25 /**
26 * @var WP_Widget_Options The one true WP_Widget_Options
27 * @since 3.2
28 */
29 private static $instance;
30
31 /**
32 * Main WP_Widget_Options Instance.
33 *
34 * Insures that only one instance of WP_Widget_Options exists in memory at any one
35 * time. Also prevents needing to define globals all over the place.
36 *
37 * @since 3.2
38 * @static
39 * @staticvar array $instance
40 * @uses WP_Widget_Options::setup_constants() Setup the constants needed.
41 * @uses WP_Widget_Options::includes() Include the required files.
42 * @uses WP_Widget_Options::load_textdomain() load the language files.
43 * @see WIDGETOPTS()
44 * @return object|WP_Widget_Options The one true WP_Widget_Options
45 */
46 public static function instance() {
47 if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Widget_Options ) ) {
48 self::$instance = new WP_Widget_Options;
49 self::$instance->setup_constants();
50
51 // add_action( 'plugins_loaded', array( self::$instance, 'load_textdomain' ) );
52
53 self::$instance->includes();
54 // self::$instance->roles = new WIDGETOPTS_Roles();
55 }
56 return self::$instance;
57 }
58
59 /**
60 * Setup plugin constants.
61 *
62 * @access private
63 * @since 4.1
64 * @return void
65 */
66 private function setup_constants() {
67
68 // Plugin version.
69 if ( ! defined( 'WIDGETOPTS_PLUGIN_NAME' ) ) {
70 define( 'WIDGETOPTS_PLUGIN_NAME', 'Widget Options' );
71 }
72
73 // Plugin version.
74 if ( ! defined( 'WIDGETOPTS_VERSION' ) ) {
75 define( 'WIDGETOPTS_VERSION', ' 3.7.6' );
76 }
77
78 // Plugin Folder Path.
79 if ( ! defined( 'WIDGETOPTS_PLUGIN_DIR' ) ) {
80 define( 'WIDGETOPTS_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
81 }
82
83 // Plugin Folder URL.
84 if ( ! defined( 'WIDGETOPTS_PLUGIN_URL' ) ) {
85 define( 'WIDGETOPTS_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
86 }
87
88 // Plugin Root File.
89 if ( ! defined( 'WIDGETOPTS_PLUGIN_FILE' ) ) {
90 define( 'WIDGETOPTS_PLUGIN_FILE', __FILE__ );
91 }
92 }
93
94 /**
95 * Include required files.
96 *
97 * @access private
98 * @since 4.1
99 * @return void
100 */
101 private function includes() {
102 global $widget_options, $extended_license, $widgetopts_taxonomies, $widgetopts_pages, $widgetopts_types, $widgetopts_categories, $pagenow;
103
104 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/register-settings.php';
105 $widget_options = widgetopts_get_settings();
106
107 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/extras.php';
108 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/scripts.php';
109
110 //call admin only resources
111 if ( is_admin() ) {
112
113 //other global variables to prevent duplicate and faster calls
114 $widgetopts_pages = widgetopts_global_pages();
115
116 //admin settings
117 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/globals.php';
118 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/welcome.php';
119 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/display-settings.php';
120 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/transient.php';
121
122 if( in_array( $pagenow, array( 'options-general.php' ) ) ){
123 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/visibility.php';
124 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/devices.php';
125 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/alignment.php';
126 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/title.php';
127 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/classes.php';
128 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/logic.php';
129 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/links.php';
130 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/fixed.php';
131 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/columns.php';
132 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/roles.php';
133 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/dates.php';
134 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/styling.php';
135 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/animation.php';
136 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/taxonomies.php';
137 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/disable_widgets.php';
138 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/permission.php';
139 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/shortcodes.php';
140 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/cache.php';
141 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/siteorigin.php';
142 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-upsell_pro.php';
143 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-opt_in.php';
144 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-more_plugins.php';
145 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-support_box.php';
146 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/search.php';
147 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sliding.php';
148 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/move.php';
149 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/clone.php';
150 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/elementor.php';
151 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/import-export.php';
152 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/widget-area.php';
153 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/urls.php';
154 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/beaver_builder.php';
155 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/acf.php';
156 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/state.php';
157 }
158
159 // if( in_array( $pagenow, array( 'widgets.php' ) ) ){
160 //widget callbacks
161 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/widgets.php';
162
163 //add visibility tab if activated
164 if( $widget_options['visibility'] == 'activate' ){
165 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/visibility.php';
166 }
167 //add devices tab if activated
168 if( $widget_options['devices'] == 'activate' ){
169 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/devices.php';
170 }
171
172 //add alignment tab if activated
173 if( $widget_options['alignment'] == 'activate' ){
174 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/alignment.php';
175 }
176
177 //add alignment tab if activated
178 if( isset( $widget_options['state'] ) && $widget_options['state'] == 'activate' ){
179 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/state.php';
180 }
181
182 //add settings tab if activated
183 if( 'activate' == $widget_options['hide_title'] ||
184 'activate' == $widget_options['classes'] ||
185 'activate' == $widget_options['logic'] ){
186 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/settings.php';
187 }
188
189 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/upsell.php';
190
191 if( ( isset( $widget_options['import_export'] ) && 'activate' == $widget_options['import_export'] ) ||
192 ( isset( $widget_options['widget_area'] ) && 'activate' == $widget_options['widget_area'] )
193 ){
194 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/import-export.php';
195 }
196 // }
197
198 //admin notices
199 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/notices.php';
200
201 } //end is_admin condition
202
203 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/extras.php';
204 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/display.php';
205 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/ajax-functions.php';
206
207 //pagebuilders support
208 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/siteorigin.php';
209 if( defined( 'ELEMENTOR_VERSION' ) && isset( $widget_options['elementor'] ) && 'activate' == $widget_options['elementor'] ){
210 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/elementor/elementor.php';
211 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/elementor/render.php';
212 }
213 if( class_exists( 'FLBuilderLoader' ) && isset( $widget_options['beaver'] ) && 'activate' == $widget_options['beaver'] ){
214 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/beaver/beaver.php';
215 }
216
217 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/install.php';
218 }
219
220 }
221
222 endif; // End if class_exists check.
223
224
225 /**
226 * The main function for that returns WP_Widget_Options
227 *
228 * The main function responsible for returning the one true WP_Widget_Options
229 * Instance to functions everywhere.
230 *
231 * Use this function like you would a global variable, except without needing
232 * to declare the global.
233 *
234 * Example: <?php $widgetopts = WP_Widget_Options(); ?>
235 *
236 * @since 3.2
237 * @return object|WP_Widget_Options The one true WP_Widget_Options Instance.
238 */
239 if( !function_exists( 'WIDGETOPTS' ) ){
240 function WIDGETOPTS() {
241 return WP_Widget_Options::instance();
242 }
243 // Get Plugin Running.
244 if( function_exists( 'is_multisite' ) && is_multisite() ){
245 //loads on plugins_loaded action to avoid issue on multisite
246 add_action( 'plugins_loaded', 'WIDGETOPTS', apply_filters( 'widgetopts_priority', 90 ) );
247 }else{
248 WIDGETOPTS();
249 }
250 }
251 ?>
252