PluginProbe ʕ •ᴥ•ʔ
Widget Options – Advanced Conditional Visibility for Gutenberg Blocks & Classic Widgets / 3.7.7
Widget Options – Advanced Conditional Visibility for Gutenberg Blocks & Classic Widgets v3.7.7
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
257 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.7
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.7' );
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 // Plugin Root File.
94 if (!defined('WIDGETOPTS_PLUGIN_WEBSITE')) {
95 define('WIDGETOPTS_PLUGIN_WEBSITE', 'https://widget-options.com');
96 }
97 }
98
99 /**
100 * Include required files.
101 *
102 * @access private
103 * @since 4.1
104 * @return void
105 */
106 private function includes() {
107 global $widget_options, $extended_license, $widgetopts_taxonomies, $widgetopts_pages, $widgetopts_types, $widgetopts_categories, $pagenow;
108
109 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/register-settings.php';
110 $widget_options = widgetopts_get_settings();
111
112 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/extras.php';
113 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/scripts.php';
114
115 //call admin only resources
116 if ( is_admin() ) {
117
118 //other global variables to prevent duplicate and faster calls
119 $widgetopts_pages = widgetopts_global_pages();
120
121 //admin settings
122 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/globals.php';
123 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/welcome.php';
124 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/display-settings.php';
125 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/transient.php';
126
127 if( in_array( $pagenow, array( 'options-general.php' ) ) ){
128 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/visibility.php';
129 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/devices.php';
130 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/alignment.php';
131 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/title.php';
132 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/classes.php';
133 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/logic.php';
134 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/links.php';
135 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/fixed.php';
136 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/columns.php';
137 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/roles.php';
138 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/dates.php';
139 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/styling.php';
140 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/animation.php';
141 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/taxonomies.php';
142 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/disable_widgets.php';
143 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/permission.php';
144 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/shortcodes.php';
145 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/cache.php';
146 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/siteorigin.php';
147 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-upsell_pro.php';
148 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-opt_in.php';
149 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-more_plugins.php';
150 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sidebar-support_box.php';
151 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/search.php';
152 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/sliding.php';
153 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/move.php';
154 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/clone.php';
155 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/elementor.php';
156 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/import-export.php';
157 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/widget-area.php';
158 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/urls.php';
159 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/beaver_builder.php';
160 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/acf.php';
161 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/settings/modules/state.php';
162 }
163
164 // if( in_array( $pagenow, array( 'widgets.php' ) ) ){
165 //widget callbacks
166 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/widgets.php';
167
168 //add visibility tab if activated
169 if( $widget_options['visibility'] == 'activate' ){
170 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/visibility.php';
171 }
172 //add devices tab if activated
173 if( $widget_options['devices'] == 'activate' ){
174 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/devices.php';
175 }
176
177 //add alignment tab if activated
178 if( $widget_options['alignment'] == 'activate' ){
179 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/alignment.php';
180 }
181
182 //add alignment tab if activated
183 if( isset( $widget_options['state'] ) && $widget_options['state'] == 'activate' ){
184 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/state.php';
185 }
186
187 //add settings tab if activated
188 if( 'activate' == $widget_options['hide_title'] ||
189 'activate' == $widget_options['classes'] ||
190 'activate' == $widget_options['logic'] ){
191 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/settings.php';
192 }
193
194 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/option-tabs/upsell.php';
195
196 if( ( isset( $widget_options['import_export'] ) && 'activate' == $widget_options['import_export'] ) ||
197 ( isset( $widget_options['widget_area'] ) && 'activate' == $widget_options['widget_area'] )
198 ){
199 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/import-export.php';
200 }
201 // }
202
203 //admin notices
204 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/admin/notices.php';
205
206 } //end is_admin condition
207
208 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/extras.php';
209 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/widgets/display.php';
210 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/ajax-functions.php';
211
212 //pagebuilders support
213 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/siteorigin.php';
214 if( defined( 'ELEMENTOR_VERSION' ) && isset( $widget_options['elementor'] ) && 'activate' == $widget_options['elementor'] ){
215 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/elementor/elementor.php';
216 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/elementor/render.php';
217 }
218 if( class_exists( 'FLBuilderLoader' ) && isset( $widget_options['beaver'] ) && 'activate' == $widget_options['beaver'] ){
219 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/pagebuilders/beaver/beaver.php';
220 }
221
222 require_once WIDGETOPTS_PLUGIN_DIR . 'includes/install.php';
223 }
224
225 }
226
227 endif; // End if class_exists check.
228
229
230 /**
231 * The main function for that returns WP_Widget_Options
232 *
233 * The main function responsible for returning the one true WP_Widget_Options
234 * Instance to functions everywhere.
235 *
236 * Use this function like you would a global variable, except without needing
237 * to declare the global.
238 *
239 * Example: <?php $widgetopts = WP_Widget_Options(); ?>
240 *
241 * @since 3.2
242 * @return object|WP_Widget_Options The one true WP_Widget_Options Instance.
243 */
244 if( !function_exists( 'WIDGETOPTS' ) ){
245 function WIDGETOPTS() {
246 return WP_Widget_Options::instance();
247 }
248 // Get Plugin Running.
249 if( function_exists( 'is_multisite' ) && is_multisite() ){
250 //loads on plugins_loaded action to avoid issue on multisite
251 add_action( 'plugins_loaded', 'WIDGETOPTS', apply_filters( 'widgetopts_priority', 90 ) );
252 }else{
253 WIDGETOPTS();
254 }
255 }
256 ?>
257