Let's suppose an important client comes to you with a request: "Make my webshop multi-lingual!". What do you do? Start crawling the entire shop, hoping to discover all the content? You could do that, but you'll soon run out of quotas, or receiving complaining phonecalls from your potential clients' admin guys, whichever comes first.
Instead, take a step back, and start asking questions: "what do I see?", "where did this come from?", "should I ingest all this?", etc. Let's see a few pointers translating e-commerce sites (we would love to give you a step-by-step tutorial, but each of the myriad of available platforms out there is different - though they all share some underlying characteristics).
First and foremost, get to know the target site. To quote Sun Tzu, "If you know the enemy and know yourself, you need not fear the result of a hundred battles. If you know yourself but not the enemy, for every victory gained you will also suffer a defeat. If you know neither the enemy nor yourself, you will succumb in every battle." (The Art Of War, chapter III, verse 18).
To get to know your target, spend some time on the site first, before jumping in with Easyling: find something you like, put it in your cart, and head to the checkout (just stop before actually paying, unless you really like the thing). Be sure to try the search and the filters, while looking at your browser's address bar - if you see a "?" followed by key-value pairs, make note of them, if you see the path extending ("[...]/cars/us/muscle/chevrolet/impala/1967/[...]"), note how adding/removing/changing filters affects it. Flip through pages of goods - again, are there parameters (? followed by key-value pairs) or path extensions ("[...]/2", "/3", etc)? Using the developers' console (summoned by F12, usually), disable Javascript, and see what content is now missing from the site (never mind the messed-up layout, just look if everything is there or something is now missing) - if something is missing, find out where it comes from (at this point, you will likely have to enlist help from an expert, unless you are one - either you get it from in-house, or we can help). Note if what looks like type is actually text in a picture. Use the X-proxy (Ctrl/Cmd+clicking the preview, or replacing the -p with -x in the address bar) if a project is already up to see what you can grab without actually grabbing it. Find out where the payment view redirects the browser (is it hard-coded to direct you to the original site, or is it just sending you to the "home"?). If needed, ask your web-/IT-team to give you a hand (or take advantage of our professional services / project setup service)!
Once you know the enemy, it's time to put that knowledge to use.
Next is the project setup phase: you make all the necessary modifications and tweaks before your first crawl to avoid clutter in the page list. To keep quoting Sun Tzu, "Now the general who wins a battle makes many calculations in his temple ere the battle is fought. The general who loses a battle makes but few calculations beforehand. Thus do many calculations lead to victory, and few calculations to defeat: how much more no calculation at all! It is by attention to this point that I can foresee who is likely to win or lose." (The Art Of War, chapter I, verse 26).
In the previous step, you made notes on how the address changed as you played with the filters - this will be your first target. If you saw parameters being altered in the address bar (a question mark, followed by key-value pairs, separated by ampersands), you'll want to enter them into the "Ignored query parameters" field on the Content page; if it were path elements, you'll want to find a pattern to them, and enter an example into the "Group pages" field in the Advanced Settings menu. While you're here, you can also enter the Javascript search paths, if you (or your assistants/helpers/us) identified any, to grab dynamic content.
This phase can take almost as long, or even longer, than the previous one, and you may have to go back and test your settings again and again, using the X-proxy. Time spent here, however, pays off tenfold: you will grab all the content with fewer scans, you will have less clutter, and you will gain valuable experience for the next project.
To continue our metaphors of war, now the plans are laid, and it's time for battle!
Besides dealing with the URL structure, don't forget to check content structure as well. Database-heavy sites (such as product catalogues, e-commerce sites) can yield to extremely high total word count, while it could be tamed with the proper usages of Regular Expressions. Check for the HTML structure around prices, sizes, etc. to set up translation invariant elements. Make sure to do this after processing a couple of pages, but well before starting the site-wide crawling.
To charge into battle, start the crawl on the project. This is fairly straightforward, with one important point to make: never start an unlimited crawl (unless you happen to know that it will reach an end in finite time)! Limit your crawl to a few thousand pages at once, and advance in waves until you feel confident you have everything. Keep in mind that in most webshops, there will be more pages than we can ever crawl - the platform it runs on will always have more combinations of filters, searches, criteria, etc, and the combinations of these are, for all intents and purposes, limitless.
Now that the scan is running, it's only a matter of time, long as it may be. If the crawl takes more inordinately long, though, try to abort it - you may have missed a parameter or a hidden value somewhere...
After this point, the workflow goes back to the normal export-translate-import-enjoy mold. There is one more thing to do before you sign off on it, though: verify that the carts remain when you close your browser, and that the payment area redirects to the translated site when payment is finished or cancelled (you may have to advise the client to make modifications on this point - we are available for false flag operations as part of our sales support service!).
Also, as powerful as Easyling may be, it can convert prices for viewing, but not for payment. If this is desired, it can be sorted out using JavaScript, even fetching live currency conversion rate if needed.
Finally, maintenance: with the turnover rate of webshops, you may want to take advantage of our Auto-Pre-Translation feature: by setting up a translation memory of your translations, you can have it automatically leveraged as new content rolls in, and export only what's left after the TM application, cutting down on workload, turnaround time, and bleed-through.
Last but not least, don't forget to check the SSL (https) status of the site; if it is used on the original site, a certificate will be required for the translated sites as well.
As I said before, though the basic plan remains the same, "No plan of battle survives first contact with the enemy." (Helmut von Moltke the Elder, cca. 1869) - the exact steps you'll take will be different for every shop you encounter and engage. But rest assured, our forces will be available to assist you every step of the way!
0 Comments