Mostly about my amusement

Machine translation in WordPress

In 2006 I started playing with a translation plugin for WordPress. It was free and I liked the 1.0 version. When the author took the next version for purchase only (no longer free) I waited for version 4.0 and plunked down the money to obtain it.

The plugin ATPP works reasonably well. It does not do the actual translations (that would make for huge plugin!) instead it sends the data to Google or Babelfish per the configuration of that language.

Translation has led to some interesting comments from viewers. I get many hits from search engines which include the translated web pages. The viewers don’t select the translate button, they go straight to the translated page.It’s all machine translated so the basic gist is preserved but I’m told the grammar and flow is awful. Lily says the Chinese text reads like those vendors in Chinatown who are hawking things in English, and they don’t speak English. One commenter stated in Spanish that he’s never seen such bad language.

I just received version 5.01 of ATPP and it now adds the ability to check if the page is translated or not. With the inclusion of the following PHP code in your sidebar.php (or anywhere you’d like; I may change it) you can now warn your readers:

<?php if(function_exists(“tgInTranslatedPage”) && (tgInTranslatedPage())) { ?>
<!–skip translation–>
<div class=”trans-notice”>
<p>Please note: This page was originally written in English.</p>
<p>The text has been translated using an online service such as <a href=”http://www.google.com/translate_t”>Google</a> or <a href=”http://babelfish.yahoo.com/”>Babelfish</a>.</p>
<?php
$original=@$_SERVER[‘REQUEST_URI’];
?>
<p>The original post can be viewed <a href=”<?php bloginfo(‘url’);_e($original); ?>”>here</a>.</p>
</div>
<!–end skip translation–>
<br />
<?php } ?>

I wrapped it in a <div> so that I can style it easily. In my style.css file I added

.trans-notice {
font-family: “Trebuchet MS”, Georgia, Arial, serif;
font-size: 0.9em;
border:#ccc 1px solid;
background-color:#FAFAFA;
margin: 0 5px;
}
.trans-notice p {
margin: 7px;
}

This gives a warning in English that will hopefully explain why the text reads so poorly.