Плагин Редактор Ролей Пользователей WordPress

Редактор Ролей Пользователей

User Role Editor


Плагин для WordPress “Редактор ролей пользователей” (User Role Editor) позволяет изменять стандартные роли пользователей WordPress несколькими кликами мыши. Достаточно пометить галочками разрешения, которые нужно включить в выбранную роль и нажать кнопку “Сохранить” для сохранения изменений в базе данных WordPress. Вот и вся процедура.
Добавляйте и настраивайте ваши собственные роли. При создании новой роли можно взять за основу любую из существующих. Затем можно вновь созданные роли назначать пользователям. Удаляйте не нужные больше роли из созданных вами. Роль можно удалить, если она не присвоена ни одному пользователю. Измените роль, присваиваемую пользователям по-умолчанию. Плагин поддерживает WordPress в много-сайтовой (сетевой) конфигурации.
Зачем редактировать роли? Предположим вы желаете, чтобы ассистенты (contributors) вашего блога могли загружать свои изображения для включения в свои статьи. Стандратная роль WordPress “contributor” не включает такого разрешения. В этой ситуации вы могли бы изменить включенные в роль пользователя разрешения вручную, используя SQL-клиента, как описано в статье “Как изменить разрешения роли пользователя WordPress”, если вы обладаете достаточными знаниями и опытом в этой области. Но что делать в обратном случае? Хорошая новость – теперь эта задачка решается просто, установите и используйте плагин “Редактор ролей пользователя” (User Role Editor) :).

Доступна к загрузке версия 4.14.4.
Количество загрузок: 1336305 раз.
Щёлкните расположенную ниже кнопку “Скачать”, если вы желаете опробовать этот плагин.

Указатель

скачать

Ниже приведено изображение главной формы плагина “User Role Editor”:

Редактор ролей пользователей - плагин WordPress

Редактор ролей пользователей

  • Выберите роль для редактирования из выпадающего списка в верхней части экрана. Страница автоматически обновится и отобразит разрешения доступные для данной роли. Внесите изменения, включая/исключая соответствующие разрешения, и нажмите кнопку “Сохранить”, для сохранения результатов вашей работы в базе данных WordPress.
  • Если вы считаете более удобным видеть названия разрешений в виде “Редактировать страницы” вместо стандартного для WordPress “edit_pages” поставьте галочку “Показ возможностей в читабельной форме” в правом верхнем углу этой формы. Для того, чтобы увидеть альтернативное имя, переместите курсор мыши над наименованием разрешения/возможности и вы увидите его в виде всплывающей подсказки.
  • Согласно WordPress Codex Уровни Пользователей были введены в WordPress 1.5, затем были заменены на Роли и Возможности (Разрешения) в WordPress 2.0, и окончательно признаны устаревшими в WordPress 3.0. Так что вы можете скрыть их чтобы они не мешали вам в работе с ролями. Просто оставьте элемент “Показать устаревшие разрешения” в правом верхнем углу формы выключенным. Если по какой-то причине вам нужно будет увидеть разрешения для пользовательски уровней (level_1 – level_10), включите/пометьте этот элемент.
  • Если вы не желаете сохранять сделанные вами изменения, используйте кнопку “Отмена”.
  • Используйте кнопку “Восстановить” для восстановления набора ролей, который был у вас на момент установки плагина “User Role Editor”.
    Когда пользователь первый раз открывает эту форму, плагин проверяет, создана ли уже резервная копия. Если резервная копия не обнаружена, плагин создаст её автоматически. Таким образом, если вы когда-либо нажмете кнопку “Восстановить”, плагин использует ранее сохраненные данные ролей вашего блога из резервной копии. Будьте предельно остороржны при использовании этой функции. После восстановления ролей из резервной копии вы совершенно точно потеряете все изменения, внесенные вами в роли с момента первого запуска этого плагина.
Плагин WordPress Редактор ролей пользователей - дополнительные модули

Редактор ролей пользователей - дополнительные модули

  • Если вам нужно создать собственную роль с уникальным набором разрешение (возможностей) используйте блок “Добавить новую роль”. Введите наименование новой роли в текстовое поле формы, выберите роль для использования в качестве основы для создания новой роли и нажмите кнопку “Добавить”. В наименовании ролей допускается использовать только латинские буквы, цифры и знак подчеркивания “_”.
  • Измените роль, которая назначается автоматически каждому вновь зарегистрированному пользователю. Для этого выберите новую роль по-умолчанию из выпадающего списка в блоке с заголовком “Роль по-умолчанию” и нажмите кнопку “Изменить”, чтобы сохранить изменения.
  • Добавленная вами роль при необходимости может быть удалена с использованием блока “Удалить Роль”. Выберите удаляемую роль из выпадающего списка и нажмите кнопку “Удалить” для выполнения операции. Только роли добавленные пользователем доступны в списке ролей к удалению. Если одна из созданных вами ролей присвоена пользователю или установлена в качестве роли по-умолчанию, она не появится в списке ролей к удалению. Если список ролей к удалению пуст, то блок “Удалить Роль” на экран не выводится.
  • Для добавления новой возможности используйте блок “Добавить новую Возможность”. В наименовании возможностей допускается использовать только латинские буквы, цифры и знак подчеркивания “_”. Для использование вновь добавленной возможности нужно включить её в одну из ролей и проверять наличие этой возможности у пользователя в одном из активных плагинов или в файле functions.php, входящем в состав темы вашего блога. Например,
     if (!current_user_can('some_capability_you_added')) {
       echo 'Вы не обладаете достаточными правами для совершения этой операции!';
       return;
    }
  • Для удаления добавленных вами или другими плагинами возможностей используйте блок “Удалить Возможность”. Редактор ролей пользователей не позволяет удалять стандартные возможности WordPress и возможности, включенные хотя бы в одну из ролей. Если не используемые в ролях возможности отсутствуют, блок “Удалить Возможность” не отображается.

