WPML

Плагин Toolset Access позволяет создавать редакторов для определенных языков и дает им возможность проверять и публиковать переводы определенных типов контента.

Обычно, если Вы хотите назначить пользователя редактором для какого-либо языка, этот пользователь должен иметь как минимум права уровня Редактора WordPress. Toolset Access предоставляет функционал для настройки правил доступа для определенных ролей или отдельных пользователей к определенным типам контента и языкам.

Для этого рабочего процесса требуется тип учетной записи Multilingual CMS или Multilingual Agency.

Предположим, что мы создали произвольный тип записи Book, который можно переводить, и включили английский как язык по умолчанию, а немецкий — как дополнительный язык.

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

ПользовательРольПрава доступа
adminАдминистраторМожет управлять книгами, может управлять переводами книг на всех языках, может управлять пользователями и переводчиками
german_editorПодписчикМожет редактировать и публиковать переводы книг только на немецком языке
german_translatorПодписчикМожет отправлять переводы книг в статусе черновика только на немецком языке

Для достижения нашей цели необходимо выполнить три основных шага. В этом руководстве мы:

Пользователи и роли

Первый шаг — создать пользователей сайта. Пользователь admin получит роль Администратор и будет иметь права на создание и редактирование любых книг или переводов. Для редактора и переводчика рекомендуется назначить роль Подписчик, так как это гарантирует, что у них будут только те права доступа, которые мы назначим им в следующих разделах.

Список пользователей
Список пользователей

Настройка переводчика

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

Для начала важно указать в настройках WPML, что переводы будут сохраняться как черновики. Для этого перейдите на страницу WPMLНастройки и прокрутите вниз до раздела Настройки переведенных документов. Там отметьте Черновик в настройке Статус документа.

Настройка статуса документа в виде черновика в WPML
Настройка статуса документа в виде черновика в WPML

Следующий шаг — назначить пользователя german_translator переводчиком с английского на немецкий. Это можно сделать на вкладке Переводчики в WPMLПанель управления переводами.

Назначение пользователя переводчиком с английского на немецкий

Теперь german_translator может брать задания на перевод с немецкого на английский и отправлять их в статусе черновика.

Создание редактора для переводов

На данном этапе Вы можете использовать функционал Toolset Access для создания группы прав доступа для пользователя german_editor. Эти права будут применяться к произвольному типу записи Book только для выбранных языков, в нашем случае — для немецкого.

Чтобы активировать эти права, перейдите на страницу ToolsetAccess Control. На вкладке Типы записей найдите тип записи Books. Разверните произвольный тип записи Books и включите опцию Managed by Access.

Включение Access для управления произвольным типом записи Book
Включение Access для управления произвольным типом записи Book

Теперь Вы можете перейти к созданию новой группы прав доступа. На вкладке WPML Groups нажмите кнопку для создания прав для определенного языка.

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

Создание новой группы прав доступа

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

Предоставление прав доступа редактору для языка

Как показано в примере выше, german_editor может редактировать, удалять и публиковать любой перевод на немецком языке.

Пример процесса перевода

Теперь, когда у Вас есть необходимый функционал, давайте посмотрим на систему в действии. В качестве примера рассмотрим сценарий, в котором admin создает новую книгу, отправляет задание пользователю german_translator на добавление немецкого текста и поручает пользователю german_editor проверить и опубликовать этот перевод.

Следующая таблица иллюстрирует шаги для этого сценария и описывает процесс его выполнения:

Administrator checks the list of books in all languages
Administrator checks the list of books in all languages

Автор: Amir · Последнее обновление: 5 июня 2026