2010-08-17 13 views

Odpowiedz

9

Zakładam, że wiesz, jakie haczyki Wordpress chcesz użyć. Więc pomijanie tej części, to dość łatwo dostać aktualną rolę użytkownika

$current_user = wp_get_current_user(); 
if (!($current_user instanceof WP_User)) 
    return; 
$roles = $current_user->roles; //$roles is an array 

Teraz można iteracyjne nad tej tablicy, aby sprawdzić, czy użytkownik ma szczególną rolę.

Możesz też użyć current_user_can, aby wyszukać określone możliwości, jeśli chcesz tylko sprawdzić, czy użytkownik ma określone uprawnienia, czy też nie, czy nie. Na przykład:

if (current_user_can('delete_posts')) { 
    //display the delete posts button. 
} 
+0

świetnie! Tego właśnie szukam! :) Dzięki! Przy okazji, jaki hak muszę użyć do tego kodu? –

+0

Zapisałbym save_post – villecoder

+0

Zwróć uwagę, że kodeks WP w dzisiejszych czasach stwierdza: "Nie przekazuj nazwy roli do' current_user_can() ', ponieważ nie ma gwarancji, że działa poprawnie". – Robbert

0

Ten kod pozwoli Ci

<?php echo array_shift(wp_get_current_user()->roles); ?> 
+0

Czy możesz wyleczyć expalin na temat sposobu rozwiązania problemu? – Phani

Powiązane problemy