Astra_Ext_Header_Account_Component_Configs::register_configuration( Array $configurations, WP_Customize_Manager $wp_customize )
Register Builder Customizer Configurations.
Description
Parameters
- $configurations
-
(Array) (Required) Astra Customizer Configurations.
- $wp_customize
-
(WP_Customize_Manager) (Required) instance of WP_Customize_Manager.
Return
(Array) Astra Customizer Configurations with updated configurations.
Source
File: classes/builder/type/header/account/class-astra-ext-header-account-component-configs.php
public function register_configuration( $configurations, $wp_customize ) { $_section = 'section-header-account'; $account_choices = array( 'default' => __( 'Default', 'astra-addon' ), ); if ( class_exists( 'LifterLMS' ) && get_permalink( llms_get_page_id( 'myaccount' ) ) ) { $account_choices['lifterlms'] = __( 'LifterLMS', 'astra-addon' ); } if ( class_exists( 'WooCommerce' ) && get_permalink( get_option( 'woocommerce_myaccount_page_id' ) ) ) { $account_choices['woocommerce'] = __( 'WooCommerce', 'astra-addon' ); } $register_option = ''; if ( get_option( 'users_can_register' ) ) { $register_option = array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-login-register]', 'default' => astra_get_option( 'header-account-login-register' ), 'type' => 'control', 'control' => Astra_Theme_Extension::$switch_control, 'section' => $_section, 'priority' => 205, 'title' => __( 'Register', 'astra-addon' ), 'context' => array( astra_addon_builder_helper()->general_tab_config, array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-action]', 'operator' => '==', 'value' => 'login', ), array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', 'operator' => '!=', 'value' => 'none', ), ), 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'transport' => 'postMessage', ); } $_configs = array( /** * Option: Profile Link type */ array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', 'default' => astra_get_option( 'header-account-action-type' ), 'type' => 'control', 'control' => Astra_Theme_Extension::$selector_control, 'section' => $_section, 'title' => __( 'Profile Action', 'astra-addon' ), 'priority' => 4, 'choices' => array( 'link' => __( 'Link', 'astra-addon' ), 'menu' => __( 'Menu', 'astra-addon' ), ), 'transport' => 'postMessage', 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'responsive' => false, 'renderAs' => 'text', 'divider' => array( 'ast_class' => 'ast-top-divider' ), ), /** * Option: Profile Link type */ array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-link-type]', 'default' => astra_get_option( 'header-account-link-type' ), 'type' => 'control', 'control' => 'ast-select', 'section' => $_section, 'priority' => 5, 'title' => __( 'Link Type', 'astra-addon' ), 'choices' => array( 'default' => __( 'Default', 'astra-addon' ), 'custom' => __( 'Custom', 'astra-addon' ), ), 'transport' => 'postMessage', 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'context' => array( astra_addon_builder_helper()->general_tab_config, array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-type]', 'operator' => '!=', 'value' => 'default', ), array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', 'operator' => '!=', 'value' => 'menu', ), ), ), array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-woo-menu]', 'default' => astra_get_option( 'header-account-woo-menu' ), 'type' => 'control', 'control' => Astra_Theme_Extension::$switch_control, 'section' => $_section, 'priority' => 7, 'title' => __( 'Use WooCommerce Account Menu', 'astra-addon' ), 'context' => array( array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-type]', 'operator' => '==', 'value' => 'woocommerce', ), array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', 'operator' => '==', 'value' => 'menu', ), astra_addon_builder_helper()->general_tab_config, ), 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'transport' => 'postMessage', ), /** * Option: Theme Menu create link */ array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-create-menu-link]', 'default' => astra_get_option( 'header-account-create-menu-link' ), 'type' => 'control', 'control' => 'ast-customizer-link', 'section' => $_section, 'link_type' => 'section', 'linked' => 'menu_locations', 'link_text' => __( 'Configure Menu from Here.', 'astra-addon' ), 'priority' => 7, 'context' => array( astra_addon_builder_helper()->general_tab_config, array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', 'operator' => '==', 'value' => 'menu', ), ), ), array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-menu-link-notice]', 'type' => 'control', 'control' => 'ast-description', 'section' => $_section, 'priority' => 7, 'label' => '', 'help' => $this->get_help_text_notice(), 'context' => array( astra_addon_builder_helper()->general_tab_config, array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', 'operator' => '==', 'value' => 'menu', ), ), ), /** * Option: Click action type */ array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-logout-action]', 'default' => astra_get_option( 'header-account-logout-action' ), 'type' => 'control', 'control' => Astra_Theme_Extension::$selector_control, 'section' => $_section, 'title' => __( 'Click Action', 'astra-addon' ), 'choices' => array( 'link' => __( 'Link', 'astra-addon' ), 'login' => __( 'Login Popup', 'astra-addon' ), ), 'transport' => 'postMessage', 'priority' => 204, 'context' => array( array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', 'operator' => '!=', 'value' => 'none', ), astra_addon_builder_helper()->general_tab_config, ), 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'responsive' => false, 'renderAs' => 'text', 'divider' => array( 'ast_class' => 'ast-bottom-divider ast-top-divider' ), ), $register_option, array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-login-lostpass]', 'default' => astra_get_option( 'header-account-login-lostpass' ), 'type' => 'control', 'control' => Astra_Theme_Extension::$switch_control, 'section' => $_section, 'priority' => 205, 'title' => __( 'Lost your password?', 'astra-addon' ), 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), 'context' => array( astra_addon_builder_helper()->general_tab_config, array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-action]', 'operator' => '==', 'value' => 'login', ), array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', 'operator' => '!=', 'value' => 'none', ), ), 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'transport' => 'postMessage', ), array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-icon-type]', 'default' => astra_get_option( 'header-account-icon-type' ), 'type' => 'control', 'control' => Astra_Theme_Extension::$selector_control, 'section' => $_section, 'priority' => 3, 'title' => __( 'Select Icon', 'astra-addon' ), 'choices' => array( 'account-1' => 'account-1', 'account-2' => 'account-2', 'account-3' => 'account-3', 'account-4' => 'account-4', ), 'transport' => 'postMessage', 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), 'context' => array( astra_addon_builder_helper()->design_tab_config, array( 'relation' => 'OR', array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', 'operator' => '==', 'value' => 'icon', ), array( 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', 'operator' => '==', 'value' => 'icon', ), ), ), 'responsive' => false, 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), ), ); if ( count( $account_choices ) > 1 ) { $_configs[] = array( 'name' => ASTRA_THEME_SETTINGS . '[header-account-type]', 'default' => astra_get_option( 'header-account-type' ), 'type' => 'control', 'control' => 'ast-select', 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), 'section' => $_section, 'priority' => 1, 'title' => __( 'Select Account', 'astra-addon' ), 'choices' => $account_choices, 'transport' => 'postMessage', 'partial' => array( 'selector' => '.ast-header-account', 'render_callback' => array( 'Astra_Builder_UI_Controller', 'render_account' ), ), ); } $configurations = array_merge( $configurations, $_configs ); return $configurations; }
Expand full source code Collapse full source code View on Trac
Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |