php-translation/loco-adapter

Adapter for loco.

Maintainers

👁 Nyholm

Package info

github.com/php-translation/loco-adapter

pkg:composer/php-translation/loco-adapter

Statistics

Installs: 1 811 579

Dependents: 1

Suggesters: 0

Stars: 25

Open Issues: 7

0.11.2 2022-07-18 15:18 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT ef2b0f36ca06e5c819bab655bb8546110d3e8afb

  • Tobias Nyholm <tobias.nyholm.woop@gmail.com>

This package is auto-updated.

Last update: 2026-06-18 23:58:42 UTC


README

👁 Latest Version
👁 Total Downloads

This is an PHP-translation adapter for Loco (Localise.biz).

Install

composer require php-translation/loco-adapter
Symfony bundle

If you want to use the Symfony bundle you may activate it in kernel:

// app/AppKernel.php

public function registerBundles()
{
 $bundles = array(
 // ...
 new Translation\PlatformAdapter\Loco\Bridge\Symfony\TranslationAdapterLocoBundle(),
 );
}

If you have one Loco project per domain you may configure the bundle like this:

# /app/config/config.yml
translation_adapter_loco:
 index_parameter: 'id' # 'text' or 'name'. Leave blank for "auto" See https://localise.biz/api/docs/export/exportlocale
 projects:
 messages:
 api_key: 'foobar'
 navigation:
 api_key: 'bazbar'
 status: '!untranslated,!rejected' # if you want filter on loco translations statuses. By default only 'translated' translations are pulled.

If you just doing one project and have tags for all your translation domains you may use this configuration:

# /app/config/config.yml
translation_adapter_loco:
 index_parameter: 'id' # 'text' or 'name'. Leave blank for "auto" See https://localise.biz/api/docs/export/exportlocale
 projects:
 acme:
 api_key: 'foobar'
 domains: ['messages', 'navigation']

This will produce a service named php_translation.adapter.loco that could be used in the configuration for the Translation Bundle.

If you need to override the HTTPlug client:

# /app/config/config.yml
translation_adapter_loco:
 httplug_client: httplug.client.loco
 # You can even customize the message and uri factory
 # httplug_message_factory: null
 # httplug_uri_factory: null

httplug:
 clients:
 loco:
 factory: 'httplug.factory.guzzle6'
 plugins:
 - httplug.plugin.content_length
 - httplug.plugin.logger
 config:
 timeout: 2

By default it will use the discovery feature of HTTPlug.

Documentation

Read our documentation at http://php-translation.readthedocs.io.

Contribute

Do you want to make a change? Pull requests are welcome.