LanguageTranslatorTwig by justb3a

Adds twig support for language translator.

WARNING: This repository is no longer maintained

This repository will not be updated. The repository will be kept available in read-only mode.

ProcessWire

Template Twig Replace Language Support

Adds twig support for language translator list.

Supports the following modules:

Installation


  1. Clone the module and place TemplateTwigReplaceLanguageSupport in your site/modules/ directory.
git clone https://github.com/justonestep/processwire-templatetwigreplacelanguagesupport your/path/site/modules/TemplateTwigReplaceLanguageSupport
  1. Login to ProcessWire admin and click Modules.
  2. Click "Check for new modules".
  3. Click "install" next to the new TemplateTwigReplaceLanguageSupport module. This module requires TemplateTwigReplace as well as LanguageTranslatorList module.
  4. That's all!

Usage


To get your .twig files listed as well, you need to wrap the phrases like this:

{{ __('text to translate', 'filepath/filename relative to site/templates/') }}
{{ __('another text to translate', 'home') }}
{{ __('one more text to translate', 'partials/header') }}
  • first line - general usage
  • second line - example for a text in site/templates/home.twig
  • third line - example tor a text in site/templates/partials/header.twig

Often used translations


You could wrap often used translations in a file called _strings.twig placed in site/templates. Doing this you can copy this file between various ProcessWire installations und reuse it. Make sure to copy also the corresponding json file and import it.

Calling such a translation in another file is really easy, you don't have to provide a translation domain:

{{ __('Save') }}

Now have a look at _strings.twig, in this file you need to have the same entry (one per line) including a translation domain.

Example on how _strings.twig could look like:

{# Intentionally commented out

{% set s = '_strings' %}

{{ __('Save', s) }}
{{ __('Send', s) }}
{{ __('Email address', s) }}

#}

Enable the Twig Intl Extension


The Intl Extension provides the localizeddate, localizednumber and localizedcurrency filters.

First of all, you will need the PHP intl extension, as the Twig extension is built on top of that.

The Twig Intl extension will throw an Exception if the PHP intl extension is not enabled.

Installation instructions can be found in the official PHP documentation.

Go to module settings (Template Twig Replace Language Support) and activate the checkbox.

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • ProcessWire 3.0.187: This week we have some very useful new additions to both the core Repeater Fieldtype and the ProFields Repeater Matrix Fieldtype. This post covers all the details along with a couple of brief demonstration videos— More
    22 October 2021
  • ProcessWire 3.0.185 (dev) core updates, plus new Session Allow module— More
    17 September 2021
  • Three new ProcessWire Textformatter modules: Find/Replace, Markdown in Markup, and Emoji— More
    3 September 2021

Latest news

  • ProcessWire Weekly #388
    In the 388th issue of ProcessWire Weekly we'll check out the latest core update, introduce two new third party modules, and more. Read on!
    Weekly.pw / 16 October 2021
  • ProcessWire 3.0.184 new master/main version
    This week we have a new master/main version released after a full year in the making. As you might imagine, this new version has a ton of great new stuff and we’ll try to cover much of it here.
    Blog / 27 August 2021
  • Subscribe to weekly ProcessWire news

“The end client and designer love the ease at which they can update the website. Training beyond how to log in wasn’t even necessary since ProcessWire’s default interface is straightforward.” —Jonathan Lahijani