A plugin for WordPress that allow to translate any post type in another languages. Translate only the single view.
For this plugin, we did not impose an architecture defined for the translation engine, so we proposed an automatic or manual mode.
The automatic mode is rather aimed at the general public, because no change is necessary in the source code. The idea is that, when sailing on the German version of a page, WordPress retrieves data from the original page, and our plugin is automatically injected the contents of German 3 fields, title, content and extract . This means that the German version in automatic mode will keep, if your theme display it, publication date, comments, author, tags and categories of the original post. This mode is quite sufficient to use the basic translation plugin on content types native, it is compatible to 99% on the existing WordPress installations.
This second mode is much more powerful than the first. The manual mode does not modify any data from the initial query of WordPress, so no modification is made on the theme, your content will not even be translated! To switch language, we were inspired by functions of WordPress Mu allowing switch between blogs, either
And we have created 2 functions
The first function
switch_to_language() toggles the content in the translated version, while the second function
restore_original_language() allow to restore the original language of the content.
<?php the_title(); // Title in English switch_to_language(); the_title(); // Title in French restore_original_language(); the_title(); // Title in English ?>
This pair of functions allows developers to be extremely precise about which fields to translate. This mode in my opinion, should be widely preferred because it is clean, it does not interact with the original application of WordPress. Nevertheless, there are some flaws such as:
These are mainly defects on the SEO aspect, and indeed on this first version of the plugin that we have worked the functional aspect. We rely on community feedback to improve the plugin ...