Очередные баги WordPress

Очередные баги WordPress

Очередные баги WordPress

  • Версия: 2.5.1;
  • Ошибка: не работает восстановление пароля.
  • Причина: Явная несогласованность разработчиков. Один генерирует пароль из следующих символов — «abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()» . Другой проверяет чтобы пароль содержал только символы латинского алфавита и цифры.

Исправление:

Заменить, в файле wp-includes/pluggable.php, строка 1171:

function wp_generate_password($length = 12) {
        $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()";
        $password = '';
        for ( $i = 0; $i < $length; $i++ )
                $password .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
        return $password;
}

на

function wp_generate_password($length = 12) {
        $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        $password = '';
        for ( $i = 0; $i < $length; $i++ )
                $password .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
        return $password;
}

или переписать регулярное выражение для проверки правильности ключа в файле wp-login.php, строка 116.

Комментарии