brightnucleus/localization

Bright Nucleus 组件的 WordPress 本地化。

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

This package is auto-updated.

Last update: 2024-09-16 05:18:14 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

Bright Nucleus 组件的 WordPress 本地化。

目录

安装

使用此包的最佳方式是通过 Composer

composer require brightnucleus/localization

基本用法

此包提供了一个特性,可以在 Bright Nucleus 组件中使用,以加载给定区域的翻译文件(编译后的 *.mo 文件)。

要使用此特性,将其导入到您的类中,并调用 loadLocalization( $domain, $path ) 方法。

示例

<?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.
	}
}

过滤器

每次加载本地化文件都会通过两个过滤器

  1. Localization::LOCALE_FILTER - 过滤 Bright Nucleus 库的区域。

    参数

    • $locale (字符串) - 插件的当前区域。
    • $domain (字符串) - 文本域。用于检索翻译字符串的唯一标识符。

    返回值

    • $locale (字符串) - 过滤后的区域。
  2. Localization::MOFILE_FILTER - 过滤 Bright Nucleus 库的 MO 文件名。

    参数

    • $path (字符串) - MO 文件的路径。
    • $locale (字符串) - 插件的当前区域。
    • $domain (字符串) - 文本域。用于检索翻译字符串的唯一标识符。

    返回值

    • $path (字符串) - 过滤后的 MO 文件路径。

贡献

欢迎所有反馈/错误报告/拉取请求。

许可证

版权 (c) 2016 Alain Schlesser, Bright Nucleus

此代码根据 MIT 许可证 许可。