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" );

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Los comentarios de esta página se procesan por un sistema automático de moderación por lo cual no siempre se publican de forma instantánea. Por favor respeta a los demás y ciñete al tema del post. Nos reservamos el derecho de eliminar cualquier comentario o enlace que nos parezca inadecuado o tenga una expresión de grosería, insulto, odio, hostilidad o negatividad.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.