New answers tagged logout
Another thing to consider is that wp nonce system uses both the current user id, and the sessiontoken (wordpress_logged_in_... cookie). If you look at wp_verify_nonce function source you'll see it compares the nonce with hash of ( current and last 12-hr period + '|' + action + '|' + currentuser-id + '|' + sessiontoken ) Any change of any of those variables ...
I hadn't run your code, but my educated guess is that the fault in your code flow is that nonces are user specific. While anonymous nonce is possible, it is useless for its purpose because it would be same for all anonymous users. So there is likely mismatch somewhere and you are trying to use nonce of specific user, while being anonymous.
Top 50 recent answers are included