We'll create fresh WordPress site with WP Base Translate installed. You have 20 minutes to test the plugin after that site we'll be deleted.
Most of the translation plugins are built in very complicated and messy way…
That’s why with WP_BASE_TRANSLATE you can create, edit or remove new languages in just a few clicks!
When the plugin is installed it performs the following things:
How to add a new language?
The languages are registered in your database as Posts from Language CPT.
So to create a new language just go to Languages > Add new > Enter name (as title of the post) > Choose the icon of the language (optional as featured image).
That’s it!
How to translate?
As we mentioned above you can translate every post from a CPT in your WordPress installation.
To achieve that the plugin is registering a meta box called Available Languages, which represents the list of all available languages (as active buttons) on which you can translate the specific page.
Before you can start translating, you have to choose the current language of the page from the Page Language dropdown box. That will tell the plugin which is the parent language and connect the translated versions with it.
Once you do that, you just have to select the language on which you want to see your page and start translate the content in it.
That’s all!
How it works on the front?
WP_BASE_TRANSLATE is meant to be easy, so if you currently have a language menu option connected on your website it’ll work with it.
The only requirement for the plugin to work properly is to add lang parameter in your page URL.
Example: http://geronikolov.com/blog —> http://geronikolov.com/blog?lang=bg (that will call the Blog page translated in Bulgarian)
What happens if I don’t have that language implementation in my site?
WP_BASE_TRANSLATE gives you a simple language dropdown menu, which can be placed everywhere you want it!
Do add to your Posts, Pages or Code, just use this shortcode – [language_menu]
How to build the Language listing menu?
Since the plugin doesn’t provide a hardcoded menu, it provides a very flexible back-end method for implementing it with your website.
The core of the plugin gives you a function called get_registered_languages() which returns an Array of Objects which represent the registered Language objects.
Every language object has:
The wpbt_get_registered_languages() function can be found in the functions.php file positioned in the root folder of the plugin.
Functions list: functions.php
wpbt_get_registered_languages()
wpbt_get_translation_id()
How to contribute?
You just have to clone the repository and build!
If you want to extend the WP_BASE_TRANSLATE Core make sure to add small comment block above each of your functions.
The code block should look like:
/* * Function name: example_function * Function arguments: $post_id [ INT ] * Function purpose: This function is just for an example. */ function example_function( $post_id ) { return "John Snow is alive!"; }