Разрешение пользователям редактировать только свою страницу и

В настоящее время у нас около 50 страниц, каждый из которых я хочу, чтобы пользователь (например, bob, rob, smith) мог редактировать только 1 страницу. Например, у bob & smith есть своя страница. Я не хочу, чтобы bob мог редактировать страницу кузнеца. Я хочу, чтобы bob ТОЛЬКО мог редактировать страницу bob. Мне все равно, сможет ли он увидеть другие страницы. Просматривая роли пользователей, я не вижу способа сделать это сейчас – я вижу только, как разрешить ограничение доступа в глобальном масштабе.

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

Плагин Role Scoper может включить это.

Вы можете добавить это в свой файл functions.php в свой шаблон, чтобы позволить пользователю редактировать страницы, которые они создали, и управлять медиа. Просто укажите их $user_id (т.е. 27):

 function add_theme_caps() { // to add capability to $user_id $user = new WP_User( $user_id ); $user->add_cap( 'edit_pages' ); $user->add_cap( 'edit_published_pages' ); $user->add_cap( 'upload_files' ); } add_action( 'admin_init', 'add_theme_caps' ); 

Вы можете найти $user_id определенного пользователя из URL-адреса при редактировании определенного пользователя с помощью страницы администрирования WordPress.

См. Полный список возможностей WordPress .

Если вы хотите изменить встроенный contributor ролей, чтобы позволить всем пользователям с ролью contributor изменять страницы, которые они создали:

 function add_theme_caps() { // to add capability to the role `contributor` $role = get_role( 'contributor' ); $role->add_cap( 'edit_pages' ); $role->add_cap( 'edit_published_pages' ); $role->add_cap( 'upload_files' ); } add_action( 'admin_init', 'add_theme_caps' ); 

Роль Область очень мощная, но я думаю, что это слишком велико. Если вы установите Боба и Смита на роль Автора (одна из ролей по умолчанию), они смогут редактировать свои собственные записи.

Вы также можете просто отредактировать таблицу WP. Казалось, что phpAdmin будет более быстрым способом.

Таблица

 wp_usermeta 

Найдите user_id, измените значение для

 wp_capabilities 

и установите его на что-то вроде

 a:4:{s:11:"contributor";b:1;b:1;s:10:"edit_pages";b:1;s:20:"edit_published_pages";b:1;s:12:"upload_files";b:1;} 

Я нашел http://www.unserialize.me/, чтобы помочь вам убедиться в правильности сериализации (и я ожидаю, что есть и другие сайты)