brightnucleus/localization

WordPress localization for Bright Nucleus components.

v0.1.0 2016-08-15 08:28 UTC

This package is auto-updated.

Last update: 2024-04-16 04:26:29 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

WordPress localization for Bright Nucleus components.

Table Of Contents

Installation

The best way to use this package is through Composer:

composer require brightnucleus/localization

Basic Usage

This package provides a trait to be used within Bright Nucleus components to load the translation files (compiled *.mo-files) for a given locale.

To use the trait, import it into your class, and call the loadLocalization( $domain, $path ) method.

Example:

<?php namespace Localization\Example;

use BrightNucleus\Localization\LocalizationTrait;

class TranslatedClass {

	use LocalizationTrait;

	public function register() {

		$this->loadLocalization(
			'bn-localization-example',
			__DIR__ . '/../languages'
		);

		// Your normal registration comes here, knowing that all `gettext`
		// strings have already been translated.
	}
}

Filters

Each loading of localization files passes through two filters:

  1. Localization::LOCALE_FILTER - Filter the locale of a Bright Nucleus library.

    Arguments:

    • $locale (string) - The plugin's current locale.
    • $domain (string) - Text domain. Unique identifier for retrieving translated strings.

    Return value:

    • $locale (string) - Filtered locale.
  2. Localization::MOFILE_FILTER - Filter the name of the MO-file of a Bright Nucleus library.

    Arguments:

    • $path (string) - Path to the MO-file.
    • $locale (string) - The plugin's current locale.
    • $domain (string) - Text domain. Unique identifier for retrieving translated strings.

    Return value:

    • $path (string) - Fitlered path to the MO-file.

Contributing

All feedback / bug reports / pull requests are welcome.

License

Copyright (c) 2016 Alain Schlesser, Bright Nucleus

This code is licensed under the MIT License.