Skip to main content
Version: 2.0.0

Usage

The i18n CP section is visible under Translator in the Craft CP nav. Its page list (Dashboard, Translate jobs, Statistics, Status, Logs) is only shown to admins with allowAdminChanges enabled; non-admin users only see the Settings entry. i18n does not register a dedicated Craft CP permission — access to the section follows the same admin gate as other admin-only plugin sections.

Creating a translation job

  1. Go to Translator → Translate jobs → New job.
  2. Give the job a name, and pick the source section/site and target section/site — for example, source = Products on the primary site, target = Products on the German site.
  3. Choose which fields to translate. Either pick a plain list of field handles (translated in place, same handle on both sides), or define explicit field mappings when the source and target field handles differ ({source: "body", target: "body_de"}).
  4. Pick a provider, or configure a provider sequence (fallback chain) for this job specifically — this overrides the plugin-wide default from Settings.
  5. Optionally restrict the job to a subset of entries with an entry condition (the same condition builder Craft uses elsewhere in the CP — e.g. "only entries in category X" or "only entries created after date Y").
  6. Set an entry limit if the job should cap how many entries it touches per run (leave empty to use the plugin default).
  7. Review the safety flags: skip mismatched targets, always translate fields, translate untranslated only, continue on error, log statistics — these default to the safe behavior described in Settings and can be tuned per job.
  8. Save. The job now appears in the Translate jobs list, with its enabled/disabled state, provider and section/site pair shown at a glance.

Running a job

The Translate jobs list itself only supports creating a job (New translation job) and deleting one (row Delete, which removes the job definition but not already-written translations). The remaining controls live on the job's own edit page (open it by clicking the job's name in the list):

  • Translate now — queues an immediate run for that specific job via the Craft queue.
  • Stop job — stops a running job mid-way; entries already processed keep their translations.
  • Clear error cache — resets per-entry error counts so entries blocked by the error threshold can be retried.
  • Duplicated — via the console (i18n/translate/duplicate, see Developer); there is no CP duplicate action.

Per-entry actions are available from the job's Entries tab: retranslate a single entry, and delete a single entry's translation to force it to be picked up again. The job's Statistics tab adds a release blocked entries action (entries that hit the errorThreshold and were skipped) and a reset translation history action.

Translations also run from the main Translator page — the plugin's default CP nav landing page (i18n/queue) — which queues translations for the sections/sites/languages picked in that form, independent of any saved job; useful for a one-off manual run without creating a job first.

Dashboard

Translator → Dashboard shows the plugin's own CP dashboard (built on the shared craft-core dashboard), with the Translation statistics and Translation performance widgets available to add. The dashboard layout is saved per install.

Statistics

Translator → Statistics shows global totals (entries, sites, text fields, unique source values, potential site pairings) plus a per-job table (entries in scope, total entries matched, fields, unique values, expected translations, total expected translations, and progress), refreshable on demand, with a button to trigger a digest email for the current numbers. Blocked-entry counts and history resets live on each job's own Statistics tab (see Running a job). The same numbers are used to build the scheduled digest email (see Settings) and are exposed to MCP via i18n_get_statistics.

Status

Translator → Status lists per-entry translation status rows — translated, blocked, or errored — per job, so an admin can see exactly which entries still need attention instead of only an aggregate count. The same data is exposed to MCP via i18n_get_status.

Logs

Translator → Logs shows the plugin's translation log (provider errors, skipped entries, job run details). Errors are hidden by default; a toggle shows them. Logs can be cleared from this page.

Digest email

Settings → Send digest (or the console command) queues an immediate statistics digest email to the configured recipients, independent of the scheduled hourly/two-hourly/daily cadence — useful to verify recipients and formatting before relying on the schedule.

Stopping everything

Settings → Stop all translations halts all currently running/queued translation activity — the emergency stop when a provider misbehaves or a job was misconfigured (e.g. wrong target section), without having to find and stop every individual job.