Pour désactiver ce que certains appellent « éditeur CSS WordPress », ou la possibilité d’éditer le fichier style.css de votre thème, il suffit d’ajouter le code ci-dessous à votre fichier wp-config.php :
/* Désactiver éditeur WordPress */
define('DISALLOW_FILE_EDIT', true);En plus d’empêcher l’édition de votre CSS, cette manipulation empêchera aussi d’éditer tous les fichiers de votre thème depuis votre tableau de bord WordPress.
Par contre, cela ne supprime pas l’éditeur CSS de votre thème qui est dans « Apparence » > « Personnaliser ».
Empêcher la modification du CSS via l’option « Personnaliser »
Pour empêcher l’utilisateur de modifier son CSS via le menu « Apparence » > « Personnaliser » (ce que certains appellent communément l’éditeur CSS de WordPress), il va falloir rendre inaccessible la page et également la supprimer du menu.
Il y a deux façon de faire, en fonction de votre configuration.
Vous utilisez un thème enfant
Si vous utilisez un thème enfant, voici ce que vous devez faire :
- Pour cela, il va falloir entrer un bout de code via SFTP (avec Filezilla), dans le fichier functions.php situé à la racine de votre thème.
- Pour le trouver, allez dans le dossier de votre site (souvent « www »), puis dans « wp-content » > « themes » > votre thème.
- Éditez le fichier, ajoutez le code ci-dessous et sauvegardez :
namespace TrunkDev\MU_Plugins\Temporary;
add_action(‘admin_menu’, __NAMESPACE__ . ‘\remove_customizer’, 999);
add_action(‘admin_bar_menu’, __NAMESPACE__ . ‘\remove_customizer_admin_bar’, 999);
add_action(‘load-customize.php’, __NAMESPACE__ . ‘\disable_customizer_access’);
function remove_customizer() {
remove_submenu_page(‘themes.php’, ‘customize.php’);
}
function remove_customizer_admin_bar($wp_admin_bar) {
$wp_admin_bar->remove_node(‘customize’);
}
function disable_customizer_access() {
wp_die(‘L’accès au personnalisateur est désactivé pour ce site.’);
}Vous n’utilisez pas de thème enfant
La manipulation précédente pourrait rendre inaccessible votre site, ajouter des bugs ou que les modifications soient écrasées.
Dans ce cas, il faut passer par un plugin :
- Installez et activez WPCode Lite
- Ajoutez un snippet de php
- Insérez-y le code suivant :
<?php namespace TrunkDev\MU_Plugins\Temporary; add_action(‘admin_menu’, __NAMESPACE__ . ‘\remove_customizer’, 999); add_action(‘admin_bar_menu’, __NAMESPACE__ . ‘\remove_customizer_admin_bar’, 999); add_action(‘load-customize.php’, __NAMESPACE__ . ‘\disable_customizer_access’); function remove_customizer() { remove_submenu_page(‘themes.php’, ‘customize.php’); } function remove_customizer_admin_bar($wp_admin_bar) { $wp_admin_bar->remove_node(‘customize’); } function disable_customizer_access() { wp_die(‘L’accès au personnalisateur est désactivé pour ce site.’); } ?>Pourquoi empêcher l’édition de votre CSS via le backoffice WordPress ?
C’est avant tout pour des raisons de sécurité.
Si votre compte administrateur est hacké et qu’il est possible d’éditer vos fichiers depuis votre backoffice, le pirate aura toutes les possibilités de détournement de vos données et d’altération de votre site.
Comment ajouter le Disallow File Edit ?
Pour ajouter cette ligne de code, suivez ces étapes :
- Connectez-vous à votre serveur à l’aide d’un logiciel comme Filezilla
- Utilisez la connexion SFTP et demandez vos accès à votre hébergeur
- Une fois connecté, allez dans le dossier contenant votre site. En général il s’agit du dossier « www »
- Éditez le fichier wp-config.php qui se trouvera directement dans ce dossier en ajoutant les lignes mentionnées plus haut à la fin du fichier
- Une fois les modifications effectuées, enregistrez le fichier
Attention, si la ligne « define(‘DISALLOW_FILE_EDIT’, false); » existe, changez juste la valeur « false » en « true ».
Comment éditer le CSS une fois l’édition désactivée ?
Pour éditer votre CSS, vous devrez encore passer par FTP comme dit précédemment.
Une fois connecté, éditez le fichier style.css dans « wp-content » > « themes » > le dossier de votre thème.
À savoir : Évitez les futures pertes de données si vous éditez votre CSS en utilisant un thème enfant.
Autre méthode pour désactiver l’édition CSS
Désactiver l’édition de fichier est aussi possible via l’extension Wordfence que je vous recommence constamment.
Vous pouvez aussi utiliser un plugin dédié à cela.
Je vous le déconseille car cela viendra encore surcharger inutilement votre site, alors qu’à la base je recommande fortement l’installation Wordfence et qu’il propose déjà cette option.
