Plugin Directory

Test out the new Plugin Directory and let us know what you think.
!This plugin hasn’t been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.


Gengo is a full featured plugin that provides multi-language blogging for WordPress 2.5+.

Known Issues

What happens if Javascript / XHTMLHTTP isn't available?

It won't work, sorry. A large portion of the admin code relies on these technologies to update information in the background. There's no way around this.

It doesn't change the page items like "Categories", "Links" etc

You need a specially internationalised theme for this to work. In essence, the theme has to use _e() and __() functions around its text and provide a localisation .mo file. Contact your theme vendor :-D

Previous and next links go to posts in other languages!

I know. WordPress won't let me get at those just yet. It's too much of a hassle to rewrite all that code, so you'll just have to live with it for the time being, I'm afraid. I've submitted a patch to the core which would allow this to happen, so hopefully it will make it into WordPress 2.1... It's at http://trac.wordpress.org/ticket/2415/ , where you can find out the status of the ticket and leave a comment to support its integration if you think it will be useful. You can also apply the patch yourself if you know what you're doing. As soon as it is patched, Gengo will take advantage, with no further modifications.

I entered synonyms for my categories but they only show up in certain places. In others, the default is always displayed.

This is because WordPress applies the filter that Gengo uses inconsistently. I've added a ticket and patch to the core which hopefully will make it into WordPess 2.1. You can check the status of this ticket and leave a comment to add your support if you think it's important at http://trac.wordpress.org/ticket/2466/ In the meantime, if you know what you're doing, you can patch your files yourself using the patch there. In 2.0.4 this should be a little better than before.

The translation page doesn't do anything

0.5 onwards provides some translation group management away from the write post screen. If you need more, let me know.

I get insert errors with MySQL 5.x

This happened in strict mode, and should be fixed in 0.8

The language tag is set incorrectly for feeds.

This should have been fixed from 0.81 onwards. However, for feeds for two or more languages, only the reader's first specified language is used, as there is no facility for specifying multiple languages for RSS. This will be updated if and when WordPress supports a feed that understands multiple languages.

My Save buttons disappear forever when changing the language of a post.

This seems to be a browser related problem, especially some versions of Firefox. Make sure the Firebug extension is not snooping XMLHTTP requests as this is known to cause problems. Upgrading to the latest version of your browser should fix the problem. Gengo is known to have problems on some installations of Firefox 1.5 but works seems to work successfully with Firefox

There are multiple UNIQUE indices on the wp_languages table.

This seems to be because of a bug in WordPress' supplied upgrade function dbdelta(). This should be fixed now.

I have another request / bug / optimisation

Please let me know in the forums at http://jamietalbot.com/wp-hacks/forum/ . I'll see what I can do to fix it.

Does Gengo work with WordPress x.x.x?

Gengo 2.5 only works with WordPress 2.5+. Version 0.9 works with WordPress 2.1/2.2, and 0.81 works with 2.0.1, but not 2.1.

I don't have an option to view in multiple languages

Reading in multiple languages is only supported for MySQL versions 4.1 and above. If your MySQL is lower than that, the option won't appear. You really should start bugging your host for a better MySQL version - WordPress 2.2 is only going to support MySQL 4.1+.

Template Tags

Gengo provides a number of template functions which are very similar to those in WordPress:

  • gengo_list_languages() - outputs a formatted lists of languages defined for this blog. Surround the call to this function with <ul> tags.
  • gengo_link_pages() - replacement for wp_link_pages().
  • gengo_next_posts_link() - replacement for next_posts_link().
  • gengo_previous_posts_link() - replacement for previous_posts_link().
  • gengo_snippet() - allows you to insert small, translated blocks of text.
  • gengo_trackback_url() - replaces trackback_url().
  • gengo_viewing_languages() - outputs a list of languages that the user is currently viewing, with js links to change priority.
  • gengo_available_languages() - outputs a list of languages that the user isn't reading in, but are also available.
  • gengo_language_set() - outputs save and reset to store reading options.
  • gengo_language_control() - combines the previous 3 functions.
  • gengo_home_url() - the home url appended with the current viewing language.
  • is_language() - tests we are currently viewing a language.
  • the_language() - outputs or returns the language for a page where only one language is being used. Outputs by default. To return the language as a string, call the_language(true).
  • the_language_code() - outputs or returns the current language code. Outputs by default. To return the code as a string, call the_language_code(true).
  • the_language_locale() - outputs or returns the locale for a post.
  • the_language_direction() - outputs rtl or ltr.
  • the_viewable_languages() - outputs or returns the languages the user is reading in.
  • the_viewable_codes() - outputs or returns the languages the user is reading in.
  • the_summaries() - outputs a div with a javascript switcher of all of the summaries for this post, or nothing.
  • the_translations() - outputs a list of translations for this post, or "No Translations".
  • the_translations_comments() - outputs a list of links to the comments sections of translations for this post. Use in comments.php.

Requires: 2.5 or higher
Compatible up to: 2.6-bleeding2
Last Updated: 9 years ago
Active Installs: 90+


0 out of 5 stars


Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.