Important : Uniquement compatible avec le thème WordPress : Voxel
Dans ce tutoriel, je vais vous montrer comment améliorer le processus d’inscription dans le thème WordPress Voxel en bloquant des domaines de messagerie spécifiques (comme indiqué par Voxel dans la dernière mise à jour) et des noms d’utilisateur. Cela peut être un ajout précieux à la sécurité de votre site Web et à la gestion des utilisateurs. Je vais vous guider tout au long du processus d’ajout de cette fonctionnalité au fichier de fonctions de votre thème enfant.
Étape 1 : Préparez votre thème enfant
Avant d’apporter des modifications, assurez-vous d’avoir configuré un thème enfant. Cela garantira que vos personnalisations ne seront pas perdues lorsque vous mettrez à jour le thème Voxel. Si vous n’avez pas de thème enfant, vous pouvez en créer un à l’aide du guide officiel WordPress ou simplement copier celui fourni par Voxel.
Étape 2 : ouvrez le fichier de fonction de votre thème enfant
Dans le répertoire de votre thème enfant, localisez le functions.php
fichier et ouvrez-le pour le modifier. Si le fichier n’existe pas, créez-le.
Étape 3 : ajouter le filtre personnalisé
Dans votre functions.php
fichier, ajoutez le code suivant :
add_filter( 'voxel/registration-errors', function( $errors, $username, $email, $role ) {
if ( ! is_email( $email ) ) {
return $errors;
}
$email_domain = substr( $email, strrpos( $email, '@' ) + 1 );
$block_domains = [
'domain1.com',
'domain2.com',
// Add more domains to block here
];
// Check for blocked email domains
foreach ( $block_domains as $domain_partial ) {
if ( stripos( $email_domain, $domain_partial ) !== false ) {
$errors->add( 'email_error', 'Blocked domain.' );
}
}
// Check for blocked usernames
$blocked_usernames = [
'admin', // Add other usernames to block here
];
if ( in_array( $username, $blocked_usernames ) ) {
$errors->add( 'username_error', 'Blocked username.' );
}
return $errors;
}, 10, 4 );
Ce code ajoute un filtre au processus d’enregistrement, vérifiant les domaines de messagerie et les noms d’utilisateur bloqués.
Étape 4 : Personnalisez les règles de blocage
Vous pouvez personnaliser la liste des domaines de messagerie et des noms d’utilisateur bloqués en modifiant les tableaux $block_domains
et $blocked_usernames
dans le code. Ajoutez ou supprimez des domaines et des noms d’utilisateur selon vos besoins.
Étape 5 : Enregistrer et tester
Enregistrez votre functions.php
fichier et votre processus d’inscription amélioré est maintenant prêt. Testez-le en essayant de vous inscrire avec des noms d’utilisateur ou des domaines de messagerie bloqués. Les utilisateurs doivent recevoir des messages d’erreur appropriés.
Voici un exemple de liste de fournisseurs de messagerie jetables que vous pourriez interdire :
imailfree.cc
thepacbook.com
1secmail.org
10minutemail.com
guerrillamail.com
mailinator.com
yopmail.com
yopmail.fr
maildrop.cc
dispostable.com
throwawaymail.com
getnada.com
example.com
throwaway-email.com
jetable.org
mailnesia.com
mytrashmail.com
mintemail.com
sharklasers.com
fakemailgenerator.net
moakt.com
getairmail.com
mailcatch.com
throw.email
tempinbox.com
inboxbear.com
meltmail.com
mailinator2.com
kasmail.com
Avantages d’éviter les plugins tiers :
- Pas de surcharge de plugin : de nombreux plugins WordPress, bien qu’utiles, peuvent introduire du code et des fonctionnalités supplémentaires dont vous n’avez peut-être pas besoin. En implémentant des fonctionnalités personnalisées comme celle-ci, vous gardez votre site léger et efficace.
- Personnalisation : Vous avez un contrôle total sur les règles de blocage. Vous pouvez facilement ajuster la liste des domaines de messagerie et des noms d’utilisateur bloqués à mesure que les exigences de votre site Web évoluent.
- Sécurité : le blocage de noms d’utilisateur et de domaines de messagerie spécifiques peut améliorer la sécurité de votre site Web en empêchant les inscriptions potentiellement dangereuses ou contenant du spam.
- Performances : réduire le nombre de plugins actifs peut contribuer à de meilleures performances et à des temps de chargement plus rapides pour votre site Web.
- Compatibilité : puisque vous travaillez directement avec votre thème, vous pouvez vous assurer que les personnalisations sont compatibles avec la version actuelle du thème.
Dans ce tutoriel, je vous ai montré comment améliorer le processus d’inscription dans le thème WordPress Voxel en bloquant des noms d’utilisateur et des domaines de messagerie spécifiques. Cela peut vous aider à maintenir une base d’utilisateurs plus sécurisée et « sans spam » tout en évitant le recours à des plugins tiers. N’oubliez pas de garder le thème de votre enfant à jour et de revoir périodiquement vos règles de blocage pour tout ajustement nécessaire.