Si vous n’avez plus accès à votre instance WordPress, vous pouvez toujours réinitialiser votre mot de passe en modifiant manuellement la table qu’il utilise pour stocker les mots de passe, à condition que vous ayez accès à la base de données MySQL.
Réinitialiser le mot de passe de MySQL
WordPress fonctionne sur PHP et utilise MySQL pour stocker des données sur les publications, la configuration et tout le reste, y compris les mots de passe. Il stocke les mots de passe à l’aide de la bibliothèque PHP PHPass (bien que vous puissiez le modifier avec plug-ins). Mais, en raison de la compatibilité descendante, il acceptera toujours un hachage MD5, qui est facile à générer (et certainement pas sécurisé). Vous pouvez remplacer manuellement votre mot de passe actuel par un nouveau hachage MD5.
Vous aurez besoin d’avoir accès à MySQL pour effectuer ces étapes. Si vous avez un accès en ligne de commande au serveur, vous pouvez vous connecter à MySQL avec :
mysql -u root -p
Et sélectionnez la base de données WordPress (le nom est généralement défini dans wp-config.php
; sinon, vous pouvez utiliser le show databases
commander):
select database1_wp123
Si vous n’avez pas accès à la ligne de commande (comme c’est le cas avec l’hébergement partagé), vous avez peut-être installé phpMyAdmin ; si tel est le cas, vous pouvez utiliser cette interface Web pour exécuter les mêmes commandes sans accès SSH.
Entrez la commande suivante, en remplaçant 'new_password'
avec le mot de passe que vous souhaitez définir et remplacer 'admin'
avec le nom d’utilisateur du compte que vous éditez (qui peut très bien être ‘admin’):
UPDATE `wp_users` SET `user_pass` = MD5( 'new_password' ) WHERE `wp_users`.`user_login` = "admin";
Votre table peut porter un nom différent ; si c’est le cas, vous pouvez lister toutes les tables avec le show tables
commander.
Quittez MySQL avec Control+D et vérifiez que le changement de mot de passe a fonctionné en essayant de vous connecter.
Lorsque vous vous reconnecterez, votre mot de passe correspondra au hachage MD5 nouvellement créé et WordPress devrait vous permettre de vous connecter. WordPress ira également de l’avant et ressuscitera votre mot de passe en utilisant l’algorithme de hachage par défaut et mettra à jour la base de données en conséquence.
Si vous n’avez pas accès à MySQL
Si vous avez un accès FTP et la possibilité de modifier les fichiers de WordPress, vous pouvez réinitialiser le mot de passe de cette façon. Il devrait y avoir un fichier appelé functions.php
dans les fichiers de votre thème actif (sous wp-content/themes/theme-name/
). Téléchargez ce fichier et ajoutez la ligne suivante après <?php
:
wp_set_password( 'password', 1 );
Cela réinitialisera le mot de passe de l’utilisateur avec l’ID « 1 ». Cela se réinitialise à chaque chargement de page, vous voudrez donc le supprimer une fois que vous pourrez retrouver l’accès.
Réinitialiser avec un lien e-mail
Cela nécessite que vous ayez un agent de messagerie en ligne de commande comme Postfix configuré et fonctionnel, sinon WordPress ne pourra pas envoyer d’e-mails.
Sur la page de connexion WordPress, il y a un lien en bas pour déclencher une réinitialisation du mot de passe par e-mail. Cliquez dessus, entrez votre email, puis réinitialisez votre mot de passe en utilisant le lien qui vous a été fourni.
Vous pouvez également utiliser cette méthode pour déclencher des réinitialisations de mot de passe pour d’autres utilisateurs ; entrez simplement leur e-mail à la place, qui leur enverra le lien pour réinitialiser leur propre mot de passe.
Vous pouvez lire l’article original (en Angais) sur le sitewww.cloudsavvyit.com