Keyboard Shortcuts in Translation Editor

Keyboard Shortcuts in Translation Editor

To speed up the translation process, you can use the following keyboard shortcuts in TranslatePress Editor.

CTRL ( ⌘ ) + S – Save translation for the currently editing stringsCTRL ( ⌘ ) + ALT + Z – Discard all changes for the currently editing strings CTRL ( ⌘ ) + ALT + → (Right Arrow) – Navigate to next string to translate CTRL ( ⌘ ) + ALT + ← (Left Arrow) – Navigate to previous string to translate

Translators can save time by using the keyboard to perform key actions instead of using the mouse cursor to click the corresponding action buttons.

CTRL ( ⌘ ) + S

Saving translations using this shortcut allows you to maintain your focus on the task instead of looking for the Save translation button.

CTRL ( ⌘ ) + ALT + Z

Discarding unwanted changes can be done much easier with this shortcut. This will Discard changes for the selected string and available meta information (such as title, alt or image source) in the sidebar, in all the languages.

CTRL ( ⌘ ) + ALT + ← (Left Arrow) CTRL ( ⌘ ) + ALT + → (Right Arrow)

Navigate to next or previous string of the page using these two commands.

Translate links

Translate links

Internal links are translated automatically by TranslatePress. All the page or post links within your site are translated to their version of the currently displayed language.
Custom internal links that are added directly to the HTML (without using PHP functions to construct them) are those added in the post content for example. These links can also be automatically translated by TP if the option Force language in custom links is set to Yes. This option is active by default and can be changed in Settings -> TranslatePress -> General tab.
What』s left are links to internal media such as images, documents or archive files, and external links. These can be translated manually from the Translation Editor interface.
Simply hover a link, click the button and translate the link. For each language you can either place the translated link or select a resource using Add Media button. This allows you to use the WordPress Media library to select an existing image, PDF or other files, or upload a new file.

In this screenshot we have translated the external link of the Wikipedia article in English, to the French version of the Wikipedia article.
Basically we have translated the href of that anchor to point to another url.

Settings

Settings

You can access the TranslatePress plugin settings in the administrator area in the menu under Settings -> TranslatePress.
It can also be accessed both from the frontend and administrator area from the Admin Bar under the newly created button under the Settings drop-down.

Default Language
Select the original language from the drop-down your website was written in.
By default the language is inherited from the WordPress language that you can setup on install or change from Settings -> General.
Translation Languages
Interface which allows you to select the languages you wish to make your website available in. You just have to select the language from the drop-down and click the Add button.
Actions you can perform on the languages:

edit the slug of the language that will appear in the urls of the site from the Slug input
make the language active for the visitors of the site or only available for translation for the administrator and the translator by checking or un-checking the Activate checkbox ( Feature available only with Extra Language add-on )
remove the language by clicking the Remove link ( this will not delete the existing translations from your data base )
rearrange the order of the languages with the drag drop interface. This will determine the order in the language switcher floater and shortcode.
placing a translated language on the first position will make it the first language to show to website visitors if option Use subdirectory for default language is active

Display languages in their native names
Select Yes if you want languages to display in their native names. Otherwise, they will be displayed in English.
Use subdirectory for default language
Select Yes if you want to add the language slug in the url for the default language. Example www.myhomepage.com/en/ instead of www.myhomepage.com when visitors are viewing the site on its default language.
By selecting Yes, the default language seen by website visitors will become the first one in the 「All Languages」 list. This means that you can make one of the translated languages be the language to display when visitors access your website without language encoding in the url ( such as www.myhomepage.com, without /en/ for example ).
Instead of directing the user to a pre-defined language, you can also redirect them to their preferred language using the Automatic Detection of User Language add-on.
Force language in custom links
Select Yes if you want to force custom links without language encoding to add the language slug in the url for the default language.
Google Translate
Enable or disable the automatic translation of the site with Google Translate. Existing translations will be not be affected.
Note: Not all languages support automatic translation. Please consult the supported languages list.
Language Switcher
You have three options to display language switchers on the site:

Shortcode ( Use the [language-switcher] shortcode on any page or widget. )
Menu item ( Go to Appearance -> Menus to add Language Switcher Languages in any menu. )
Floating language selection ( Have a floating dropdown following the user on every page. )

For all the available language switchers you have the following options:

Flags with Full Language Names (default)
Full Language Names
Short Language Names
Flags with Short Language Names
Only Flags

Here』s a short video on how to add and customize a language switcher on your WordPress site:

Translate Site
Clicking on this tab will open the Translation Editor in the frontend of the site where you can begin translating your site.
Advanced Settings
Find out about options that help fix certain issues with integrating TranslatePress into your project here.

Multilingual Search

Multilingual Search

