HOOK : Réparer et optimiser la base de données WordPress

Le fichier “wp-admin/maint/repair.php” est un fichier WordPress de base utilisé pour la réparation et l’optimisation de la base de données. Par défaut, ce fichier est accessible à toute personne connaissant l’URL. Cependant, si vous souhaitez restreindre l’accès à ce fichier afin que seuls les administrateurs connectés puissent y accéder, vous pouvez ajouter du code supplémentaire à votre site WordPress.

Voici un exemple de la façon dont vous pouvez y parvenir :

Ouvrez le fichier functions.php de votre thème ou créez un plugin personnalisé.
Ajoutez le code suivant pour vérifier si l’utilisateur est connecté et a le rôle d’administrateur avant d’autoriser l’accès au fichier repair.php :

function restrict_wp_admin_maintenance() {
    if (strpos($_SERVER['REQUEST_URI'], '/wp-admin/maint/repair.php') !== false) {
        if ( ! current_user_can( 'administrator' ) ) {
            wp_die( 'You are not allowed to access this page.' );
        }
    }
}
add_action( 'admin_init', 'restrict_wp_admin_maintenance' );

Ce code vérifie si l’URL demandée contient ‘/wp-admin/maint/repair.php’. Si c’est le cas, il vérifie alors si l’utilisateur actuel a le rôle « administrateur » à l’aide de la current_user_can()fonction. Si l’utilisateur n’a pas le rôle d’administrateur, il verra un message d’erreur et ne pourra pas accéder au fichier repair.php.

N’oubliez pas d’enregistrer les modifications apportées à votre fichier ou plugin functions.php, puis de tester la fonctionnalité en accédant au fichier repair.php à la fois en tant qu’administrateur connecté et en tant qu’utilisateur non administrateur.