Как настроить мелкозернистые возможности для пользовательских функций в WP? - PullRequest
0 голосов
/ 20 марта 2019

Когда мы хотим настроить возможности пользователей в WordPress, мы можем сделать это достаточно детально.Например, мы можем настроить, чтобы определенный пользователь мог редактировать сообщения.Более того, мы можем ограничить возможность редактирования сообщений только определенными типами сообщений (например, cap: edit_posts, edit_pages, edit_[post_type]).И даже с этого момента мы можем пойти дальше и думать только о том, как редактировать личные сообщения таких типов (например, cap: edit_private_posts, edit_private_pages);просто чтобы убедиться, что я имею в виду под «мелкозернистым».

Но когда речь идет о пользовательских возможностях, я знаю только 6 возможностей, а именно:

  • edit_users,
  • delete_users,
  • create_users,
  • list_users,
  • remove_users и
  • promote_users.

Так что это такое? А как насчет: edit_editor_users (что будет означать: редактировать только пользователей с ролью пользователя «редактор»).Я не могу поверить, что пользовательские возможности действительно настолько просты.


Когда я доставляю клиенту сайт WP, я обычно не предоставляю ему доступ пользователю с ролью пользователя administratorно более вероятно, что-то вроде editor или пользовательских ролей.Но когда я хочу разрешить роли пользователя создавать пользователей, пользователи с этой ролью могут создавать пользователей с каждой ролью пользователя, даже administrator s.Что было бы совсем нехорошо!Итак, еще раз.Мне нужно что-то вроде:

$role = get_role('editor');
$role -> add_cap('create_editor_users', true); // or in general:
$role -> add_cap('[edit|delete|create|list|remove|promote]_[user_role]_users', true);

Есть ли нехакерский способ добиться этого?Плагин тоже подойдет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...