Existe-t-il un moyen d'interdire la création de noms de sites? Par exemple, nous avons des sous-dossiers tels que domain.com/site. Existe-t-il un moyen d’interdire l’enregistrement de mauvais mots? Donc domain.com/bad serait bloqué?
Comment puis-je faire ceci?
Vous pouvez filtrer domain_exists
, une vérification qui s'exécute avant qu'un site ne soit enregistré. Si vous renvoyez un entier positif, WordPress ne créera pas ce site. Malgré son nom, ce filtre vous permet également de vérifier le chemin.
Exemple de code, non testé:
add_filter( 'domain_exists', function( $result, $domain, $path ) {
// Already taken, no need for further checks.
if ( $result ) {
return $result;
}
$blacklist = [
'domains' => [
'assets.example.com',
'wordpress.example.com',
],
'paths' => [
'wp-admin',
'wp-includes',
'wp-content',
],
];
if ( in_array( $domain, $blacklist['domains'] ) ) {
return 1;
}
$path = trim( $path, '/' );
if ( empty ( $path) ) {
return $result;
}
if ( in_array( $path, $blacklist['paths'] ) ) {
return 1;
}
return $result;
}, 10, 3 );