Deshabilitar recuperación de contraseña en WordPress

Categorías: WordPress
Deshabilitar recuperación de contraseña en WordPress

Hay veces que nos interesa deshabilitar la recuperación de contraseñas de WordPress y así evitar posibles accesos indebidos a un sitio web.

Nosotros tenemos algunos blogs de afiliación donde diariamente se solicitan cientos de recuperaciones de contraseñas con el usuario que publica los posts. A esas webs no tiene que acceder nadie más que nosotros por lo que podemos deshabilitar la recuperación de contraseñas completamente. Si algún día nos hiciera falta o podemos deshabilitarlo temporalmente o normalmente lo haríamos a través de la base de datos.

Simplemente añadiendo estas líneas al functions.php del child theme deshabilitaremos esta función:

function apa_disable_password_reset() { 
return false;
}
add_filter ( 'allow_password_reset', 'apa_disable_password_reset' );

O en forma de plugin:

<?php

/**
 * Plugin Name:       Deshabilitar recuperación de contraseña
 * Plugin URI:        https://hablandodeinternet.com
 * Description:       Deshabilita la opción de recuperar contraseña en cualquier WordPress
 * Version:           1.0.0
 * Requires at least: 5.0
 * Requires PHP:      7.2
 * Author:            Hablando de Internet 
 * Author URI:        https://hablandodeinternet.com/deshabilitar-recuperacion-de-contrasena-en-wordpress/
 */

function disable_password_reset() { 
return false;
}
add_filter ( 'allow_password_reset', 'disable_password_reset' );

Esto parece que no funciona en todas las versiones de WordPress. Si no te funciona, esto siempre funciona. Para el functions.php:

function apa_disable_password_reset() {
    if (isset( $_GET['action'] )){
        if ( in_array( $_GET['action'], array('lostpassword', 'retrievepassword') ) ) {
            wp_redirect( wp_login_url(), 301 );
            exit;
        }
    }
}
add_action( "login_init", "apa_disable_password_reset" );

Y en formato plugin:

<?php

/**
 * Plugin Name:       Deshabilitar recuperación de contraseña
 * Plugin URI:        https://hablandodeinternet.com
 * Description:       Deshabilita la opción de recuperar contraseña en cualquier WordPress
 * Version:           1.0.0
 * Requires at least: 5.0
 * Requires PHP:      7.2
 * Author:            Hablando de Internet 
 * Author URI:        https://hablandodeinternet.com/deshabilitar-recuperacion-de-contrasena-en-wordpress/
 */

function apa_disable_password_reset() {
    if (isset( $_GET['action'] )){
        if ( in_array( $_GET['action'], array('lostpassword', 'retrievepassword') ) ) {
            wp_redirect( wp_login_url(), 301 );
            exit;
        }
    }
}
add_action( "login_init", "apa_disable_password_reset" );
Salir de la versión móvil