Multiple language support with ProcessWire

Multi-language page names (URLs) and multi-language text fields make developing a multilingual site as easy as developing a single language site. 

ProcessWire's multi-language support includes a full gettext-style translation system, but with the translation tools built into the CMS, and without actually using gettext. You can also install (or create) alternate language packs for the admin side of ProcessWire.

Multi-language support is installed with core modules available in the admin: Modules > Language > Language Support. If you just want to install alternate language packs, then all you need is the base Language Support module. If you want to support multi-language fields in your own site, then you should also install the Language Support Fields module. We also recommend installing Language Support Page Names module for multi-language URLs.

  • Code i18n

    This page provides detailed documentation on everything you need to know to make your template files or modules translatable using ProcessWire's translation tools.
  • Multi-language fields

    Here we look in detail at multi-language fields and language-alternate fields, as well as how to use them. Also includes a video overview and examples of how to use language fields to create full multi-language websites.
  • Multi-language URLs

    Multi-language URLs and page names enable you to maintain different/translated URLs for each page, based on the language. It also lets you produce your site easily, as the language is determined automatically by the URL.
  • Language Packs

    Language packs for use with the ProcessWire admin.
  • Multi-Language Support Forum

    A place to get support and chat about multi-language capabilities in ProcessWire.

Twitter updates

  • We added WebP image support this year and many have been adopting it in existing projects. We look at a process used for migrating existing websites to WebP images— from preliminary considerations to implementation & testing, w/lots of tips & tricks too: More
    16 August 2019
  • Core version 3.0.137 on the dev branch adds the ability to hook multiple methods at once, in a single call. This post details how it works and provides a useful example of how you might put it to use in your development environment— More
    2 August 2019
  • ProcessWire 3.0.136 updates our CKEditor version and adds a new backtrace() method to the core Debug class— More
    26 July 2019

Latest news

  • ProcessWire Weekly #274
    The 274th issue of ProcessWire Weekly introduces three new modules, covers the latest status update from Ryan, and features the newly released website of the Brightline Initiative. Read on!
    Weekly.pw / 10 August 2019
  • WebP images on an existing site
    In this post we’ll look at a process used for migrating an existing website to use WebP images. We’ll cover everything from preliminary considerations to implementation and testing, with lots of tips and tricks along the way.
    Blog / 16 August 2019
  • Subscribe to weekly ProcessWire news

“…building with ProcessWire was a breeze, I really love all the flexibility the system provides. I can’t imagine using any other CMS in the future.” —Thomas Aull