is_dismissed() ) { return; } // Determine if the plugin is not installed, or just inactive. $plugins = get_plugins(); $installed = false; foreach ( $plugins as $plugin ) { if ( 'Kirki' === $plugin['Name'] || 'Kirki Toolkit' === $plugin['Name'] || 'Kirki Customizer Framework' === $plugin['Name'] ) { $installed = true; } } $plugin_install_url = $this->get_plugin_install_url(); $classes = 'cannot-expand accordion-section control-section control-section-themes control-section-' . $this->type; ?>
  • install_button(); ?> activate_button(); ?> dismiss_button(); ?>
  • plugin_install_url ) { // Get the plugin-installation URL. $this->plugin_install_url = add_query_arg( array( 'action' => 'install-plugin', 'plugin' => 'kirki', ), self_admin_url( 'update.php' ) ); $this->plugin_install_url = wp_nonce_url( $this->plugin_install_url, 'install-plugin_kirki' ); } return $this->plugin_install_url; } } } // Early exit if the user has dismissed the notice. if ( is_callable( array( 'Kirki_Installer_Section', 'is_dismissed' ) ) && Kirki_Installer_Section::is_dismissed() ) { return; } $wp_customize->add_section( new Kirki_Installer_Section( $wp_customize, 'kirki_installer', array( 'title' => '', 'capability' => 'install_plugins', 'priority' => 0, ) ) ); $wp_customize->add_setting( 'kirki_installer_setting', array( 'sanitize_callback' => '__return_true', ) ); $wp_customize->add_control( 'kirki_installer_control', array( 'section' => 'kirki_installer', 'settings' => 'kirki_installer_setting', ) ); } } add_action( 'customize_register', 'kirki_installer_register', 999 ); if ( ! function_exists( 'kirki_installer_dismiss' ) ) { /** * Handles dismissing the plugin-install/activate recommendation. * If the user clicks the "Don't show this again" button, save as user-meta. * * @since 1.0.0 * @return void */ function kirki_installer_dismiss() { check_ajax_referer( 'dismiss-kirki-recommendation', 'security' ); $user_id = get_current_user_id(); if ( update_user_meta( $user_id, 'dismiss-kirki-recommendation', true ) ) { echo 'success! :-)'; wp_die(); } echo 'failed :-('; wp_die(); } } add_action( 'wp_ajax_kirki_installer_dismiss', 'kirki_installer_dismiss' );