GP Machine Translate

Description

A machine translate plugin for GlotPress as a WordPress plugin.

Four machine translation providers are supported (though only one at a time):

  • Google Translate (pay per character)
  • Microsoft Translator (free tier available)
  • translte.org (free)
  • Yandex.Translate (free but requires Yandex account)

Note: This plugin assumes the source language is English as support for automated translation from other source languages is limited.

Configuration

Once you have installed GP Machine Translate, go to your WordPress admin screen and select “Settings > GP Machine Translate”.

You will have three Fields to configure:

1. Translation Provider
2. Global API Key
3. Client ID

You can select from four providers with some requiring the additional fields to be filled in.

Google

Google Translate requires an API key to function, to do this you must register with Google and provide a payment method.

  • Login/signup your Google developers console
  • Select “APIs & auth”->Credentials.
  • Create a new “Public API access” key.

The public access key is what you will use to configure GP Machine Translate with, either for all users or a specific user.

Microsoft Translator

Microsoft Translator requires an API key to function, to do this you must register with Microsoft. Microsoft does have a free tier for translation, limited to 2 million characters a month so you do not need to provide payment details for this tier.

Microsoft has a walk through on how to subscribe to the Translator service here:

https://www.microsoft.com/en-us/translator/getstarted.aspx

You will need both the client secret and client id for it to function with GP Machine Translate.

transltr.org

transltr.org is a completely free service and does not require any API key or other configuration. Simply select it as the desired translation service in the GP Machine Translate settings page and you’re off to the races.

This service operates via unsecured HTTP, while that’s probably not a concern, it should be noted for your reference.

Yandex.Translate

Yandex.Translate is a free service, however you must sign up to their service and adhere to their terms of service. This includes providing a link back to the service for translated text.

One other thing to note with Yandex.Translate is that when you sign up, you get a Yandex e-mail address and other services they provide and there is no option to opt out of them.

To get an API key, follow the instructions here:

https://tech.yandex.com/translate/

Powered by Yandex.Translate.

Setting the API key

To set the API key for all users, go to the WordPress Dashboard, then Settings, then “GP Machine Translate” and set the API key (and Client ID if required).

To set if for a specific user, go to the users profile and scroll down to the “GP Machine Translate” section and set the API key (and Client ID if required).

Note, if both a global and user API key are set, the user API key will override the global API key.

Supported Languages by Provider

Google Translate       Microsoft Translator   transltr.org           Yandex.Translate
---------------------  ---------------------  ---------------------  ---------------------
Afrikaans              Afrikaans              Arabic                 Catalan
Albanian               Arabic                 Bosnian                Czech
Arabic                 Bosnian                Bulgarian              Danish
Armenian               Bulgarian              Catalan                Dutch
Azerbaijani            Catalan                Croatian               Estonian
Basque                 Croatian               Czech                  Finnish
Bosnian                Czech                  Danish                 French (France)
Bulgarian              Danish                 Dutch                  German
Catalan                Dutch                  Estonian               Greek
Croatian               Estonian               Finnish                Hungarian
Czech                  Finnish                French (France)        Italian
Danish                 French (France)        German                 Latvian
Dutch                  German                 Greek                  Lithuanian
English                Greek                  Hebrew                 Macedonian
Esperanto              Hebrew                 Hindi                  Norwegian
Estonian               Hindi                  Hungarian              Portuguese (Portugal)
Finnish                Hungarian              Indonesian             Russian
French (France)        Indonesian             Italian                Slovak
Galician               Italian                Japanese               Slovenian
Georgian               Japanese               Korean                 Spanish (Spain)
German                 Klingon                Latvian                Swedish
Greek                  Korean                 Lithuanian             Turkish
Gujarati               Latvian                Malay                  Ukrainian
Hausa                  Lithuanian             Norwegian
Hebrew                 Malay                  Persian
Hindi                  Norwegian              Polish
Hungarian              Persian                Portuguese (Portugal)
Icelandic              Polish                 Romanian
Indonesian             Portuguese (Portugal)  Russian
Irish                  Romanian               Serbian
Italian                Russian                Slovak
Japanese               Serbian                Slovenian
Javanese               Slovak                 Spanish (Spain)
Kannada                Slovenian              Swahili
Kazakh                 Spanish (Spain)        Swedish
Khmer                  Swahili                Thai
Korean                 Swedish                Turkish
Lao                    Thai                   Ukrainian
Latin                  Turkish                Urdu
Latvian                Ukrainian              Vietnamese
Lithuanian             Urdu                   Welsh
Macedonian             Vietnamese             Yiddish
Malagasy               Welsh
Malay
Malayalam
Maori
Marathi
Mongolian
Nepali
Norwegian
Norwegian (Bokmål)
Norwegian (Nynorsk)
Persian
Polish
Portuguese (Portugal)
Punjabi
Romanian
Russian
Scottish Gaelic
Serbian
Sinhala
Slovak
Slovenian
Somali
Spanish (Spain)
Sundanese
Swahili
Swedish
Tagalog
Tajik
Tamil
Telugu
Thai
Turkish
Ukrainian
Urdu
Uzbek
Vietnamese
Welsh
Yiddish
Yoruba

Installation

Install from the WordPress plugin directory.

FAQ

Installation Instructions

Install from the WordPress plugin directory.

TBD

TBD

Reviews

Does what is should

This is a most wanted function for GlotPress – I am glad someone implemented it! Easy to use, either in batch or individually.

Read all 2 reviews

Contributors & Developers

“GP Machine Translate” is open source software. The following people have contributed to this plugin.

Contributors

“GP Machine Translate” has been translated into 3 locales. Thank you to the translators for their contributions.

Translate “GP Machine Translate” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.0

  • Release date: November 15, 2016
  • Added timeout for batch translations to help prevent the white screen of death.
  • Added translation domain and translation support.
  • Fixed support for translation engines that don’t need a key.

0.9.5

  • Release date: October 28, 2016
  • Multiple fixes related to proper detection of support locales and bulk translation.

0.9

  • Release date: October 21, 2016
  • Fix Google Translate not recognizing supported locales.

0.8

  • Release date: September 1, 2016
  • Extract all Google logic from the code to allow for multiple translation services to be supported.
  • Added Microsoft Translator.
  • Added Yandex.Translate.
  • Added transltr.org.

0.7

  • Release date: January 6, 2016
  • Documentation update.

0.6

  • Release date: January 6, 2016
  • Move the WP profile and settings hooks to before we check for the Google API key, otherwise you can never add one.
  • Replace gp_redirect() with wp_redirect().
  • Fixed incorrect function name wp_get_current_user_id() to be get_current_user_id();
  • Added check for no strings to translate and return a better error than a Google API error.
  • Updated the error id in WP_Error() call.Removed unused code from plugin.

0.5

  • Release date: December 14, 2015
  • Initial release.