admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce( 'abdielmskef_admin' ), 'i18n' => [ 'badgeGlobal' => __( 'Global', 'abdiel-multi-style-kits-for-elementor' ), 'badgeGlobalActive' => __( 'Global activo', 'abdiel-multi-style-kits-for-elementor' ), 'toastGlobalSet' => __( 'Kit global actualizado.', 'abdiel-multi-style-kits-for-elementor' ), 'toastDeleteOk' => __( 'Kit deleted.', 'abdiel-multi-style-kits-for-elementor' ), 'toastError' => __( 'An error occurred. Check the log.', 'abdiel-multi-style-kits-for-elementor' ), 'modalTitleDelete' => __( 'Delete kit', 'abdiel-multi-style-kits-for-elementor' ), 'modalTitleGlobal' => __( 'Establecer kit global', 'abdiel-multi-style-kits-for-elementor' ), 'globalWarn' => __( 'This kit will be set as the new Global (Elementor active kit).', 'abdiel-multi-style-kits-for-elementor' ), 'modalConfirmGlobal' => __( 'Confirmar', 'abdiel-multi-style-kits-for-elementor' ), 'modalConfirm' => __( 'Delete', 'abdiel-multi-style-kits-for-elementor' ), 'modalCancel' => __( 'Cancel', 'abdiel-multi-style-kits-for-elementor' ), ], ] ); } add_action( 'admin_enqueue_scripts', 'abdielmskef_admin_enqueue_assets' ); function abdielmskef_admin_render_page() { if ( ! current_user_can( 'manage_options' ) ) { wp_die( esc_html__( 'You do not have permission to view this page.', 'abdiel-multi-style-kits-for-elementor' ) ); } // FIX: Ignoramos la advertencia de nonce aquĆ­ porque solo estamos leyendo la URL para navegar. // phpcs:ignore WordPress.Security.NonceVerification.Recommended $tab = isset( $_GET['tab'] ) ? sanitize_key( $_GET['tab'] ) : 'kits'; $allowed = [ 'kits', 'settings', 'import-export', 'contact' ]; if ( ! in_array( $tab, $allowed, true ) ) { $tab = 'kits'; } echo '
'; echo '

' . esc_html__( 'Multi Style Kits for Elementor', 'abdiel-multi-style-kits-for-elementor' ) . '

'; echo ''; $flash = function_exists( 'abdielmskef_get_flash' ) ? abdielmskef_get_flash() : []; if ( ! empty( $flash ) ) { echo '
'; } echo '
'; if ( $tab === 'kits' ) { abdielmskef_admin_page_kits(); } elseif ( $tab === 'settings' ) { abdielmskef_admin_page_settings(); } elseif ( $tab === 'contact' ) { if ( function_exists( 'abdielmskef_admin_page_contact' ) ) { abdielmskef_admin_page_contact(); } else { echo '

Contact (pendiente).

'; } } else { abdielmskef_admin_page_import_export(); } echo '
'; if ( function_exists( 'abdielmskef_admin_footer' ) ) { abdielmskef_admin_footer(); } echo '
'; }