PluginProbe
TableKit – WordPress Table Builder for Data Tables, WooCommerce Product Tables & Post Tables / 2.2.13
TableKit – WordPress Table Builder for Data Tables, WooCommerce Product Tables & Post Tables v2.2.13
2.2.13 2.2.12 2.2.11 2.2.10 2.2.9 2.2.8 2.2.7 2.2.6 2.2.5 2.2.4 2.2.3 trunk 1.0.0 1.0.1 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.2.0 2.2.1 2.2.2
table-builder-block / includes / Traits / PluginHelper.php

PluginHelper.php in TableKit – WordPress Table Builder for Data Tables, WooCommerce Product Tables & Post Tables 2.2.13, at includes/Traits/PluginHelper.php

46 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Shared plugin-status helper methods
4 *
5 * @package TableKit
6 */
7
8 namespace TableBuilder\Traits;
9
10 /**
11 * Trait for making singleton instance
12 * This is a factory singleton
13 *
14 * @package TableBuilder\Traits
15 */
16 trait PluginHelper {
17 /**
18 * Checks whether a plugin is active, site-wide or network-wide.
19 *
20 * @param string $plugin Plugin basename, e.g. "table-builder-block-pro/table-builder-block-pro.php".
21 * @return bool True if the plugin is active on this site or network-wide.
22 */
23 public static function is_plugin_active( $plugin ) {
24 return in_array( $plugin, (array) get_option( 'active_plugins', array() ), true ) || self::is_plugin_active_for_network( $plugin );
25 }
26
27 /**
28 * Checks whether a plugin is network-activated on a multisite install.
29 *
30 * @param string $plugin Plugin basename, e.g. "table-builder-block-pro/table-builder-block-pro.php".
31 * @return bool True if the plugin is network-active; always false on non-multisite.
32 */
33 public static function is_plugin_active_for_network( $plugin ) {
34 if ( ! is_multisite() ) {
35 return false;
36 }
37
38 $plugins = get_site_option( 'active_sitewide_plugins' );
39 if ( isset( $plugins[ $plugin ] ) ) {
40 return true;
41 }
42
43 return false;
44 }
45 }
46