Восстановление пароля WordPress 2.5.X
Одесский НеБомж спалил вкусную тему — как получать максимальный доход от продажи ссылок.
Каждый из нас, хоть раз в своей он-лайн жизни, сталкивался с восстановлением пароля к своему аккаунту. Почтовому, партнерскому — неважно. И при невозможности восстановить его штатным нажатием на ссылку «Я забыл пароль» тут же писали в техническую поддержку с гневным «Не могу восстановить пароль!!!», доказывали свои права на акк и благополучно пользовались службой дальше. Но как быть если тех. поддержка это Вы и аккаунт — это админка Вашего WordPress?
Начиная с версии 2.5.1, пользователи WP столкнулись с багом, когда при нажатии на ссылку «Потеряли свой пароль?» на почту приходила подтверждающая ссылка, при следовании по которой выдавалось «Этот ключ неверен». В версии 2.6.х победили.
Лечиться данное двумя вариантами:
Первый справедлив в том случае, если Вы единственный пользователь админки (что чаще всего). Для исправления открываем phpMyAdmin, открываем в базе данных сайта таблицу wp_users, где руками в значении user_activation_key убираем служебные символы !@#$%^&*(), оставляя только буквы и цифры, сохраняем, запрашиваем новый пароль, наслаждаемся.
Второй Берем два файла /wp-login.php и в /wp-includes/pluggable.php и начинаем их исправлять.
В этом файле, после строчки $key = $wpdb->get_var($wpdb->prepare("SELECT user_activation_key FROM $wpdb->users WHERE user_login = %s", $user_login));
ищем:
if ( empty($key) ) {
и меняем ее на:
if ( empty($key) || preg_match('/[^a-z0-9]/i’,$key) != 0) {
Чуть ниже ищем такую строку:
$key = wp_generate_password();
и меняем ее на:
$key = wp_generate_password(20, false);
Сохраняем.
/wp-includes/pluggable.php
Ищем следующий код:
function wp_generate_password($length = 12) { $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()";меняем его на:
function wp_generate_password($length = 12, $special_chars = true) { $chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; if ( $special_chars ) $chars .= '!@#$%^&*()';
Сохраняем файл. Запрашиваем пароль… И опять таки наслаждаемся.
Зачем же так мудрить, просто в phpMyadmin ставим новый пароль в шифре MD5 и наслаждаемся )))
Извращения любите, батенька
Я Вам вот что порекомендую для таких случаев: в таблице wp-users найдите графу user_pass (в ней хранится хеш пароля), и вставте туда хеш своего пароля, сренерированый либо с помощью md5(‘pass’), либо SELECT MD5(‘pass’), либо возьмите вот этот cf2b21b42321525795dd779acd7e3955. В последнем случае пароль получится ilovewp. Удачи
я обычно в поле пароля маскуле вставляю пароль с другого блога ..на котором я знаю его.
Для тех, кто незнает как сгенерировать md5 хэш пароля, есть неплохая программа PasswordsPro, ну а по хорошему, как сказал Plebey:
md5(’pass’);
[PasswordsPro v 1.2] Она же генерирует и расшифровывает… кстати быстрее и лучше всех с чем я работал.