Den Theme-Editor aus WordPress entfernen

Gibt man einem Benutzer die Möglichkeit auf einen Knopf zu drücken, wird er ihn drücken, unabhängig davon ob er weiss was er da gerade macht oder nicht. Im Falle von WordPress kann das böse Folgen haben! Nämlich genau dann wenn Benutzer an den Themes rum fummeln und einem die Seite nach ein paar Tagen mit einem Hintergrund in zart-rosa begrüßt. Die Erfahrung zeigt, das es sinnvoll ist, den Backend-Benutzern alle Möglichkeiten zu nehmen, die sie eh nicht verwenden sollten.

Der Theme Editor in WordPress
Der Theme Editor in WordPress

In WordPress geht das über den entsprechenden Hook recht einfach, man setzt einfach den nun folgenden Code in die functions.php des Templates:

function wp_remove_theme_editor() {
  remove_action('admin_menu', '_add_themes_utility_last', 101);
}
 
global $remove_submenu_page, $current_user;
$username = 'admin' // ggf. anpassen
get_currentuserinfo();
if($current_user->user_login != $username) { 
    add_action('admin_menu', 'wp_remove_theme_editor', 1);
}

Klappt prima, habt ihr sinnvollerweise den Login-Namen des Administrators geändert, müsst ihr das Skript entsprechend anpassen. Grund ist, dass $username weiterhin den Theme-Editor sehen kann, und alle anderen Benutzer des Backends nicht mehr. Man kann das Ganze übrigens auch durch die folgende Zeile in der wp-config.php erreichen:

define('DISALLOW_FILE_EDIT', TRUE);

Letztere Änderung ist natürlich etwas restrikter und wird sich auch auf andere Bereiche aus.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.