%2$s', esc_url($link), $label); ?>
is_plugin_installed($plugin_slug); return array( 'installed' => $installed, 'active' => $installed && $tgmpa->is_plugin_active($plugin_slug), ); } public static function output_companion_message() { wp_enqueue_style('one_page_express_customizer_css', get_template_directory_uri() . '/customizer/css/companion-install.css'); wp_enqueue_script('one_page_express_customizer_css', get_template_directory_uri() . '/customizer/js/companion-install.js'); ?> plugins[$slug]['file_path']; return add_query_arg(array( 'action' => 'activate', 'plugin' => rawurlencode($path), 'plugin_status' => 'all', 'paged' => '1', '_wpnonce' => wp_create_nonce('activate-plugin_' . $path), ), network_admin_url('plugins.php')); } public static function get_install_link($slug = false) { if (!$slug) { $slug = self::$slug; } return add_query_arg( array( 'action' => 'install-plugin', 'plugin' => $slug, '_wpnonce' => wp_create_nonce('install-plugin_' . $slug), ), network_admin_url('update.php') ); } public static function check_companion($wp_customize) { $plugin_state = self::$plugin_state; if (!$plugin_state['installed'] || !$plugin_state['active']) { $wp_customize->add_setting('one_page_express_companion_install', array( 'default' => '', 'sanitize_callback' => 'esc_attr', )); if (!$plugin_state['installed']) { $wp_customize->add_control( new Install_Companion_Control( $wp_customize, 'one_page_express_page_content', array( 'section' => 'one_page_express_page_content', 'settings' => 'one_page_express_companion_install', 'label' => self::$config['install_label'], 'msg' => self::$config['install_msg'], 'plugin_state' => $plugin_state, 'slug' => self::$slug, ) ) ); } else { $wp_customize->add_control( new Activate_Companion_Control( $wp_customize, 'one_page_express_page_content', array( 'section' => 'one_page_express_page_content', 'settings' => 'one_page_express_companion_install', 'label' => self::$config['activate_label'], 'msg' => self::$config['activate_msg'], 'plugin_state' => $plugin_state, 'slug' => self::$slug, ) ) ); } Companion_Plugin::show_companion_popup($plugin_state); } } public static function show_companion_popup() { add_action('customize_controls_print_footer_scripts', array('\OnePageExpress\Companion_Plugin', 'output_companion_message')); } // static functions public static function init($config) { Companion_Plugin::getInstance($config); } public static function getInstance($config) { if (!self::$instance) { self::$instance = new Companion_Plugin($config); } return self::$instance; } }