TranslatePress supports multilingual search out of the box.
For your post to appear in the search it must first be visited in a language other than the default one, for the strings to be indexed. The post title and everything generated inside the post content are indexed. This includes page builder generated content for example.
After that just input the search terms in the default WordPress search box and the results will appear normally on your search results page.

You can also search for Woocommerce products using the Product Search Widget in the Woocommerce plugin.

Other Woocommerce search methods can be compatible.

Show opposite language in language switcher

Show opposite language in language switcher

How to Show Opposite Language in Language Switcher
Showing the opposite language in your language switcher comes in really handy in bilingual websites. You want to set it up so that you see the other language name or flag in the menu, not the current language.
There are two ways to achieve this, which we』ll detail below:
1. In your Menu Language Switcher
Let』s say you want to show just the opposite flag(s) in your menu.
This is possible with a bit of CSS.

go to Appearance -> Menus -> Language Switcher
select Opposite Language

Note:This option only works when there are exactly two languages, the default one and a translation one.
2. In your Shortcode Language Switcher and Floating Language Switcher

Another place where you might want to display the opposite flag(s) could be in the shortcode language switcher and the floting language switcher. You can achieve this by enabling the 「Show opposite language in the language switcher」 option from the Advanced tab. You have to scroll all the way down as this option is above the Custom language section.
 
 

 
Note: This option only works when there are exactly two languages, the default one and a translation one.

Advanced Settings

Advanced Settings

To access the Advanced Settings, navigate to WP Dashboard Settings -> TranslatePress, and choose the tab Advanced.

The option settings found here are mostly useful for fixing issues that may occur while integrating TranslatePress into your site.

Fix missing dynamic content
Disable dynamic translation
Fix spaces between HTML attributes
Fix broken HTML
Filter Gettext wrapping from post content and title
Filter Gettext wrapping from post meta
Automatically translate slugs
Exclude Gettext Strings
Exclude from dynamic translation
Exclude selectors from translation
Do not translate certain paths
Translate numbers and numerals
Date format
Custom languages

1. Fix missing dynamic content
May help fix missing content inserted using JavaScript, if the issue manifests only on translated pages.
It shows dynamically inserted content in original language for a moment before the translation request is finished.
2. Disable dynamic translation
It disables detection of strings displayed dynamically using JavaScript.
Strings loaded via a server side AJAX call will still be translated as well as the HTML page served from the server.
3. Fix spaces between HTML attributes
If the HTML of your theme and plugins contains bad formatting, this option might help. Specifically, it fixes cases where HTML attributes don』t have spaces between them.
Below is an example of case where this option helps. Observe missing space between id attribute and class attribute.

Activating this option may help fix missing or broken content from the HTML on translated pages. In general, the issues don』t manifest in the original language.
If the issue manifests on original language too, this option probably won』t help.
4. Fix broken HTML
General attempt to fix broken or missing HTML on translated pages.
Only try this if the 「Fix spaces between html attribute」 option did not solve the issue.
If your issue is still not solved, look for bad formatting in the missing HTML and correct it in the plugins/theme.
Common bad formatting includes duplicate attribute on same tag, like the class attribute in the following example:

5. Filter Gettext wrapping from post content and title
Filters gettext wrapping such as #!trpst#trp-gettext from all updated post content and post title. Does not affect previous post content.
Database backup is recommended before switching on.
6. Filter Gettext wrapping from post meta
Filters gettext wrapping such as #!trpst#trp-gettext from all updated post meta. Does not affect previous post meta.
Database backup is recommended before switching on.
7. Automatically translate slugs
Generate automatic translations of slugs for posts, pages and Custom Post Types.
Requires SEO Pack Add-on to be installed and activated.
8. Exclude Gettext Strings

Exclude these strings from being translated as Gettext strings. Leave the domain empty to take into account any gettext string.
Can still be translated as regular strings.
Can be useful for when a Gettext string is outputted wrapped in #trpst#trp-gettext.
Also can be used when a Gettext string is used as a key in options.
After entering the string and domain click Add button to include them in the list. Click Remove to remove them from list.
9. Exclude from dynamic translation

Do not dynamically translate strings that are found in html nodes matching these selectors.
Excludes all the children of HTML nodes matching these selectors from being translated using JavaScript.
These strings will still be translated on the server side if possible.
Any type of JS selectors can be used. It』s recommended to use a selector closer to the string being inserted that needs to be excluded.
After entering the selector click Add button to include them in the list. Click Remove to remove them from list.
10. Exclude selectors from translation

Do not translate strings that are found in html nodes matching these selectors.
Excludes all the children of HTML nodes matching these selectors from being translated.
Do not use not() selector or double attribute selector [attribute1][attribute2].
After entering the selector click Add button to include them in the list. Click Remove to remove them from list.
11. Do not translate certain paths

