Разрешить роли автора загружать изображения без возможности редактирования опубликованных статей
У меня есть следующие два требования:
Я хочу разрешить пользователям с ролью автора (contributor) загружать медиафайлы (в основном изображения) в свои посты, и желательно, чтобы они не могли удалять существующие файлы до отправки поста на проверку.
Я хочу убедиться, что после публикации статьи автор (пользователь с ролью contributor) не может её редактировать, или если редактирование возможно, то новая версия не публикуется без прохождения процесса проверки.
Мне порекомендовали плагин Role Scoper, но я не смог разобраться, как это сделать. Буду благодарен за информацию о любом другом плагине или о том, как это реализовать с помощью Role Scoper.

Для добавления возможности загрузки изображений участникам (contributors)
Добавьте этот код в файл functions.php
вашей текущей темы
if ( current_user_can('contributor') && !current_user_can('upload_files') )
add_action('admin_init', 'allow_contributor_uploads');
function allow_contributor_uploads() {
$contributor = get_role('contributor');
$contributor->add_cap('upload_files');
}

После Codex: "Хотя проверка определенных ролей вместо возможностей частично поддерживается, такая практика не рекомендуется, так как может давать ненадежные результаты." (https://codex.wordpress.org/Function_Reference/current_user_can)

Всё это можно сделать с помощью плагина User Role Editor. Обычно я стараюсь не отвечать на вопросы, просто ссылаясь на плагины, но в данном случае именно этот плагин предоставляет необходимый вам функционал.

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

У меня действительно есть вопросы. Если мы даем участникам доступ к загрузке медиафайлов, это подразумевает, что у них также есть возможность удалять их. Есть ли способ разрешить им загружать файлы, но запретить удаление или редактирование, чтобы защитить данные? Во-вторых, я уже упоминал об этом ранее. По умолчанию участники могут редактировать свои записи после публикации. Это создает проблему: они могут изменить что-то по своему усмотрению, и эти изменения сразу отобразятся в посте. Мне бы хотелось, чтобы отредактированная версия поста требовала повторного одобрения, в то время как оригинальная версия оставалась бы видимой.

Не думаю, что есть способ запретить пользователю удалять изображение (файл), который он сам загрузил. Я бы предложил создать новый вопрос для лучшей поддержки.

@Danny, вы спрашиваете о функции, которая запрещает пользователю удалять опубликованную запись? Если вы создадите новый вопрос, я смогу ответить на него :)

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

вот, извините, что заняло так много времени