Плагин позволяет назначать отдельным пользователям новые возможности напрямую в дополнение к присвоенной пользователю роли. Для того чтобы сделать это, откройте список пользователей щелкнув по пункту меню “Пользователи”. Найдите в списке нужного пользователя, подведите к нему курсор и выберите ссылку “Возможности”.

Редактор ролей пользователей - из списка пользователей

Редактор ролей пользователей - из списка пользователей


Перейдя по этой ссылке, вы можете назначить пользователю другие роли и добавить ему возможности не вошедшие в назначенную роль:
Редактор ролей пользователей - права пользователя

Редактор ролей пользователей – права пользователя


Возможности, предоставленные пользователю через роль, заблокированы и редактору не доступны. Добавляйте/исключайте другие возможности. Эти изменения будут применены напрямую к пользователю, как только вы нажмете кнопку “Сохранить”.

Сведения о ролях пользователей WordPress можно прочесть в этой статье на английском языке Roles and Capabilities.

Люди, поддержавшие разработку этого плагина финансами

Если вы желаете принять участие в финансировании разработки плагина “Редактор ролей пользователей” (User Role Editor), возможные пути отправки денежных средств разработчику перечислены на странице “Поддержать”.

Журнал изменений

4.14.4

  • 08.08.2014
  • Missed "manage_sites" user capability was added to the list of built-in WordPress capabilities managed by User Role Editor.
  • Russian translation was updated.

4.14.3

  • 25.07.2014
  • Integer "1" as default capability value for new added empty role was excluded for the better compatibility with WordPress core. Boolean "true" is used instead as WordPress itself does.
  • Integration with Gravity Forms permissions system was enhanced for WordPress multisite.

4.14.2

  • 18.07.2014
  • The instance of main plugin class User_Role_Editor is available for other developers now via $GLOBALS['user_role_editor']
  • Compatibility issue with the theme "WD TechGoStore" is resolved. This theme loads its JS and CSS stuff for admin backend uncoditionally - for all pages. While the problem is caused just by CSS URE unloads all this theme JS and CSS for optimizaiton purpose for WP admin backend pages where conflict is possible.

4.14.1

  • 13.06.2014
  • MySQL query optimizing to reduce memory consumption. Thanks to SebastiaanO.
  • Extra WordPress nonce field was removed from the post at main role editor page to exclude nonce duplication.
  • Minor code enhancements.
  • Fixes for some missed translations.

4.14

  • 16.05.2014
  • Persian translation was added. Thanks to Morteza.

4.12

  • 22.04.2014
  • Bug was fixed. It had prevented bulk move users without role (--No role for this site--) to the selected role in case such users were shown more than at one WordPress Users page.
  • Korean translation was added. Thanks to Taek Yoon.
  • Pro version update notes:
  • Use new "Admin Menu" button to block selected admin menu items for role. You need to activate this module at the "Additional Modules". This feature is useful when some of submenu items are restricted by the same user capability, e.g. "Settings" submenu, but you wish allow to user work just with part of it. You may use "Admin Menu" dialog as the reference for your work with roles and capabilities as "Admin Menu" shows what user capability restrict access to what admin menu item.
  • Posts/Pages edit restriction feature does not prohibit to add new post/page now. Now it should be managed via 'create_posts' or 'create_pages' user capabilities.
  • If you use Posts/Pages edit restriction by author IDs, there is no need to add user ID to allow him edit his own posts or page. Current user is added to the allowed authors list automatically.
  • New tab "Additional Modules" was added to the User Role Editor options page. As per name all options related to additional modules were moved there.

4.11

  • 06.04.2014
  • Single-site: It is possible to bulk move users without role (--No role for this site--) to the selected role or automatically created role "No rights" without any capabilities. Get more details at http://role-editor.com/no-role-for-this-site/
  • Plugin uses for dialogs jQuery UI CSS included into WordPress package.
  • Pro version: It is possible to restrict editing posts/pages by its authors user ID (targeted user should have edit_others_posts or edit_others_pages capability).
  • Pro version, multi-site: Superadmin can setup individual lists of themes available for activation to selected sites administrators.
  • Pro version, Gravity Forms access restriction module was tested and compatible with Gravity Forms version 1.8.5

