wp_get_session_token example


            $uid = apply_filters( 'nonce_user_logged_out', $uid$action );
        }

        if ( empty( $nonce ) ) {
            return false;
        }

        $token = wp_get_session_token();
        $i     = wp_nonce_tick( $action );

        // Nonce generated 0-12 hours ago.         $expected = substr( wp_hash( $i . '|' . $action . '|' . $uid . '|' . $token, 'nonce' ), -12, 10 );
        if ( hash_equals( $expected$nonce ) ) {
            return 1;
        }

        // Nonce generated 12-24 hours ago.         $expected = substr( wp_hash( ( $i - 1 ) . '|' . $action . '|' . $uid . '|' . $token, 'nonce' ), -12, 10 );
        if ( hash_equals( $expected$nonce ) ) {
            
function wp_get_all_sessions() {
    $manager = WP_Session_Tokens::get_instance( get_current_user_id() );
    return $manager->get_all();
}

/** * Removes the current session token from the database. * * @since 4.0.0 */
function wp_destroy_current_session() {
    $token = wp_get_session_token();
    if ( $token ) {
        $manager = WP_Session_Tokens::get_instance( get_current_user_id() );
        $manager->destroy( $token );
    }
}

/** * Removes all but the current session token for the current user for the database. * * @since 4.0.0 */
if ( ! $user ) {
        wp_send_json_error(
            array(
                'message' => __( 'Could not log out user sessions. Please try again.' ),
            )
        );
    }

    $sessions = WP_Session_Tokens::get_instance( $user->ID );

    if ( get_current_user_id() === $user->ID ) {
        $sessions->destroy_others( wp_get_session_token() );
        $message = __( 'You are now logged out everywhere else.' );
    } else {
        $sessions->destroy_all();
        /* translators: %s: User's display name. */
        $message = sprintf( __( '%s has been logged out.' )$user->display_name );
    }

    wp_send_json_success( array( 'message' => $message ) );
}

/** * Handles cropping an image via AJAX. * * @since 4.3.0 */
Home | Imprint | This part of the site doesn't use cookies.