This tutorial is the TranslatePress setup tutorial, if you haven't installed it yet, click to download itTranslatePress BusinessPlugin. TranslatePress (TP for short) is the best translation plugin in our mind, and it is also one of the few plugins that we have found that can use the auto-translation function in China with SEO effect and support manual modification of translation.
Ability to insert a language switcher in the navigation bar, Elementor compatible, ability to set any content to show/hide in certain languages in the ele edit screen.English version of this siteAlso created using TranslatePress Business.
TranslatePress setup tutorial
Click "Settings" under "Translation Sites" on the top bar of the website to enter the settings screen.
First enter the "Additional Functions" setting. active (open) ↓ 4 functions below, other functions please decide whether to open according to the actual situation.
Seo Pack.Enable to make the translated language SEO effective. You can translate SEO titles, SEO descriptions, URLs, set HTML lang attributes, and SEO support for facebook and twitter social graph information for small languages. Make small languages SEO effective and get better rankings. ClickView Details. Multilingual sitemap supports all popular SEO plugins: Yoast SEO, Rank Math, AIOSEO, SEOPress.
Multiple Languages.It is recommended to enable it to add multiple translation languages, without it you can only add one.
DeepL Automatic Translation.After enabling it, you can use DeepL automatic translation function, which is available in China and not blocked. It is called neural translation, translation accuracy Google Translate high. Mainland credit cards can not be registered to open DeepL api, you need to go to Taobao to spend about 39 to buy a free api valid for life. if you use Google automatic translation, this function does not need to open.
Browse As User Role.It is recommended to enable the ability to switch user identities in the manual translation screen so that dynamic page content based on logged in/unlogged out status can be viewed and translated.
Automatic user language detection.Enable to pop up a language selection box based on the visitor's IP address, browser language, and let the visitor choose which language version page to enter. It can also be set to automatically go to the corresponding language version of the page based on the visitor's IP address and browser language (without having to select the language first).
Next, go to the "General" section and set up the settings as shown below.
1 is the default language of the site, 2 select the new language you want to add and press 3 to add the language.
Formality is the setting DeepL translationd whether the language is on the colloquial or formal side, click to view theDetailed explanation. The default is Default, leave it alone.
Set ↓ as shown below and remember to click "Save Changes".
The "Advanced" section can modify some compatibility settings and enhance the translation function, if you encounter problems in the use of the process or want to implement some additional features, come to this section to see. By default, it is not recommended to modify the settings here, we have used this plug-in in several sites without any problems. So far the plug-in has been set up and can be used normally. For more details on the settings, pleaseView the official TP documentationIf you need to translate manually or correct the translation results manually, please see the tutorial below.
Exclude certain pages and content from being automatically translated
Enable automatic translation
Go to the "Automatic Translation" section, select Enable Automatic Translation and choose the translation engine. Each character is translated only once and then permanently stored in the database. One Chinese character = 2 characters, one English letter = 1 character (e.g. apple word counts as 5 characters), invisible characters such as space, tab, line break, etc. are also counted as characters. 500,000 characters ≈ 200,000 Chinese characters.
Fully automatic translation can be chosen from DeepL or Google Translate API. DeepL is easier to use, with higher translation accuracy, lower cost and available in mainland China, but the disadvantage is that the supported languages are much less. Google Translate needs to bind credit card for registration trouble and can't control the spending amount, which can't be used in mainland China, the only advantage is that it supports many languages.
If you set more than 4 languages, the number of words in the article is easy to exceed the translation quota, toNote the remaining amount of free translation characters.
DeepL automatic translation
If the server is in the mainland, you can only choose DeepL translation (Google is blocked), fill in the DeepL API Key point to save after the site will automatically begin to translate, after 2-3 minutes to go to the foreground to switch to other languages can see the page content has been translated. If your site itself is good weight, after 10 minutes or so multilingual version will be indexed by search engines, can be searched in Google / Baidu.
Note: DeepL translations are only supported26 languagesThe Arabic language is not supported,Traditional Chinese(Google Translate support), etc.
DeepL free API Key canFree registration with a foreign credit cardYou can also buy a lifetime valid DeepL API Free in Taobao for about 35. Note: DeepL now wind control has become strict, the number of sealed powerful, the business said only 30 days warranty, 30 days after the seal is not responsible, need to buy again. We bought a few temporarily not blocked number, has been stable use.
Note: Free API Key is free for the first 500,000 characters per month (250,000 Chinese characters) and the credit will be automatically restored the next month.
If you can't register free API Key, the website content is also much recommended Taobao to buy a month Pro API Key (unlimited translation words) to translate the entire website. Then switch to the following tutorials Yandex translation tutorials to manually translate the new content (not much new content, not much language translation is also quite fast).
Ask customer service before you shoot! Make it clear that you want to buy Deepl api free account, directly send the account password to your own login, view api kind of account. Have money to buy Pro API is also OK.
After you get the API, go to the "Auto-translation" tab, select "Yes" to enable auto-translation, select "DeepL", select "Pro " or "Free", and fill in the API in "DeepL API Key".
Using the DeepL translation API sometimes results in the Languages without formality error shown below, indicating that certain languages are not supported (this issue does not occur with the Google Translate API). It means that these languages are not supported by DeepL translationformal/informal functionsThis function sets whether the translated language is more colloquial or more formal.
Click "recheck supported languages" to detect the general prompt will disappear, if the prompt does not disappear, just ignore it. If you really want to eliminate this prompt, and the server is in foreign countries, it is recommended to use Google Translate API instead.
WeAsked the official customer serviceThe languages without formality does not affect the automatic translation, it is irrelevant, as long as all the languages in the general settings to keep the default selection "Default" on the line.
Google Auto Translate
If the web server is abroad, you can use Google Translate, which supports more than 80 languages, click intoFree Google Translate API Registration Tutorial. Google Translate is free for the first 500,000 characters per month, and charges $20 per million characters after that, clickView billing rates. The first 3 months are free for new registrants, so feel free to toss in the towel.
Google translation api registration is very troublesome, need to bind the settlement account (so that more than the amount can be deducted). After opening Google Translate API must set up a HTTP referrer as well as quota and consumption threshold reminders to keep track of consumption to avoid being charged a large amount. Diamo recommends that newcomers use DeepL API Free is more convenient.
After registering Google Translate API, go to the "Automatic translation" tab, select "Yes" to enable automatic translation, select "Google Translate v2", and fill in the "Google Translate API key Fill in the "Google Translate API key" and enter the Google Translate API registered above.
If the API is correct after saving, the green flag in the red box below will be displayed. If the API error is prompted, click "Test API Credentials" to see what is wrong with the API and then correct it yourself.
Blocking crawlers.On-demand settings, the crawler will trigger automatic translation if not enabled, which helps to speed up the translation of other languages.
Other settings according to the picture. If you use Rank Math, Yoast and other plugins to remove the URL prefix/base from the Woocommerce product listings and details pages, be sure not to check Automatically Translate Slugs! Otherwise, the list page and product details page will not open. For specific reasons, please move to the following "Common problems and solutions".
Yandex automatic translation
In addition to using the API for automatic translation, you can also install the freeAutomatic Translate Addon For TranslatePressAuxiliary plug-in implementationSemi-automaticTranslation. This plugin will be available in the TranslatePressManual translationAn automatic translation button has been added to the interface, which can be used after clickingYandexAutomatically translates the current page so that there is no need to translate each entry manually, which is very convenient.
Note: This plug-in will not translate fully automatically, you must go into the manual translation interface and click the automatic translation button to translate the entire page automatically. Each page and each language needs to be translated in this way, remember to save it first after each translation.
If you can't get Google and DeepL automatic translation API, using this plugin semi-automatic translation is also a good choice. It doesn't take much time if there are not many website pages.
How to manually translate/correct translations
The translation of professional terms, company/brand names, etc. is generally not very accurate, especially for English to Chinese translation. It is recommended to enter the manual translation interface to check the translation results after the automatic translation is completed, and correct the translation of the wrong places.
The length of text varies from language to language, and languages with long words such as French may be typographically incorrect because the content is too long. It is necessary to check the display effect of each language after translation, and manually correct the translation to shorten the content in the wrong language.
Click "Translate Website" at the top of the website to enter the translation interface.
Enter the translation page and click on the content to be translated, the translation interface will pop up on the left, directly modify the translation and click on save. (Click the picture below to enlarge for clarity)
If you want to translate Seo titles, meta descriptions and so on, directly click on the red box to select the content.
Enter the desired translation result in the other languages box and click "Save Translation" at the top to save it.
Click on "String Translation" at the bottom (in English, it shows String...) Go toWebsite translationInterface. As mentioned above, if you remove the URL prefix /base from the product list page and the detail page, you cannot translate the URL, otherwise the page will not open and display 404.
If you have not modified the URL structure and want to translate/modify the URL translation result manually, refer to the following figure. Tap 1 to select the content to be translated, tap 2 to "edit" the translation content, enter the translation result in 3, and tap 4 to save.
Common problems & solutions.
For more tutorials and FAQ suggestions check outOfficial DocumentsIf you can't find the answer in the document, go toOfficial ForumFind the answer to the corresponding question, or post a question, customer service will respond within 1-2 days.
1- Product list page, detail page can not be opened
If the romve base function of Rank Math, Yoast and other plugins are used to modify the category URLs and TranslatePress is enabled to auto-translate the url slug, it will result in 404 being displayed on the product listing page and detail page in the translated language.
This is a bug, I contacted the customer service of 2 plugins and they said they are not compatible. The solution is to disable the automatic translation of the url by leaving the "Settings" > "Automatically Translate" > "Automatically Translate Slugs" unchecked in TP.
If the product list page/detail page links are not restored to the default language after disabling the translation, it may be because the old translation has been translated before and saved. You need to enter the manual translation page, click "String Translation" or "String Translation" at the bottom left corner, delete the translation results of the product listing page and detail page title in other languages and then click Save. After clearing the cache, refresh the front page and it should be displayed normally.
The impact of not translating Url on SEO is negligible and basically negligible. Chinese website URLs are basically in Pinyin or English, and many English website images or page URLs are named with numbers or letters, which basically do not affect SEO.
Update April 10, 2022: The new version of Rank Math 22.214.171.124 is compatible with WPML's auto-translation url slug feature, which is still not TP compatible, but sees a bit of light. I've sent this issue back to Rank Math and they replied that they are already fixing it.
2- Failure of automatic translation, slow translation
After entering the api in "auto-translation", the translation will usually start automatically immediately, and the number of characters translated today will be shown there. If some languages are still not translated after several hours, it is because the website is not visited and no translation is triggered.
I asked the official customer support and the picture below is Alex's response. Simply put, someone needs to visit the front-end multilingual page to trigger the automatic translation, for example, when a visitor visits the German version of the home page of your website, the backend will start to automatically translate the home page into German. If no one has been visiting the German version of the homepage, the homepage will not be automatically translated into German.
If your website is slow to translate, you can open the browser incognito mode and visit the front-end multilingual version of the website page by page to trigger automatic translation.
If the number of characters translated today keeps showing 0, there may be problems with the API (such as exceeding the translation quota) or with the website, so check it out yourself.
Share a case: a customer feedback that the automatic translation suddenly failed. We use TP Translator plugin deeply on many sites and it works normally, the first feeling is that there is something wrong with his translation key.
Go to TP Translator plugin Settings>Automatic Translation, click that test button under Key, and found that it is a problem with Google Translate key.
3- TipsLanguages without formality
We are on topDeepL automatic translationThis problem is explained in the settings, and the prompt appears because some of the translated languages do not support DeppL translationformal/informal functions (Google Translate API does not have this problem). These hints do not affect the automatic translation function, only whether the translation results are on the colloquial or formal side.
Clicking on the "Recheck supported languages" test usually makes the prompt disappear, but if the prompt doesn't disappear, it's okay to ignore it. WeAsked the official customer serviceThis feature does not affect the automatic translation, it is irrelevant, as long as all the languages in the general settings to keep the default selection "Default" on the ↓. If you mind, use Google Translate API instead (only available on servers outside the mainland).
One user gave feedback that his site was prompted with the Languages without formality issue ↓, but it still translated automatically, but the translation was slow (the site needed visitors to visit the corresponding multilingual page to trigger the translation). We have a client's website with Japanese language also prompting this error, also able to automatically translate.
4- Website default language cannot be changed (fixed) Before TranslatePress added a new "Preferred User Language" feature, which will cause "Site Language" to follow "User Language" and cannot be changed. Chinese sites are not affected, English sites are affected. User language↓ Resulting in site language ↓ cannot be changed
Follow-up: We contacted the official team for feedback on this bug, and they have fixed the issue in version 2.4.3.
5- Elementor editing page prompts 404 or keeps flashing
If automatic user language detection is enabledandUsing the auto-jump ↓ below and your language is different from the editor language will cause the Elementor editor page to automatically jump to the corresponding language version. However, the Elementor editor interface has only one language and cannot be adjusted, so it keeps jumping (shrinking) or prompting that it cannot be opened.
Just temporarily switch to the pop-up window below asking if you want to jump, and then just choose the default language of the site. Or just turn off the automatic user language detection feature.
2023.03.27: We have sent this bug back to TranslatePress team and hope to fix it as soon as possible.
6- Translation button is not displayed
A customer bought the plugin feedback top translation button ↓ does not show, the first time we encountered this problem, we are exceptionally excited. This plug-in function has been very stable, the first feeling is a plug-in conflict or something.
Enter the customer's background and found that the Gtranslate translation plug-in is installed at the same time, and the button is displayed normally after directly deleting Gtranslate (disabled no, have to delete). However, I can not save the plugin settings, prompting the following figure ↓ error.
Wordfence Firewall can save TranslatePress plugin settings after entering learning mode, problem solved.
7- Misplaced page layout in translated languages
Different languages have different lengths of the same word, for example, French words are longer than English, and the interface layout may be wrong after switching from English to French.
The top ↑ is the English header, the bottom ↓ is the French header, the navigation is too long into 2 lines.
Solution: Try to delete the content that can be removed to make the page more concise. If you can't delete it, change to a shorter translation, for example, the English INQUIRY button on the right side of the blue button above is too long after translation into French, we can use Google Translate to translate INQUIRY into enquête, which greatly reduces the length.
Go to the manual translation screen of the website, change the corresponding French translation to enquête and click Save.
Then turn Contact Us into Contact to shorten the length after translation into French, the French header ↓ display returns to normal.
8- Modify translation content
Automatic translation is really full of errors, must check the translation of each page, at least check the company name, product name and so on have no translation errors. One customer had high requirements for translation, checking every word in every language and giving us a summary to revise. Share the experience of revising the translation.
Use the top button Enter the translation interface, sometimes the network may be bad card, the top has been spinning circles, you need to wait a few seconds before you can select the content translation. If you wait or not try to close the page and reopen the translation interface.
Website page browser tag display SEO title If you can't find it, enter meta in the translation string box to find it. If you can not find, or many pages need to be changed in bulk, you can use the database tool search replacement toolBetter Search ReplaceReplacements that are fast and good.
Note: Only tables that contain the beginning of _trp_ will hold translation result data, check all tables that contain the beginning of _trp_.
Remember to check the "Run as dry run", the replacement does not take effect, just to see if the replacement can be successful or so.
If the test can be replaced successfully, uncheck the following figure "Run as dry run", click "Run search/replace" to start the official replacement of the content.
The following content will be displayed at the top of the successful replacement.
5- How to display language-based content using TranslatePress conditional short codes
The option to display content based on language is available in the Elementor widget advanced options (below).
If the page content is not created by Elementor, you can use conditional shortcodes to control the content to be displayed only in certain languages. For example, the following text content and images will only appear in the English version and will not be displayed in non-English versions such as Chinese.
This content is only displayed on the English language page
Extension: If you want to modify the page layout in some languages separately, you can add CSS and use the above 2 methods to set the CSS code to be displayed only in some languages. For example, if you want to change the default right-to-left layout of the Arabic page content, you can add code to the Arabic page control if you want to change the content of some sections to be left-aligned.
10- Exclude certain content from being translated
Check the official methodThis article, which is very detailed. If some content is already translated, for example, say inquiry/form notification emails, you need to manually remove the translation by clickingView specific methods.