На прошлой неделе команда WPBeginner выпустила плагин Comment Moderation Role. Он делает одну простую вещь: с его помощью можно создать отдельную пользовательскую роль для модерации комментариев.
Самый распространенный сценарий для использования такой роли – именуемой WPB Comment Moderator в админке, – выполнение модерации в крупных командах. В WordPress нет встроенной возможности для решения этой задачи. Увы, это именно та область, в которой CMS WordPress терпит провал.
Еще 10 лет назад (а ощущается, как будто это было вчера) я наткнулся на баг, который сломал мой проект. Под него даже был создан отдельный тикет. Мне требовалось предоставить некоторым пользователям на WordPress-сайте разрешение на модерацию комментариев, но при этом я не хотел, чтобы они могли редактировать другие вещи в админке.
Некоторые из вас, возможно, подумали, что это можно сделать с помощью функции moderate_comments. Конечно, в идеале так и должно быть. Но в реальности все совсем иначе. Чтобы пользователи могли редактировать комментарии, у них должна быть также возможность редактирования записей. И чтобы это переопределить, вам пришлось бы погружаться в код ядра и переписывать там огромные участки.
С тех пор я сталкивался с этой проблемой много раз. Я создавал хитроумные обходные решения для отдельных проектов, но все это было не идеально. И мне не хотелось поддерживать плагин для решения этой проблемы (там такие случаи могут быть, просто жесть).
Я видел несколько других решений, но все они напоминали «костыли». И теперь я рад видеть, что кто-то другой все же изящно решил эту проблему.
Плагин Comment Moderation Role от WPBeginner работает прекрасно.
Админы сайта могут добавить роль WPB Comment Moderator к любому аккаунту через страницу управления пользователями. Процесс аналогичен добавлению или удалению любой другой роли в WordPress.
Как только пользователю будет добавлена роль, он сможет получить доступ к странице комментариев. Он будет видеть консоль и свой профиль. К другим страницам у него доступа не будет (исключение: если у него имеются другие роли, добавленные через иные плагины).
Из-за жестко прописанной в коде проверки прав доступа в WordPress разработчикам плагина пришлось создавать отдельную страницу управления комментариями. Большинство пользователей на сайте не заметят этой страницы. Пришлось пойти на это, чтобы исправить существующий уже 11 лет баг в WordPress.
Пока эта проблема не решена в ядре, нам придется использовать данный плагин. Если он мне потребуется для моего следующего проекта, я с удовольствием его установлю.
Источник: wptavern.com