steps = array( 'welcome' => array( 'name' => __( 'Welcome', 'wp-schema-pro' ), 'view' => array( $this, 'welcome' ), ), 'general-setting' => array( 'name' => __( 'General', 'wp-schema-pro' ), 'view' => array( $this, 'general_setting' ), 'handler' => array( $this, 'general_setting_save' ), ), 'social-profiles' => array( 'name' => __( 'Social Profiles', 'wp-schema-pro' ), 'view' => array( $this, 'social_profiles' ), 'handler' => array( $this, 'social_profiles_save' ), ), 'global-schemas' => array( 'name' => __( 'Other Schemas', 'wp-schema-pro' ), 'view' => array( $this, 'global_schemas' ), 'handler' => array( $this, 'global_schemas_save' ), ), 'success' => array( 'name' => __( 'Done', 'wp-schema-pro' ), 'view' => array( $this, 'success' ), 'handler' => '', ), ); $this->step = isset( $_GET['step'] ) ? sanitize_key( $_GET['step'] ) : current( array_keys( $this->steps ) ); wp_enqueue_style( 'aiosrs-pro-setup-wizard', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, array( 'dashicons', 'install' ), BSF_AIOSRS_PRO_VER ); wp_enqueue_style( 'aiosrs-pro-admin-edit-style', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'style.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, BSF_AIOSRS_PRO_VER, 'false' ); wp_enqueue_style( 'aiosrs-pro-admin-settings-style', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'settings-style.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, BSF_AIOSRS_PRO_VER, 'false' ); wp_register_script( 'aiosrs-pro-settings-script', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_js . 'settings-script.' . BSF_AIOSRS_Pro_Admin::$minfy_js_ext, array( 'jquery', 'bsf-target-rule-select2', 'wp-i18n' ), BSF_AIOSRS_PRO_VER, true ); wp_enqueue_media(); wp_enqueue_script( 'media' ); wp_enqueue_style( 'bsf-target-rule-select2', BSF_AIOSRS_PRO_URI . 'classes/lib/target-rule/select2.css', '', BSF_AIOSRS_PRO_VER, false ); wp_register_script( 'bsf-target-rule-select2', BSF_AIOSRS_PRO_URI . 'classes/lib/target-rule/select2.js', array( 'jquery', 'backbone', 'wp-util' ), BSF_AIOSRS_PRO_VER, true ); wp_localize_script( 'aiosrs-pro-settings-script', 'AIOSRS_search', apply_filters( 'aiosrs_pro_settings_script_localize', array( 'search_field' => wp_create_nonce( 'spec_schema' ), ) ) ); wp_register_script( 'aiosrs-pro-setup-wizard', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_js . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_js_ext, array( 'jquery' ), BSF_AIOSRS_PRO_VER, true ); if ( isset( $_POST['_wpnonce'] ) && wp_verify_nonce( $_POST['_wpnonce'], 'aiosrs-pro-setup-wizard' ) && ! empty( $_POST['save_step'] ) && isset( $this->steps[ $this->step ]['handler'] ) ) { call_user_func( $this->steps[ $this->step ]['handler'] ); } ob_start(); $this->setup_wizard_header(); $this->setup_wizard_steps(); $this->setup_wizard_content(); $this->setup_wizard_footer(); exit; } /** * Get previous step link */ public function get_prev_step_link() { $keys = array_keys( $this->steps ); return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ), true ) - 1 ] ); } /** * Get next step link */ public function get_next_step_link() { $keys = array_keys( $this->steps ); return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ), true ) + 1 ] ); } /** * Setup Wizard Header. */ public function setup_wizard_header() { ?>
Watch a detailed video on the setup wizard tutorial.', 'wp-schema-pro' ) ); ?>
get_next_step_link(); wp_safe_redirect( esc_url_raw( $redirect_url ) ); exit; } /** * Social Profiles */ public function social_profiles() { $settings = BSF_AIOSRS_Pro_Helper::$settings['wp-schema-pro-social-profiles']; ?> get_next_step_link(); wp_safe_redirect( esc_url_raw( $redirect_url ) ); exit; } /** * Global Schemas */ public function global_schemas() { $settings = BSF_AIOSRS_Pro_Helper::$settings['wp-schema-pro-global-schemas']; ?> get_next_step_link(); wp_safe_redirect( esc_url_raw( $redirect_url ) ); exit; } /** * Final step. */ public function success() { ?>