Je suis coincé dans un problème grave. Je souhaite créer un document et télécharger un document Word à partir de l'interface frontale après la connexion de l'utilisateur. Utilisateur connecté est admin. Le plugin bp-doc utilise le téléchargeur de média par défaut de WordPress pour télécharger le fichier.
Le plugin touche .../wp-admin/async-upload.php
, mais cela génère une erreur An error occurred in the upload. Please try again later
, après le débogage dans la console, j'ai trouvé une erreur 302 Moved Temporarily
et, en réponse, un formulaire de connexion WordPress.
Après quelques recherches, j'ai trouvé une autre erreur. Lorsque je me connecte à partir du client en tant qu'administrateur et que je retourne à wp-admin
, il m'a déconnecté et demande à nouveau de saisir un nom d'utilisateur et un mot de passe.
Je suis incapable de passer à travers les erreurs, n'importe qui peut m'aider, qu'est-ce qui ne va pas?
J'utilise le code suivant pour me connecter
$user_data = array();
$user_data['user_login'] = $username;
$user_data['user_password'] = $password;
$user_data['remember'] = $remember;
$user = wp_signon( $user_data, false );
if ( is_wp_error($user) ) {
$err = "<strong>ERROR!</strong> Invalid username or password";
}
else {
wp_set_current_user( $user->ID);
do_action('set_current_user');
global $current_user;
get_currentuserinfo();
$redirect_to = home_url().'/members/'.$current_user->user_login.'/profile';
wp_redirect($redirect_to);
exit;
}
Live site url: https://www.group50.com/g50consultants
avez-vous essayé en définissant le deuxième argument de wp_signon()
sur true
ou vide? set false empêchera wp_signon()
de définir un cookie sécurisé indispensable pour accéder à wp-admin
si vous utilisez ssl. J'ai testé et $user = wp_signon( $user_data, true );
fonctionne comme prévu.
Peut-être que votre passage de https à http après la connexion, vous pouvez essayer ce plugin https://wordpress.org/plugins/https-redirection/ pour rediriger tout votre site vers https, je l'ai utilisé une fois et j'ai également modifié mon site. URL de http: // ... à https: // .... dans les paramètres de wodpress.
Je vois que vous pouvez simplifier votre code dans ces lignes:
else {
$redirect_to = home_url().'/members/'.$user->user_login.'/profile';
wp_redirect($redirect_to);
exit;
}
Utilisez la fonction wp_signon pour créer toutes les sessions et remplir les fonctions utilisateur actuelles.