Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/micropackage/internationalization
Internationalization (i18n) wrapper for WordPress plugins, themes or libraries
https://github.com/micropackage/internationalization
bracketspace composer-library i18n internationalization micropackage
Last synced: about 1 month ago
JSON representation
Internationalization (i18n) wrapper for WordPress plugins, themes or libraries
- Host: GitHub
- URL: https://github.com/micropackage/internationalization
- Owner: micropackage
- License: mit
- Created: 2020-01-23T13:34:23.000Z (almost 5 years ago)
- Default Branch: develop
- Last Pushed: 2023-06-23T08:54:24.000Z (over 1 year ago)
- Last Synced: 2024-08-09T14:31:38.161Z (5 months ago)
- Topics: bracketspace, composer-library, i18n, internationalization, micropackage
- Language: PHP
- Size: 22.5 KB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Internationalization
[![BracketSpace Micropackage](https://img.shields.io/badge/BracketSpace-Micropackage-brightgreen)](https://bracketspace.com)
[![Latest Stable Version](https://poser.pugx.org/micropackage/internationalization/v/stable)](https://packagist.org/packages/micropackage/internationalization)
[![PHP from Packagist](https://img.shields.io/packagist/php-v/micropackage/internationalization.svg)](https://packagist.org/packages/micropackage/internationalization)
[![Total Downloads](https://poser.pugx.org/micropackage/internationalization/downloads)](https://packagist.org/packages/micropackage/internationalization)
[![License](https://poser.pugx.org/micropackage/internationalization/license)](https://packagist.org/packages/micropackage/internationalization)
## 🧬 About Internationalization
The Internationalization micropackage is an unified wrapper for both `load_plugin_textdomain` and `load_theme_textdomain` functions.
It can handle both theme and plugin language packs but also any other 3rd party library, like a translated Composer package.
The language file must follow the scheme: `{textdomain}-{locale_LOCALE}.mo`.
This package is compatible with [DocHooks library](https://github.com/micropackage/dochooks).
## 💾 Installation
``` bash
composer require micropackage/internationalization
```## 🕹 Usage
Call the action manually:
```php
use Micropackage\Internationalization\Internationalization;add_action( 'init', [ new Internationalization( $textdomain, $full_language_dir_path ), 'load_translation' ] );
```Using [DocHooks library](https://github.com/micropackage/dochooks):
```php
Micropackage\DocHooks\Helper::hook( new Internationalization( $textdomain, $full_language_dir_path ) );
```Retrieving full path to the directory:
```php
$theme_language_dir = get_template_directory() . '/languages';
$plugin_language_dir = plugin_dir_path( __FILE__ );
```## 📦 About the Micropackage project
Micropackages - as the name suggests - are micro packages with a tiny bit of reusable code, helpful particularly in WordPress development.
The aim is to have multiple packages which can be put together to create something bigger by defining only the structure.
Micropackages are maintained by [BracketSpace](https://bracketspace.com).
## 📖 Changelog
[See the changelog file](./CHANGELOG.md).
## 📃 License
This software is released under MIT license. See the [LICENSE](./LICENSE) file for more information.