4.10

  • 15.02.2014
  • Security enhancement: WordPress text translation functions were replaced with more secure esc_html__() and esc_html_e() variants.
  • Pro version: It is possible to restrict access to the post or page content view for selected roles. Activate the option at plugin "Settings" page and use new "Content View Restrictions" metabox at post/page editor to setup content view access restrictions.
  • Pro version: Gravity Forms access management module was updated for compatibility with Gravity Forms version 1.8.3. If you need compatibility with earlier Gravity Forms versions, e.g. 1.7.9, use User Role Editor version 4.9.

4.9

  • 19.01.2014
  • New tab "Default Roles" was added to the User Role Editor settings page. It is possible to select multiple default roles to assign them automatically to the new registered user.
  • CSS and dialog windows layout various enhancements.
  • 'members_get_capabilities' filter was applied to provide better compatibility with themes and plugins which may use it to add its own user capabilities.
  • jQuery UI CSS was updated to version 1.10.4.
  • Pro version: Option was added to download jQuery UI CSS from the jQuery CDN.
  • Pro version: Bug was fixed: Plugins activation assess restriction section was not shown for selected user under multi-site environment.

4.8

  • 10.12.2013
  • Role ID validation rule was added to prohibit numeric role ID - WordPress does not support them.
  • Plugin "Options" page was divided into sections (tabs): General, Multisite, About. Section with information about plugin author, his site, etc. was moved from User Role Editor main page to its "Options" page - "About" tab.
  • HTML markup was updated to provide compatibility with upcoming WordPress 3.8 new administrator backend theme "MP6".
  • Restore previous blog 'switch_to_blog($old_blog_id)' call was replaced to 'restore_current_blog()' where it is possible to provide better compatibility with WordPress API. After use 'switch_to_blog()' in cycle, URE clears '_wp_switched_stack' global variable directly instead of call 'restore_current_blog()' inside the cycle to work faster.
  • Pro version: It is possible to restrict access of single sites administrators to the selected user capabilities and Add/Delete role operations inside User Role Editor.
  • Pro version: Shortcode [user_role_editor roles="none"]text for not logged in users[/user_role_editor] is available. Recursive processing of other shortcodes inside enclosed text is available now.
  • Pro version: Gravity Forms available at "Export Entries", "Export Forms" pages is under URE access restriction now, if such one was set for the user.
  • Pro version: Gravity Forms import was set under "gravityforms_import" user capability control.
  • Pro version: Option was added to show/hide help links (question signs) near the capabilities from single site administrators.

4.7

  • 04.11.2013
  • "Delete Role" menu has "Delete All Unused Roles" menu item now.
  • More detailed warning was added before fulfill "Reset" roles command in order to reduce accident use of this critical operation.
  • Bug was fixed at Ure_Lib::reset_user_roles() method. Method did not work correctly for the rest sites of the network except the main blog.
  • Pro version: Post/Pages editing restriction could be setup for the user by one of two modes: 'Allow' or 'Prohibit'.
  • Pro version: Shortcode [user_role_editor roles="role1, role2, ..."]bla-bla[/user_role_editor] for posts and pages was added. You may restrict access to content inside this shortcode tags this way to the users only who have one of the roles noted at the "roles" attribute.
  • Pro version: If license key was installed it is shown as asterisks at the input field.
  • Pro version: In case site domain change you should input license key at the Settings page again.

