Astra_Admin_Settings::astra_available_plugins()
Include Welcome page content
Description
Source
File: inc/core/class-astra-admin-settings.php
public static function astra_available_plugins() { // Return if white labeled. if ( astra_is_white_labelled() ) { return; } $astra_addon_tagline = apply_filters( 'astra_available_plugins', sprintf( /* translators: %1s Astra Theme */ __( 'Extend %1s with free plugins!', 'astra' ), astra_get_theme_name() ) ); $recommended_plugins = apply_filters( 'astra_recommended_plugins', array( 'astra-import-export' => array( 'plugin-name' => __( 'Import / Export Customizer Settings', 'astra' ), 'plugin-init' => 'astra-import-export/astra-import-export.php', 'settings-link' => '', 'settings-link-text' => 'Settings', ), 'reset-astra-customizer' => array( 'plugin-name' => __( 'Astra Customizer Reset', 'astra' ), 'plugin-init' => 'reset-astra-customizer/class-astra-theme-customizer-reset.php', 'settings-link' => admin_url( 'customize.php' ), 'settings-link-text' => 'Settings', ), 'customizer-search' => array( 'plugin-name' => __( 'Customizer Search', 'astra' ), 'plugin-init' => 'customizer-search/customizer-search.php', 'settings-link' => admin_url( 'customize.php' ), 'settings-link-text' => 'Settings', ), 'astra-bulk-edit' => array( 'plugin-name' => __( 'Astra Bulk Edit', 'astra' ), 'plugin-init' => 'astra-bulk-edit/astra-bulk-edit.php', 'settings-link' => '', 'settings-link-text' => 'Settings', ), 'astra-widgets' => array( 'plugin-name' => __( 'Astra Widgets', 'astra' ), 'plugin-init' => 'astra-widgets/astra-widgets.php', 'settings-link' => admin_url( 'widgets.php' ), 'settings-link-text' => 'Settings', ), 'custom-fonts' => array( 'plugin-name' => __( 'Custom Fonts', 'astra' ), 'plugin-init' => 'custom-fonts/custom-fonts.php', 'settings-link' => admin_url( 'edit-tags.php?taxonomy=bsf_custom_fonts' ), 'settings-link-text' => 'Settings', ), 'custom-typekit-fonts' => array( 'plugin-name' => __( 'Custom Typekit Fonts', 'astra' ), 'plugin-init' => 'custom-typekit-fonts/custom-typekit-fonts.php', 'settings-link' => admin_url( 'themes.php?page=custom-typekit-fonts' ), 'settings-link-text' => 'Settings', ), 'sidebar-manager' => array( 'plugin-name' => __( 'Sidebar Manager', 'astra' ), 'plugin-init' => 'sidebar-manager/sidebar-manager.php', 'settings-link' => admin_url( 'edit.php?post_type=bsf-sidebar' ), 'settings-link-text' => 'Settings', ), 'ultimate-addons-for-gutenberg' => array( 'plugin-name' => __( 'Ultimate Addons for Gutenberg', 'astra' ), 'plugin-init' => 'ultimate-addons-for-gutenberg/ultimate-addons-for-gutenberg.php', 'settings-link' => admin_url( 'options-general.php?page=uag' ), 'settings-link-text' => 'Settings', 'display' => function_exists( 'register_block_type' ), ), ) ); if ( apply_filters( 'astra_show_free_extend_plugins', true ) ) { ?> <div class="postbox"> <h2 class="hndle ast-normal-cursor ast-addon-heading ast-flex"><span><?php echo esc_html( $astra_addon_tagline ); ?></span> </h2> <div class="ast-addon-list-section"> <?php if ( ! empty( $recommended_plugins ) ) : ?> <div> <ul class="ast-addon-list"> <?php foreach ( $recommended_plugins as $slug => $plugin ) { // If display condition for the plugin does not meet, skip the plugin from displaying. if ( isset( $plugin['display'] ) && false === $plugin['display'] ) { continue; } $plugin_active_status = ''; if ( is_plugin_active( $plugin['plugin-init'] ) ) { $plugin_active_status = ' active'; } echo '<li ' . astra_attr( 'astra-recommended-plugin-' . esc_attr( $slug ), array( 'id' => esc_attr( $slug ), 'class' => 'astra-recommended-plugin' . $plugin_active_status, 'data-slug' => $slug, ) ) . '>'; echo '<a href="' . esc_url( self::build_worg_plugin_link( $slug ) ) . '" target="_blank">'; echo esc_html( $plugin['plugin-name'] ); echo '</a>'; echo '<div class="ast-addon-link-wrapper">'; if ( ! is_plugin_active( $plugin['plugin-init'] ) ) { if ( file_exists( WP_CONTENT_DIR . '/plugins/' . $plugin['plugin-init'] ) ) { echo '<a ' . astra_attr( 'astra-activate-recommended-plugin', array( 'data-slug' => $slug, 'href' => '#', 'data-init' => $plugin['plugin-init'], 'data-settings-link' => esc_url( $plugin['settings-link'] ), 'data-settings-link-text' => $plugin['settings-link-text'], ) ) . '>'; esc_html_e( 'Activate', 'astra' ); echo '</a>'; } else { echo '<a ' . astra_attr( 'astra-install-recommended-plugin', array( 'data-slug' => $slug, 'href' => '#', 'data-init' => $plugin['plugin-init'], 'data-settings-link' => esc_url( $plugin['settings-link'] ), 'data-settings-link-text' => $plugin['settings-link-text'], ) ) . '>'; esc_html_e( 'Activate', 'astra' ); echo '</a>'; } } else { echo '<a ' . astra_attr( 'astra-deactivate-recommended-plugin', array( 'data-slug' => $slug, 'href' => '#', 'data-init' => $plugin['plugin-init'], 'data-settings-link' => esc_url( $plugin['settings-link'] ), 'data-settings-link-text' => $plugin['settings-link-text'], ) ) . '>'; esc_html_e( 'Deactivate', 'astra' ); echo '</a>'; if ( '' !== $plugin['settings-link'] ) { echo '<a ' . astra_attr( 'astra-recommended-plugin-links', array( 'data-slug' => $slug, 'href' => $plugin['settings-link'], ) ) . '>'; echo esc_html( $plugin['settings-link-text'] ); echo '</a>'; } } echo '</div>'; echo '</li>'; } ?> </ul> </div> <?php endif; ?> </div> </div> <?php } }
Expand full source code Collapse full source code View on Trac
Changelog
Version | Description |
---|---|
1.2.4 | Introduced. |