Scriptease - Codesnippets

Verschiedene Adminbars in WordPress für verschiedene Benutzerrollen

Gerne möchte man es seinen Usern möglichst komfortabel machen und die WordPress Adminbar individuell an die jeweilige Benutzerrolle anpassen, doch wie ist dies möglich? Eigentlich ganz einfach, denn mit den User-Leveln die WordPress für verschiedene Benutzergruppen vergiebt, könnt ihr eure Adminbar individuallisieren.

Grundlage hierfür ist der folgende Code, der in die functions.php eingefügt werden muss:

<?php
$user_id = get_current_user_id();
$user_info = get_userdata($user_id);
$userlevel = $user_info->user_level;
if($userlevel == 10)
{
function my_admin_bar_menu()
{
global $wp_admin_bar;
if (  !is_admin_bar_showing() )
return;

$wp_admin_bar->add_menu(
array(
'id' => 'backend',
'title' => __( 'Backend'),
'href' => site_url().'/wp-admin'
)
);

$wp_admin_bar->add_menu(
array(
'id' => 'mypages',
'title' => __( 'Seiten'),
'href' => site_url().'/wp-admin/edit.php?post_type=page'
)
);

$wp_admin_bar->add_menu(
array(
'id' => 'myupdates',
'title' => __( 'Updates'),
'href' => site_url().'/wp-admin/update-core.php'
)
);

$wp_admin_bar->add_menu(
array(
'id' => 'myplugins',
'title' => __( 'Plugins'),
'href' => site_url().'/wp-admin/plugins.php'
)
);
}
}
else
{

function my_admin_bar_menu()
{
global $wp_admin_bar;
if (  !is_admin_bar_showing() )
return;

$wp_admin_bar->add_menu( array(
'id' => 'custom_menustart',
'title' => __( 'Startseite'),
'href' => site_url().'/') );

$wp_admin_bar->add_menu( array(
'id' => 'custom_menu0',
'title' => __( 'Inhaltsverwaltung'),
'href' => site_url().'/wp-admin/edit.php?post_type=page') );

$wp_admin_bar->add_menu( array(
'id' => 'custom_menu1',
'title' => __( 'Kontaktdaten bearbeiten'),
'href' => site_url().'/post.php?post=13&action=edit') );

$wp_admin_bar->add_menu( array(
'id' => 'custom_menu2',
'title' => __( 'Galerie bearbeiten'),
'href' => site_url().'/admin.php?page=nggallery-manage-gallery') );
}
}
?>

Mit “get_userdata($user_id);” lasst ihr euch die aktuelle User ID ausgeben welche dann in der darauf folgenden Zeile eingestzt wird, um das User-Level von WordPress abzufragen. Darauf folgt dann einfach die Eingabe der entsprechenden Menüpunkte und schon seit ihr fertig.

Die User-Level definieren sich wie folgt:

Administrator 0 – 10
Redakteur 0 – 7
Autor 0 – 2
Mitarbeiter 0 – 1
Abonnent 0
Hinzugefügt von Rolf in Wordpress | 1 Kommentar
Tags: , ,



1 Kommentar


  • Von: marek am 12.08.2012 um 18:12 Uhr

    Antworten

    hi freunde,

    folgender hinweis sollte unter dem artikel nicht fehlen.

    aus dem wp codex:

    Note: User Levels were introduced in WordPress 1.5, they were replaced by Roles and Capabilities in WordPress 2.0, and were finaly deprecated in WordPress 3.0.


Kommentar verfassen: