Tuesday, October 28, 2014

Translating Sitecore with Smartling

Few years ago, I wrote a blog post about Sitecore Language Translator module, which worked using Google / Bing translations API. It was probably one of the first Sitecore modules which allowed automated website translation (even though it could be used only for testing). Since then, I've tried out a lot of translation modules, as website translation is required in at least 90% (just my rough guesstimate) of the projects where Sitecore is used.

That's why I was really excited when a friend of mine, who works at New York-based startup called Smartling, has sent me the latest version of their Sitecore Connector which I'll briefly (just showing off the most interesting features) review in this blog post.

It all starts with standard Sitecore package that installs module items / files, and some configuration steps, like adding new connection string, etc. The module s using external database, but it will be probably replaced with xDB storage in the future versions.

Once you setup connection to Smartling by entering API key, the interesting part begins.

The module ships with a set of custom ribbons tabs. All content items get new ribbon tab which displays available target languages and translation status for each of them.

These tiny square buttons are not native UI controls, but they fit into the ribbon really well. The buttons trigger upload / download operations. Here's how the workflow looks like:

1) Website editors upload content simply clicking "Upload" button

2) Translators go to Smartling Dashboard and review / translate submitted entries

3) Once content is translated, Smartling will notify Sitecore that translation is ready. Sitecore will download translated content and update item fields

There is also a custom application for viewing submissions status, etc.

The most important thing I'd like to highlight is such called "context" translation. The issue with external translators is that they usually don't have access to the website and simply don't know whether their translation is correct for that particular spot.

Smartling solves this issue in rather unusual way: it will build a copy of the web page at their side, by crawling HTML and resources from the website. Take a look at the screenshots below to see the difference.

Here's how translators will usually see the content:

And here's the view with context translation enabled:

Looks like a real killer-feature, as for me :)

Translating Media
Yes, it supports media library! You can submit files to translation in the same way you submit content items. And it works with a hell of a lot of different file types, varying from Microsoft Office documents to Android application resource files.
I've only tried it once with PowerPoint presentation, and found that "context" feature is here as well, here's how translator's UI looks for .pptx files.

Wrapping up
I know that it was really short overview, but I hope you've enjoyed reading it. Thanks to the LaunchSitecore team for their great Sitecore playground and Smartling for providing the beta of the module.

And the last thing - want you new Sitecore module to be reviewed in this blog? DM me at @adoprog! Thanks!