Astra_Theme_Extension::astra_addon_list( array $addons = array() )
Modified Astra Addon List
Description
Parameters
- $addons
-
(array) (Optional) Astra addon list.
Default value: array()
Return
(array) $addons Updated Astra addon list.
Source
File: classes/class-astra-theme-extension.php
public function astra_addon_list( $addons = array() ) { $enabled_extensions = Astra_Ext_Extension::get_addons(); $extension_slugs = array_keys( $enabled_extensions ); $extension_slugs[] = 'white-label'; $ext_activate_notice = __( 'This plugin needs to be installed/activated', 'astra-addon' ); foreach ( $addons as $addon_slug => $value ) { if ( ! in_array( $addon_slug, $extension_slugs ) ) { continue; } $class = 'deactive'; $links = array( array( 'link_class' => 'ast-activate-module', 'link_text' => __( 'Activate', 'astra-addon' ), 'link_url' => '', ), ); if ( Astra_Ext_Extension::is_active( $addon_slug ) ) { $class = 'active'; $links = array( array( 'link_class' => 'ast-deactivate-module', 'link_text' => __( 'Deactivate', 'astra-addon' ), 'link_url' => '', ), ); } switch ( $addon_slug ) { case 'advanced-hooks': $links[] = array( 'link_class' => 'advanced-module', 'link_text' => __( 'Settings', 'astra-addon' ), 'link_url' => admin_url( '/edit.php?post_type=astra-advanced-hook' ), ); break; case 'advanced-headers': $links[] = array( 'link_class' => 'advanced-module', 'link_text' => __( 'Settings', 'astra-addon' ), 'link_url' => admin_url( '/edit.php?post_type=astra_adv_header' ), ); break; case 'white-label': $class = 'white-label'; $links = false; $links[] = array( 'link_class' => 'advanced-module', 'link_text' => __( 'Settings', 'astra-addon' ), 'link_url' => Astra_Admin_Settings::get_page_url( $addon_slug ), 'target_blank' => false, ); break; case 'woocommerce': $class .= ' woocommerce'; if ( ! class_exists( 'WooCommerce' ) ) { $class .= ' ast-disable ast-modules-not-activated'; $links = array( array( 'link_class' => 'ast-deactivate-module', 'link_text' => $ext_activate_notice, 'link_url' => '', ), ); } break; case 'learndash': $class .= ' learndash'; if ( ! class_exists( 'SFWD_LMS' ) ) { $class .= ' ast-disable ast-modules-not-activated'; $links = array( array( 'link_class' => 'ast-deactivate-module', 'link_text' => $ext_activate_notice, 'link_url' => '', ), ); } break; case 'lifterlms': $class .= ' lifterlms'; if ( ! class_exists( 'LifterLMS' ) ) { $class .= ' ast-disable ast-modules-not-activated'; $links = array( array( 'link_class' => 'ast-deactivate-module', 'link_text' => $ext_activate_notice, 'link_url' => '', ), ); } break; case 'edd': $class .= ' edd'; if ( ! class_exists( 'Easy_Digital_Downloads' ) ) { $class .= ' ast-disable ast-modules-not-activated'; $links = array( array( 'link_class' => 'ast-deactivate-module', 'link_text' => $ext_activate_notice, 'link_url' => '', ), ); } break; } $addons[ $addon_slug ]['links'] = $links; $addons[ $addon_slug ]['class'] = $class; // Don't show White Label tab if white label branding is hidden. if ( ! Astra_Ext_White_Label_Markup::show_branding() ) { unset( $addons['white-label'] ); } } return $addons; }
Expand full source code Collapse full source code View on Trac
Changelog
Version | Description |
---|---|
1.2.1 | Introduced. |