Zmiana uprawnień użytkowników

Od jakiegoś czasu miałem potrzebę zmieniać uprawnienia użytkownikom. Najczęściej potrzebowałem dodać użytkownikowi Redaktor większe uprawnienia do wybranego modułu. Dla przykładu – możliwość przeglądania i edytowania Użytkowników.

Próbowałem robić tego rodzaju zmiany przy pomocy pluginów, ale efekty były różne. Czasem plugin nie działał jak trzeba – np. pokazywał pozycję menu, ale po wejściu – pokazywał się komunikat o braku uprawnień.

W końcu trafiłem na rozwiązanie, które nie wymaga pluginów. Nie lubię ich instalować, bo nigdy nie wiadomo jaki kod za nimi się kryje i jak dany plugin obciaża system.

A oto magiczny kawałek kodu (dodaj do functions.php), który pozwoli na zmianę uprawnień użytkownika WordPress:

<?php
   // get the the role object
   $role_object = get_role('editor');
   // add $cap capability to this role object
   $role_object->add_cap('list_users');
   $role_object->add_cap('edit_users');
?>

Pierwsza część – get the role object – pobiera użytkownika, którego uprawnienia chcemy zmienić (editor to użytkownik Redaktor)

Kolejna część – add_cap dodaje uprawnienia użytkownikowi.

Pełną listę uprawnień (capabilities) można znaleźć na stronie Codex:
http://codex.wordpress.org/Roles_and_Capabilities

Miłej zabawy z uprawnieniami użytkowników WordPress’a :)

Ten wpis został opublikowany w kategorii modyfikacje wordpress, wordpress tips and tricks. Dodaj zakładkę do bezpośredniego odnośnika.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>