' . esc_html__( 'Open AdminFly', 'adminfly-fast-navigator' ) . ''; return $links; } ); /** * Register admin submenu under Tools (WordPress native). */ add_action( 'admin_menu', function() { $parent_slug = 'tools.php'; $capability = 'manage_options'; $menu_slug = 'qmen-quickmenu'; add_submenu_page( $parent_slug, __( 'AdminFly', 'adminfly-fast-navigator' ), __( 'AdminFly', 'adminfly-fast-navigator' ), $capability, $menu_slug, 'qmen_render_quickmenu_page' ); }); /** * Render the AdminFly settings page. */ function qmen_render_quickmenu_page() { qmen_log_plugins_state(); // Check user capability. if ( ! current_user_can( 'manage_options' ) ) { wp_die( esc_html__( 'You do not have permission to access this page.', 'adminfly-fast-navigator' ) ); } // Handle form submission. if ( isset( $_POST['qmen_save'] ) && check_admin_referer( 'qmen_save_settings', 'qmen_nonce' ) ) { $selected = isset( $_POST['qmen_branches'] ) && is_array( $_POST['qmen_branches'] ) ? array_map( 'sanitize_text_field', (array) $_POST['qmen_branches'] ) : array(); // Enforce availability constraints. if ( ! qmen_is_wc_active() ) { $selected = array_values( array_diff( $selected, array( 'wc', 'products', 'orders' ) ) ); } update_option( 'qmen_enabled_branches', $selected ); echo '

' . esc_html__( 'AdminFly settings saved.', 'adminfly-fast-navigator' ) . '

'; } $enabled = qmen_get_enabled_branches(); $wc_active = qmen_is_wc_active(); ?>