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.
composer require micropackage/internationalization
Call the action manually:
use Micropackage\Internationalization\Internationalization;
add_action( 'init', [ new Internationalization( $textdomain, $full_language_dir_path ), 'load_translation' ] );
Using DocHooks library:
Micropackage\DocHooks\Helper::hook( new Internationalization( $textdomain, $full_language_dir_path ) );
Retrieving full path to the directory:
$theme_language_dir = get_template_directory() . '/languages';
$plugin_language_dir = plugin_dir_path( __FILE__ );
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.
This software is released under MIT license. See the LICENSE file for more information.