I am working on this wordpress site that was built by another developer, I managed to fix all the issues except for one. I have a plugin called wp-login and the plugin description:
This is plugin will create a custom login, registration, and lost password page automatically inserted into your current activated theme. This plugin will override the 'wp-login.php' file. This is the only login plugin that utilizes the WordPress login code, so you know it works properly.
My problem is when I goto the login page or register page, I get this error:
Fatal error: Cannot redeclare check_password_reset_key() (previously declared in /home/content/p3pnexwpnas10_data01/22/2707722/html/wp-includes/user.php:2251) in /home/content/p3pnexwpnas10_data01/22/2707722/html/wp-content/plugins/wp-login/wp-login_modified.php on line 238
Here is the function inside that file:
/**
* Retrieves a user row based on password reset key and login
*
* @uses $wpdb WordPress Database object
*
* @param string $key Hash to validate sending user's password
* @param string $login The user login
*
* @return object|WP_Error
*/
function check_password_reset_key($key, $login) {
global $wpdb;
$key = preg_replace('/[^a-z0-9]/i', '', $key);
if ( empty( $key ) || !is_string( $key ) )
return new WP_Error('invalid_key', __('Invalid key'));
if ( empty($login) || !is_string($login) )
return new WP_Error('invalid_key', __('Invalid key'));
$user = $wpdb->get_row($wpdb->prepare("SELECT * FROM $wpdb->users WHERE user_activation_key = %s AND user_login = %s", $key, $login));
if ( empty( $user ) )
return new WP_Error('invalid_key', __('Invalid key'));
return $user;
}
Does anyone know of any fixes? If I remove the plugin, the custom login and registration page are not applied.
I noticed the plugin says This plugin will override the 'wp-login.php' file.
Could this have to do with my .htaccess
file?
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress