Translation Workflow

PerfLocale’s optional Workflow layer turns translations into trackable assignments with owners, priorities, deadlines, email notifications, and an approval gate. It’s off by default - single-admin sites don’t need it. Turn it on at Settings → Translation → Workflow once you have more than one person writing or reviewing translations.

Workflow statuses

When Workflow is enabled, every translation picks up a workflow status alongside its WordPress post_status:

  • Unassigned - no translator picked yet. Default for newly-created translations.
  • In Progress - a translator has been assigned and is working.
  • Review - translator marked it done; awaiting an editor / manager’s sign-off.
  • Approved - reviewer accepted. Ready to publish.
  • Published - live on the site. Terminal state.
  • Rejected - reviewer sent it back. Translator picks up again.

Assignments admin page

PerfLocale → Assignments is the team’s shared queue. Every assignment row shows: Content, Language, Status, Priority (Urgent / High / Normal / Low), Assignee, and Deadline. Filter the queue by status + assignee; sort by Status, Priority, or Deadline; search by title; paginate.

Translators only see assignments they’re on; managers see everything. Each translator also gets a personal queue via the admin bar shortcut.

Assigning work

From any translation’s edit screen, the PerfLocale sidebar has a Workflow panel. Fields:

  • Assignee - a WP user with the perflocale_translate capability (granted by default to the custom Translator role; see Permissions & Roles).
  • Priority - Normal by default; raise for time-sensitive content.
  • Deadline - date-only; surfaces in the sorted queue.
  • Notes - optional free-text for the translator.

Email notifications

When an assignment is created, re-assigned, or its status changes, PerfLocale can send an email to the affected user(s). Toggle at Settings → Translation → Workflow → Email notifications. Subject + body are templated with placeholders ({post_title}, {language}, {deadline}, etc.) that you can customise. Falls back to wp_mail() by default; route through SMTP via any standard SMTP plugin.

Publish gate

Optional: require status = Approved before a translation can be Published. Enable Settings → Translation → Workflow → Require approval before publish. When on, saving a translation as Published is blocked with an admin notice if Workflow status isn’t yet Approved. Useful for regulated industries.

← Back to Docs