Choose what paths can be translated. This feature has two operation modes. You can either Exclude Paths From Translation or Translate Only Certain Paths.
After choosing the operation mode, enter the paths that you want to apply this setting to. For example, to exclude https://example.com/some/path you can either use the rule /some/path/ or /some/*.
Each rule should be on it』s own line. To exclude the homepage use the {{home}} tag.
When this option is activated, the plugin will not display the language switcher on the excluded or not included pages and their translations will not be accessible.
12. Translate numbers and numerals
If checked, will enable the translation of numbers (e.g. phone numbers) found in the text. This may be useful if you want to have different contact phone numbers for each translated language of your site.
13. Date format
Provides a way to customize the display format of date and time for each translated language. Uses the same format as WordPress date and time formatting. Please note this feature does not save the translated date and time text, it just enables finer customization.
14. Custom languages

 
This feature is useful when translating your site into a language not listed under General Settings.  It allows you to input one or more so called custom languages and have them visible on the front end and in the translation options. There is no limitation on the number of custom languages that you can input. However if you are using the free version of TranslatePress the number of translation languages is limited to two.

Translate only certain pages

Translate only certain pages

TranslatePress makes it really easy to translate only certain pages or exclude content from translation.
The Do not translate certain paths feature can be used to:

Exclude Paths From Translation – enables translation sitewide but lets you manually exclude entire posts, pages, cpts or products from translation.
Translate Only Certain Paths – disables translation sitewide but lets you manually enable translation for certain content.

This feature can be accessed by going to: Settings -> TranslatePress -> Advanced tab -> Exclude Strings -> Do not translate certain paths

Exclude Paths from Translation
With the URL paths feature, you can use the Exclude Paths From Translation option to exclude certain content from translation by entering its URL path. When adding a URL path, you have three options to target content:

Specific URL path – you can enter the full URL path to only exclude just that specific piece of content.
Wildcard – you can use a wildcard (*) to target multiple pieces of content that match. For example, entering /blog/* would target every piece of content that has /blog/ as its root, including /blog/post-1/, /blog/post-2/, etc.
Home tag – you can enter {{home}} to target your homepage.

TranslatePress will disable translation and hide the language switcher for any content that matches the URL paths that you enter.
Translate Only Certain Pages (Paths)
In addition to excluding content by its URL path, TranslatePress lets you only enable translation for specific content by its URL path using the Translation Only Certain Paths option. This is a good option if you only want to include translation on a few pages on your site and want to disable translation everywhere else.
You can use all the same URL path options that you get for excluding content. The only difference is that you』ll select Translate Only Certain Paths when adding the URL paths:

TranslatePress will enable translation and show the language switcher only for the content that matches the URL paths that you enter.

TranslatePress Documentation

TranslatePress Documentation

Welcome to TranslatePress knowledge base

Installation
Settings

Default Language
Translation Languages
Display language in it』s native name
Use subdirectory for default language
Force language in custom links
Language Switchers

Shortcode
Menu item
Floating language selection

Advanced Settings

Automatic Translation

Generate Google API key
Generate DeepL API key

Translation Editor

Edit visible text
Changing language
Search for a string
Translate SEO elements
Translation Blocks (translate multiple strings at once)
Image Translation
Link Translation
Keyboard shortcuts

Restrict by Language

Conditional Shortcode based on Language
Elementor Integration
Oxygen Builder Integration
WPBakery Integration

Addons

SEO Pack
Extra Languages
Translator Accounts
Browse as Role
Navigation Based on Language
Automatic User Language Detection
DeepL Automatic Translation

How To Translate

Astra Theme
Avada Theme
Beaver Builder sites
Brizy Page Builder
Charitable Plugin
Divi Sites (Theme & Page Builder)
Elementor Popups
The Core Theme by ThemeFuse
Visual Composer sites
WPZoom Theme
WooCommerce Product Table
Neve Theme
Oxygen Builder

Troubleshooting
Frequently Asked Questions
For Developers

Replace Default Flags
Add a custom language
Show opposite language in language switcher
Fix broken HTML
Change language name
Translate only certain pages
Change hreflang localization
Exclude a certain element or text from being translated
Disable Gettext Strings Translation
Clickable Language Switcher
Sites without pretty permalinks
Disable SQL errors notices
Delete all translations and plugin data

Elementor Integration

Elementor Integration

TranslatePress is fully compatible with Elementor, so if your website is built using Elementor, you can achieve the same functionality for widgets and sections directly from Elementor』s interface.
Restrict by Language
To use this option click on a widget or section and then go to the Advanced tab, where you』ll find the Restrict by Language option. Set the first option, Restrict element to language, to Yes and select the language in which you』d like to show the selected element.

The second option, Enable translation, is used when the restricted content is written in the default language, either directly by you or by an element like the Posts element. Keep in mind that the content has to be translated for it to be properly displayed in the restricted language.
Exclude from Language
Through Elementor an extra option is provided, Exclude from Language, through which you can make an element to be shown in all languages, except the one(s) that you selected.