Wir haben natürlich nicht für alles eine Lösung. Aber an Problemen, über welche wir selber schon gestolpert sind, müssen sich andere ja nicht auch noch die Zähne ausbeissen.

Wer mit TYPO3 arbeitet, kennt die ausgefeilte Rechteverwaltung für verschiedene Benutzergruppen. So kann man bequem konfigurieren, welche Seiten ein Redakteur im Backend angezeigt bekommen soll und welche nicht. Damit hat man ein gutes Mittel, das Backend übersichtlich und einfach zu halten, und so seine Kunden nicht unnötig zu verwirren (und ungewollte Änderungen zu verhindern). Diese Möglichkeit bietet WordPress von Hause aus leider nicht. Mit zwei kleinen Funktionen lässt sich aber auch im WordPress Admin-Bereich der Seitenbaum für Redakteure (genau genommen für alle Benutzerrollen ausser dem Administrator) wunschgemäss anpassen.

Seiten im Admin-Bereich für Redakteure ausblenden

Mit folgender Funktion (welche am besten in die function.php-Datei des Child-Themes eingefügt wird) können die gewünschten Seiten für alle Nicht-Administratoren (also unter anderem für Redakteure) ausgeblendet werden:

// Bestimmte Seiten im Admin-Bereich für Redakteure ausblenden
function jp_exclude_pages_from_admin($query) {
 
if ( ! is_admin() )
return $query;
 
global $pagenow, $post_type;
 
if ( !current_user_can( 'administrator' ) && $pagenow == 'edit.php' && $post_type == 'page' )
// Geben Sie in der nächsten Zeile alle Seiten-ID's an, welche nicht angezeigt werden sollen
$query->query_vars['post__not_in'] = array( '1', '2'); 
}
add_filter( 'parse_query', 'jp_exclude_pages_from_admin' );

In der entsprechenden Zeile werden alle ID’s der Seiten angegeben, welche ausgeblendet werden sollen. Die ID einer Seite erfährt man, indem man die entsprechende Seite bearbeitet, und sich dann die Adresszeile des Browsers anschaut. Die einzelnen Seiten-ID’s werden dann einfach als kommagetrennte Werte eingegeben.

Seiten ID ermitteln

Diese Funktion blendet zwar im Modul Seite alle gewünschten Seiten aus, allerdings hat sie keinen Einfluss auf die Option „Seite bearbeiten“, welche jeweils im Frontend in der Administrations-Leiste erscheint. Damit hätte ein Redakteur deshalb immer noch die Möglichkeit, jede gewünschte Seite zu bearbeiten. Um auch diese Option zu unterbinden, gibt es deshalb noch eine zweite Funktion.

„Seite bearbeiten“-Option in der Admin-Leiste für Redakteure ausblenden

Mit der folgenden Funktion, lässt sich diese Funktion in der Admin-Leiste ausblenden:

// "Seite bearbeiten"-Option in der Admin-Leiste für Redakteure ausblenden
function jp_remove_admin_bar_edit_link() {
 
  if( ! current_user_can( 'administrator' ) ) {
     
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu( 'edit' );
  }
}
add_action( 'wp_before_admin_bar_render', 'jp_remove_admin_bar_edit_link' );

Hinweis: Bei beiden Funktionen handelt es sich nicht um Lösungen, welche bei genügend Know-How der Redakteure nicht umgangen werden können. Es geht bei diesen Funktionen lediglich darum, das Backend für Kunden übersichtlicher zu machen, und sie nicht durch Seiten zu verwirren, welche sie gar nicht benötigen. Wenn Sie eine ausgereiftere Lösung suchen, gibt es dafür extra Plugins wie BU Section Editing.

Quelle: Freie Übersetzung eines englischen Artikels von John Parris.

Bewerte den Artikel
Sende
Benutzer-Bewertung
0 (0 Stimmen)
Share This