4.6

  • 21.10.2013
  • Multi-site: 'unfiltered_html' capability marked as deprecated one. Read this post for more information (http://shinephp.com/is-unfiltered_html-capability-deprecated/).
  • Multi-site: 'manage_network%' capabilities were included into WordPress core capabilities list.
  • On screen help was added to the "User Role Editor Options" page - click "Help" at the top right corner to read it.
  • Bug fix: turning off capability at the Administrator role fully removed that capability from capabilities list.
  • Various internal code enhancements.
  • Information about GPLv2 license was added to show apparently - "User Role Editor" is licensed under GPLv2 or later.
  • Pro version only: Multi-site: Assign roles and capabilities to the users from one point at the Network Admin. Add user with his permissions together to all sites of your network with one click.
  • Pro version only: 'wp-content/uploads' folder is used now instead of plugin's own one to process file with importing roles data.
  • Pro version only: Bug fix: Nonexistent method was called to notify user about folder write permission error during roles import.

Click here to look at the full list of changes of User Role Editor plugin.


Полный список изменений можно прочесть здесь

Часто задаваемые вопросы

  • Работает ли User Role Editor c WordPress 3.2 в мультиблоговой или сетевой (multi-site) конфигурации?
    Да, плагин рабоатет с WordPress 3.2 в мультиблоговой конфигурации. По-умолчанию плагин работает с каждым блогом из вашей мультиблоговой сети как с единственным блогом без мультиблоговой поддержки.
    Плагин WordPress Редактор ролей пользователей - многоблоговый

    Редактор ролей пользователей - многоблоговый


    Чтобы изменить выбранную роль сразу для всех сайтов Сети необходимо отметить опцию “Применить ко всем сайтам”.
  • Почему администраторы отдельных сайтов в сетевой конфигурации не видят “Редактор Ролей Пользователей” (User Role Editor) в меню пользователи?
    - User Role Editor может быть доступен теперь и администратам отдельных сайтов (Administrator role) вашей многосайтовой сети. Для этого нужно определить константу URE_ENABLE_SIMPLE_ADMIN_FOR_MULTISITE в конфигурационном файле wp-config.php вашего блога. Вставьте в него эту строку кода

     define('URE_ENABLE_SIMPLE_ADMIN_FOR_MULTISITE', 1);

    если вы решите предоставить администраторам отдельных сайтов вашей сети такую возможность.

  • “Редактор Ролей Пользователей” не сохраняет изменения в ролях на все сайты большой (сотни сайтов) сети. Что делать?
    - Используйте версию 3.5. Для решения этой проблемы (скорее всего превышен установленный на сервере лимит времени выполнения PHP скрипта) реализован альтернативный метод репликации изменений в ролях на все сайты сети. Мои тесты показали повышение быстродействия приблизительно в 30 раз. Заранее благодарен, если вы поделитесь вашим результатом. На сколько изменилось быстродействие? Для выбора альтернативного метода репликации ролей на все сайты добавьте эту строку в конфигурационный файл вашего блога wp-config.php

     define('URE_MULTISITE_DIRECT_UPDATE', 1);
  • - Как изменить роль “Администратор”? Я не вижу ее в выпадающем списке ролей.
    Роль “Администратор” исключена из списка ролей по-умолчанию.
    Вы можете просматривать/изменять роль “Администратор”, начиная с версии 3.4. Для этого вставьте эту строку кода

      define('URE_SHOW_ADMIN_ROLE', 1);

    в файл wp-config.php и войдите в WordPress как администратор.
    If for any reason your “Administrator” role missed some capabilities added by plugins or themes, you can fix that now. But be careful with changing “Administrator” role, do not turn off accidentally some critical capabilities to not block your admin users.

  • Возможно ли использовать этот плагин с более ранними версиями WordPress, чем версия 3.0?
    Начиная с версии 2.2 плагин работает только с WordPress 3.0 и выше. Для более ранних версий WordPress используйте версию плагина 2.1.10.

скачать

Я готов ответить на ваши вопросы по использованию плагина “Редактор ролей пользователей WordPress” (User Role Editor). Используйте для обсуждения систему комментариев к этой статье.

Благодарю за внимание,
Владимир, ShinePHP.com

Tags: ,

  • Ws256

    Спасибо за плагин. Но у меня не получилось его использовать. Страница настроек не открывается, время выполнения скрипта стоит 80.

    [Wed Jul 13 09:38:20 2011] [warn] mod_fcgid: read data timeout in 40 seconds
    [Wed Jul 13 09:38:21 2011] [warn] (110)Connection timed out: mod_fcgid: ap_pass_brigade failed in handle_request function

    “Плагин позволяет назначать отдельным пользователям новые возможности напрямую в дополнение к присвоенной пользователю роли. Для того чтобы сделать это, откройте список пользователей щелкнув по пункту меню «Пользователи». Найдите в списке нужного пользователя, подведите к нему курсор и выберите ссылку «Возможности».”

    А вот «Возможности» – работают, добавил редактору доступ к управлению плагином – и он не появился у него в консоли.

    WP 3.2.1

    • http://shinephp.com Vladimir Garagulya

      Это уже третий сигнал. Предполагаю, что не хватает времени проверить использование возможностей/разрешений (capabilities) всеми пользователями, если их зарегистрировано достаточно большое количество. Сейчас в боксе для удаления возможностей плагин отображает не все существующие возможности, а только не используемые. Для этого и отрабатывает такая проверка. У вас много пользователей зарегистрировано на сайте? Не нужно точное количество, 100, 200, 1000?
      Я планирую добавить опцию для отключения такой проверки. А также вынесу дополнительные функции, как добавить возможность, удалить возможность в отдельное меню, чтобы не блокировали в случаях, подобных вашему, основной функционал.
      Сейчас можете закомментировать вызов заполнения бокса для удаления возможностей. В файле ure-role-edit.php замените строку 45
      $capabilityRemoveHTML = getCapsToRemoveHTML();
      на
      $capabilityRemoveHTML = ”;
      Это должно помочь до выхода очередного обновления для этого плагина.

      • http://shinephp.com Vladimir Garagulya

        Попробуйте версию 3.2. Надеюсь, мне удалось решить эту проблему.

  • Gast

    могу ли я использовать этот Плагин для изменения ролей в Buddypress? Например разрешить определённым пользователям доступ на все группы в Buddypress и другим пользователям только доступ на группы, которым они принадлежат. Заранее благодарен.

    • http://shinephp.com Vladimir Garagulya

      Скорее всего не можете.
      Мне пока не приходилось активно использовать BuddyPress. После его установки на тестовый сайт я не увидел новых ролей в списке ролей WordPress. Похоже, что BuddyPress их не создаёт. Не использует BuddyPress стандартную систему разрешений (capabilities) WordPress и для управления группами пользователей. На сколько я успел разобраться, группы пишутся в отдельные таблицы BuddyPress в базе данных. Среди членов группы могут быть выделены администраторы (поле is_admin в таблице bp_group_members)- скорее всего это делается через интерфейс самого BuddyPress либо с использованием его (BuddyPress) плагинов.

  • Denis Tabac

    Что означают level_0 – level_10?

    • http://shinephp.com Vladimir Garagulya

      Пользовательские уровни level_0-level_10 были введены для разграничения доступа, начиная с версии WordPress 1.5. В WordPress 2.0 они были заменены Ролями (Role) и Возможностями/Разрешениями (Capability). Начиная с WordPress 3.0 пользовательские уровни более не используются WordPress и остаются в базе данных только для совместимости со старыми плагинами и темами.
      Подробнее об пользовательских уровнях можно прочитать здесь
      http://codex.wordpress.org/User_Levels
      Подробнее о ролях, разрешениях и о том, как соотносятся пользовательские уровни с ролевой системой можно прочесть здесь
      http://codex.wordpress.org/Roles_and_Capabilities

  • http://twitter.com/exytab exytab

    Есть ли возможность удалить стандартную роль (например, Contributor)? Или сделать так, что бы её ни кто не видел?

    • http://twitter.com/exytab exytab

      Уже нашел.
      remove_role( ‘contributor’ );

      • http://shinephp.com Vladimir Garagulya

        Отлично. А если нужно только скрыть, можно использовать фильтр

        add_filter(‘editable_roles’, ‘hide_role’);

        function hide_role($roles) {

        if (isset($roles['contributor'])){
        unset( $roles['contributor'] );
        }

        return $roles;

        }
        // end of hide_role()

  • http://twitter.com/exytab exytab

    У меня очень странная проблема. Все пользователи (кроме администратора) не могут редактировать и удалять свои коментарии (создавать могут). В чём может быть проблема?

    • http://shinephp.com Vladimir Garagulya

      Комментарии в WordPress могут модерировать (редактировать, удалять) только администратор и автор статьи. Если администратор и автор статьи – один и тот же пользователь, получаем в точности вашу проблему.

  • http://1100sovetov.ru/ Алёна

    Спасибо за пост, пригодился.

  • http://1100sovetov.ru/ Алёна

    А если пользователь с правами участник может писать статьи, но не может добавлять фотографии – это права возможно добавить с помощью этого плагина?

  • Kost9

    Добрый день.
    Во первых спасибо за Ваш плагин! Очень удобный и понятный UI.
    Надеюсь вы сможете помочь мне решить некую проблему:
    С помошью вашего плагина была создана отдельная группа с правами:
    +Удалять страницы
    +Удалять статьи
    +Удалять опубликованные страницы
    +Удалять опубликованные статьи
    +Изменять страницы
    +Изменять статьи
    +Редактировать опубликованные страницы
    +Редактировать опубликованные статьи
    +Модерировать комментарии
    +Публиковать страницы
    +Публиковать статьи
    +Чтение
    +html без фильтра
    +Загружать файлы
    По идее пользователь Петя, которые входит в эту группу может: редактировать статьи/страницы которые он публиковал, публиковать новые страницы/статьи. А так же некоторые другие функции.
    Все это работает на УРА! НО! Страницы и статьи для которых в ручную, через свойства, был поставлен “Петя” как автор, для редактирования ему не доступны. Точнее в списке они есть, отображаются как “страница автора”. А вот при нажатии “изменить” получаем вот такое см. картинку.
    Новые страницы/статьи которые изначально созданы “Петей” доступны ему для редактирование без каких либо проблем.

    Буду Вам очень признателен за помощь!

    • Kost9

      Апдейт, для справки.
      Если установить для группы “Редактировать чужие страницы” то Петя получает возможность редактировать страницы с измененным авторством, и все другие так же.

      • http://shinephp.com Vladimir Garagulya

        Добрый день,

        У меня такой пользователь спокойно редактирует присвоенную ему страницу.
        Да и судя по вашей картинке с доступом и у вас всё в порядке. Возможен конфликт с другим плагином. Попробуйте отключить все плагины и проверить, что изменится.
        Ещё можно добавить в wp-config.php такой параметр
        define(‘WP_DEBUG’, true);
        Может быть WordPress сам проговорится, в чем у него проблема.

        • Kost9

          Спасибо за наводку… Усилил ковыряние, оказалось что проблема в плагине “All in ONE SEO”. Так как он используется при работе со страницей. И еще с некими другими завязанными на редактирование страницы…

          Проблема исчезла когда добавил “Управлять установками”. Эта директива я так понял дает права на работу с плагинами?
          Но к сожалению, она так же дала доступ к настройкам сайта :) Что не приемлемо… и очень опасно.

          Пришлось ставить еще один плагин “Advanced Access Manager” в котором для отдельных групп можно отключать конкретные меню в админке. Пока что вот такие костыли…

          Может быть Вам так же реализовать функционал для отключения некоторых “Меню” админки отдельным пользователям / группа? Ваш плагин самый удобный из сотен пробуемых мною.

          • http://shinephp.com Vladimir Garagulya

            Спасибо за оценку и идею. Может быть со временем. С ним всегда, как понимаете проблемы.
            Опять же на этом поле уже есть ряд неплохих решений. Могу из своего опыта добавить плагин ‘Adminimize’.

          • Виктор

            В тему – Я пользуюсь плагинами Shareaholic и vSlider. К сожалению, ваш плагин позволяет авторам не только видеть оба плагина, но также редактировать или даже удалять второй.

          • http://shinephp.com Vladimir Garagulya

            Не совсем понятно, при чем здесь User Role Editor. Я вижу два варианта: либо разработчик упомянутого плагина выбрал слишком низкий уровень доступа для своего плагина, либо вы отредактировали роли таким образом, что авторы могут позволить себе больше, чем вам хотелось бы.

  • http://garfo.ru/ CyberMax

    Хороший плагин, работает. Но в многосайтовой сети всё таки не полностью. Там если зайти в управление пользователями сети, нет этой ссылки “Возможности” возле имени пользователя. А так конечно можно роли создавать и переназначать их для отдельных пользователей. Но тут снова таки, вот например нельзя сделать такую роль которая бы давала администраторам отдельных блогов в сети некоторые права суперадминистратора всей сети. Так например нужно было сделать чтобы администратор блога в сети добавлял в виджет код счетчика с скриптом, у него на это нет прав, а у суперадминистратора есть такая возможность. В общем пока решил это в помощью плагина allow-javascript-in-text-widgets, тем более что он специально под мультисайтовый WordPress сделан. А интересно можно ли с помощью функции “Добавить новую роль” в User Role Editor это сделать?

    • http://shinephp.com Vladimir Garagulya

      Спасибо.

      “Возможности” или “разрешения” пользователей храняться WordPress на “посайтовой” основе. То есть для каждого сайта свои и хранятся отдельно. Поэтому выносить редактор возможностей пользователя на уровень консоли управления сетью суперадминистратора, пока разработчики WordPress не реализовали что-то вроде сетевых (сразу на всю сеть) прав доступа для пользователей, нет смысла.

      В мультисайтовой сети только из соображений безопасности фильтр HTML-тэгов отключен только для суперадминистратора. Для обычных администраторов он всегда включен, независимо от наличия в роли возможности “unfiltered_html”. Таким образом, ответ на ваш второй вопрос отрицательный, с использованием User Role Editor проблему решить не удастся. Это исключение зашито в основной код WordPress, как отдельная логика, независимая от роли пользователя и набора её возможностей/разрешений/permissions/capabilities.
      Если считаете возможным делегировать это право ввода любого HTML-кода ВСЕМ администраторам, можно поставить плагин
      http://wordpress.org/extend/plugins/unfiltered-mu/
      Но я бы этого делать не стал. Сразу возникает масса проблем с безопасностью вашей мультисайтовой сети. Об этом, кстати, честно предупреждают и разработчики плагина. Разве что в случае, когда список администраторов ограничен, и все они – ваши доверенные лица.

      • CyberMax

        “пока разработчики WordPress не реализовали что-то вроде сетевых (сразу на всю сеть) прав доступа для пользователей”

        Если я правильно понял о чем вы, то там уже есть такая функция. Для этого надо зайти в панели администратора сети в Управление сетью > Пользователи, потом выбрать пользователя, зайти в Редактирование пользователя, там можно отметить галкой где “Дать этому пользователю права суперадминистратора сети” и администратор отдельного блога станет суперадминистратором сети. Но мне надо было дать администратору отдельного блога только некоторые функции суперадминистратора сети, поэтому и спрашивал.

  • http://apps-oracle.ru/ rudev

    Обнаружил проблему работы совместно с плагином Robots Meta.
    Для пользователя стоит роль “Участник”, при попытке в админке просмотреть свои записи, перекидывает на главную страницу.
    Но при этом дает просмотреть страницы по следующим ссылкам: Все, Опубликованные , Черновики , На утверждении.
    Ошибка именно про просмотре своих записей.

    • http://apps-oracle.ru/ rudev

      Если снять опцию “Disable the author archives” для плагина Robots Meta, начинает работать просмотр собственных записей.

      • http://shinephp.com Vladimir Garagulya

        Эта проблема – прямой результат работы Robots Meta. Если деактивировать User Role Editor, проблема остаётся. Так что это не вопрос совместной работы этих двух плагинов. Проблему нужно адресовать автору Robots Meta.

  • Tishenkoav

    А как роль переименовать в кириллицу? Все создается клево, но вот проблема в том что, хочу выводить названия ролей на Русском, это возможно?

  • Alexey Petrenko

    Привет.

    Спасибо за плагин. Польза!

    Я с багрепортом или RFE, как смотреть.
    Названия ролей, на русском, языке в Вашем плагине не совпадают с переводом ролей в самом WP. Можно ли как-то брать названия ролей для редактора всё же в WP? А то сбивает с толку.

    • http://shinephp.com Vladimir Garagulya

      Добрый день, Алексей.

      Спасибо за информацию. Я как-то упустил этот момент. Со следующим обновлением поправлю.

      С уважением,
      Владимир.

      • Alexey Petrenko

        Спасибо.

  • Pingback: Опубликован User Role Editor 3.7 | ShinePHP.com - русское зеркало

  • Анатолий

    Вы так много знает о правах пользователей может подскажете как в режиме wordpress multisite поменять роль пользователя создающего блог на подкаталогах с администратора на редактора, очень необходимо.

    • http://shinephp.com Vladimir Garagulya

      Я исхожу из предположения, что у вас установлен и активирован для всей сети плагин “Редактор ролей пользователей”. Тогда добавьте в файл user-role-editor.php сразу после строки
      add_action( ‘wpmu_new_blog’, ‘duplicate_roles_for_new_blog’, 10, 2 );
      следующией код:

      function admin_to_editor($blog_id, $user_id) {
      switch_to_blog($blog_id);
      $user = new WP_User($user_id);
      if ($user->exists()) {
      $user->set_role(‘editor’);
      }
      restore_current_blog();
      }
      add_action( ‘wpmu_new_blog’, ‘admin_to_editor’, 10, 2 );

      В результате автоматически добавляемый во вновь создаваемый блог пользователь будет получать вместо ‘administrator’ роль ‘editor’.

  • http://miui.su/ Zenk

    Приветствую!
    У меня на сайте самодельный плагин. Как через РРП ограничить доступ к нему определенным группам пользователей?

    • http://shinephp.com Vladimir Garagulya

      День добрый,

      Плагин, определяя пункт меню, использует либо роль, либо пользовательское разрешение.

      Например,

      $thanks_page = add_options_page(‘Thank You Counter Button Settings’,
      ‘Thanks CB’, ‘create_users’, $base_name, ‘thanks_options’);

      Здесь ключевым является ‘create_users’, вот эту позицию и нужно включить
      в роль пользователя, чтобы предоставить ему доступ к плагину. Кроме
      этого нужно ещё разрешение, которое используется для доступа к меню в
      целом.

      С этим может помочь таблица из этой статьи

      http://shinephp.com/wordpress-admin-menu-permissions/

      Чтобы дать более точные рекомендации нужно взглянуть на код плагина.

  • Чеснок По-ЧесТному

    Мне необходимо определённой роли запретить постить везде, кроме одной рубрики. Как это сделать?

    • http://shinephp.com Vladimir Garagulya

      Спасибо за вопрос. Есть быстрый ответ, но он на английском. Если это для вас не проблема, то читайте здесь.
      http://shinephp.com/block-posting-to-selected-categories/
      Если список категорий не большой и редко меняется, то код можно использовать, как есть.
      Для более универсальной реализации список категорий для блокировки нужно получать программно из базы данных. Я опубликую пост на эту тему в ближайшие дни.

      • http://shinephp.com Vladimir Garagulya

        Статья на русском по блокировке списка рубрик/категорий для определенной роли доступна по этой ссылке http://ru.shinephp.com/block-categories-for-role/

  • Роман

    Как можно оставить пользователю в админке только права на изменение собственного профиля и Модерирования комментариев?
    Дело в том, что для модерирования комментов нужно установить права edit_others_posts, edit_published_posts,
    moderate_comments, read. Только moderate_comments и read не дают эффекта (тогда только просмотр комментов остается), а при полном наборе edit’ов пользователь уже может редактировать записи через меню, имеющееся сверху экрана у залогиненного пользователя при просмотре сайта (wpadminbar, см. картинку).

    • http://shinephp.com Vladimir Garagulya

      Совершенно верно. Право edit_post и сопряжённые с ним, являются здесь ключевыми. Судя по описанию, этот плагин может вам помочь
      http://chooseplugin.com/plugin-info/baw-moderator-role
      Хотя сам я его ещё не тестировал.

      • Роман

        Спасибо за наводку – это то, что нужно. Свои функции выполняет (появляется новая роль – Moderator с правами модерирования комментов).

        • http://shinephp.com Vladimir Garagulya

          Глянул исходный код. Роль Moderator в действительности наполнена указанными вами правами. Плагин прячет “лишние” для модератора комментариев пункты меню и блокирует прямой вызов скриптов, связанных с этими пунктами.
          Полезное дополнение к системе разграничения доступа WordPress.

  • sashic

    Плагин работает с custom post types и custom taxonomy?

    • http://shinephp.com Vladimir Garagulya

      Плагин работает с хранилищем прав и ролей. Если для custom post type определены особые права, то есть в определении пользовательского типа передан параметр типа
      ‘capability_type’ => ‘your_custom_cap’,
      то они будут работать в соотвествующих ролях после добавления всего нужного набора, описан здесь (english)
      http://shinephp.com/capabilities-set-for-custom-post-type/
      вручную через User Role Editor или программно.

  • Viktor

    Мои авторы видят только собственные посты и страницы, что превосходно. Но не так с галереями. Я использую плагин nextgen gallery. Нельзя ли как нибудь сделать так, чтобы каждый автор видел только свои собственные галерей? Они видят все, а это им незачем как и в слючае постов/статей.

    • http://shinephp.com Vladimir Garagulya

      Пока не знаю. За предложение спасибо. Посмотрю, что можно сделать. Но быстрой реализации не обещаю.

  • Виктор

    Нельзя ли сделать так, чтобы авторы видели только свои nextgen галерей, как и вслучае постов и страниц? Это очень удобно.

  • Serg

    Хороший плаг, но чего не хватает – импорта-экспорта ролей и прав юзеров.

    Не планируется?

    • http://shinephp.com Vladimir Garagulya

      Да, планирую добавить функционал экспорта-импорта. Но точный срок реализации пока назвать не могу.

  • Виталий

    Функция “применить ко всем сайтам” не работает.

    Роли изменяются только на основном сайте. На всех остальных сайтах сети роли остаются без изменений. Я использую WordPress MU 3.5.1 и User Role Editor 3.10
    Подскажите, пожалуста, в чем может быть проблема?

    • http://shinephp.com Vladimir Garagulya

      Странно, это 1-ый сигнал за более чем месяц после выпуска 3.10.
      “Применить ко всем сайтам” используется не как функция, а скорее как опция. Нужно включить этот checkbox, а затем включить/выключить какое-нибудь из разрешений (capabilities) выбранной роли и сохранить изменения, нажав кнопку “Update”. При включенном “применить ко всем сайтам” роли текущего сайта должны после этого записаться на все остальные сайты сети.

  • Vitek9208

    Добрый день!
    Подскажите пожалуйста, как убрать пункт “Добавить товар” для некоторых пользователей?

    • http://shinephp.com/ Vladimir Garagulya

      Добрый день,

      Какой плагин используете для работы с “Товарами”?

  • OMSKMEBEL

    Здравствуйте. Возникла интересная задача. Как можно дать возможность выбора роли пользователя при регистрации, чтоб регистрируемый сам выбрал , например одну из двух (подписчик или участник), чтоб настройки не тянулись из ядра, которые указанны в админке, кем мол быть пользователю новому. Заранее спасибо

    • http://shinephp.com/ Vladimir Garagulya

      Доброе время суток!
      Посмотрите, что можно взять полезного из этого плагина. Он давно не обновлялся, но думаю, что основная идея должна работать:
      http://chooseplugin.com/plugin-info/wp-roles-at-registration

  • David

    Привет. Плагин что надо. Только вот у меня пользователи почему то видят разделы Tools и плагин vSlider. Последний могут даже редактировать. А мне этого не надо. Можете предложить решение?

  • kenzhik

    Как можно оставить пользователю в админке только права на изменение собственного профиля и Модерирования комментариев?
    И еще нельзя ли как нибудь сделать так, чтобы каждый автор видел комментарий только к своим собственным постам.

  • Dmitry

    Здравствуйте, Владимир! Серьезный плагин, спасибо. Подскажите пожалуйста, как реализовать новую функцию для ролей – возможность добавлять в любой пост дополнительный контент новыми блоками, каждый юзер новый блок, без возможности изменения уже имеющегося и без изменения Url? Например разработчик плагина Post Forking сделал возможность добавлять контент к существующему посту, но по названию плагина создается “вилка” т.е. автоматом добавляется новая страница, естественно с новым url, а если 10 человек добавляют контент, то 10 новых страниц с 10-ю новыми url – это ни в какие ворота не лезет ))) Помогите пожалуйста! С уважением, Дмитрий.

    • http://shinephp.com/ Vladimir Garagulya

      Здравствуйте, Дмитрий.

      Не вижу другой возможности реализовать описанный функционал, кроме как написать под эту задачу отдельный плагин. К примеру плагин создаёт пользовательский тип статей (custom post type), для которого позволяет выбрать к какому стандартному посту добавить этот блок. Далее плагин автоматически добавляет новые блоки к стандартным постам в хронологическом порядке при формировании страницы для отображения в браузере.

  • Серж

    Здравствуйте прошу помочь мне разобраться как добавить свою возможность, а именно запретить определённым пользователям с определённой ролью оставлять комментарии.

    • http://shinephp.com/ Vladimir Garagulya

      На случай, если вы ещё не нашли решение. Можно добавить в functions.php активной темы такой код:

      if (current_user_can(‘your_role’)) {
      add_action(‘pre_comment_on_post’, ‘block_wp_comments’);
      }
      function block_wp_comments() {
      wp_die( __(‘Sorry, comments are closed for this item.’) );
      }

  • AlexB59

    Можно ли использовать плагин для создания приватной группы в форуме (плагине) bbpress и если можно, то как правильно такую связку настроить?

    • http://shinephp.com/ Vladimir Garagulya

      Ответ отрицательный. Пока плагин не поддерживает работу с ролями bbPress.
      bbPress не хранит свои роли в базе данных, как это делает WordPress. bbPress грузит свои роли в память из PHP-кода при каждом запросе страницы. Так как основная функция “User Role Editor” – работа с хранилищем ролей WordPress, я исключил роли bbPress из обработки.

  • Олег

    Подскажите, как с помощью плагина User Role Editor разрешить пользователям редактирование конкретной страницы или нескольких страниц, но не всех? Спасибо.