Очередные баги 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.
Комментарии