Plugins and themes hosted on WordPress.org are, as of December 5th(-ish) 2015, translateable through translate.wordpress.org.
This opens up for a lot of interesting new interactions for existing, and potential new users, who may not be fluent in English, and have not yet picked up your plugin or theme for this reason alone.
So, your plugin is now up there, it can be translated…but how do you encourage your users to participate and translate the plugin?
I threw together a snippet for just this purpose, it may not be for everyone, but I do believe it’s a fairly safe starting point for most people.
The code requires some minor edits before you use it (technically only one edit is required, the text_domain one);
- $plugin_slug in the get_option and update_option calls should reflect your own plugins slug
- $text_domain needs to match your plugin slug (adn the langauge path ideally, just like your normal textdomain loading function)
The snippet follows the plugin guidelines for nag screens (dismissable and will stay dismissed, yay!), so you can use it as is, or you can modify it (it’s just a way to get the ball rolling really).
Caveats (before you say it’s broken);
- The code must be in your main plugin file, this is due to the get_plugin_data call being used
- The nag screen is per language, so if the user changes their language, they’ll get a new nag screen (possible yay, possible nay?)
- No nag screen is shown if a translation file actually exists for the current language, if so the nag screen is automatically disabled
I also added in text domains to the nag message, this is so you can utilize it even if you decide to remove the disable nag checker, and want to display a translated message to your users, one idea here is to show a “You’ve used this plugin for 1 week, please consider helping with translations” kind of message, or any other approach you feel is valid.