PluginProbe
Translate and Go multilingual – Automatic AI translation – wpLingua / 2.14.3
Translate and Go multilingual – Automatic AI translation – wpLingua v2.14.3
2.16.7 2.16.6 2.16.5 2.16.4 2.16.3 2.16.2 2.16.1 2.16.0 2.15.2 2.15.1 2.15.0 2.14.3 2.14.2 2.14.1 2.14.0 2.13.1 2.13.0 2.12.3 2.12.2 2.12.1 trunk 1.0.3 1.0.4 1.0.5 1.1.0 All 112 releases
wplingua / readme.txt

readme.txt in Translate and Go multilingual – Automatic AI translation – wpLingua 2.14.3, at readme.txt

315 lines 19.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 === wpLingua - Automatic translation - Translate and make website multilingual ===
2 Contributors: wpr0ck, lyly13, pierrelannoy, wplingua
3 Donate link: https://wplingua.com/
4 Tags: translate, translation, multilingual, localization, language
5 Requires at least: 6.0
6 Tested up to: 7.0
7 Stable tag: 2.14.3
8 Requires PHP: 7.4
9 License: GPLv2 or later
10 License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
12 Make your websites multilingual and translate them automatically: no word limits, editable translations, SEO-friendly, no coding knowledge needed
13
14 == Description ==
15
16 **An all-in-one solution that makes your websites multilingual and translate them automatically, without word limits.**
17
18 ✓ One free first language for non-commercial websites
19 ✓ Automatic translation API connector
20 ✓ Unlimited number of translated words
21 ✓ SEO-friendly: indexing of translated pages in search engines
22 ✓ On-page visual editor for editing translations
23 ✓ Customizable language switcher
24 ✓ Translate website URLs
25 ✓ Making XML sitemaps automatically multilingual
26 ✓ No coding knowledge needed
27 ✓ Self-hosted data
28 ✓ Open source, find [wpLingua on GitHub](https://github.com/julien-jacob/wplingua)
29 ✓ And more!
30
31 ### 🎬 6 minutes to translate your website
32
33 [youtube https://www.youtube.com/watch?v=T1fTHnZhH-0]
34
35 Video tutorial available in [Chinese](https://youtu.be/ET2ijgN3cUw?si=6L2_KlZJ6Dw3kOJq), [Danish](https://youtu.be/cxoMK5UamXA?si=sbaK-Fx8GAfsl8Bu), [English](https://youtu.be/T1fTHnZhH-0?si=rELV5g5I4i9KwVG0), [Finnish](https://youtu.be/niuBK79uK4Y?si=fKs6mvNqLCTliOIV), [French](https://youtu.be/No6PdIJrbrk?si=2w2yJERXIhdSfqFb), [German](https://youtu.be/TvyHn8n9zr4?si=FSWSHd8YkW17V07u), [Greek](https://youtu.be/MMrkmhzVrNM?si=A0BM0Mq-gBgIQ-rT), [Hindi](https://youtu.be/TCoaBMCusbE?si=eXACXPXZtAeC4J2P), [Italian](https://youtu.be/yYNkJqbFGeo?si=VBkJrNck4_kPma-0), [Japanese](https://youtu.be/H9jL6B9ZoRk?si=ZOoNKdxE67LMt4Sv), [Korean](https://youtu.be/FGi68qYvzWg?si=zNZKYPUvf12FNxCz), [Polish](https://youtu.be/QkQ8fn7XZkY?si=Z4aEfcVHs05_AOLS), [Portuguese](https://youtu.be/W8lGMYeE-wQ?si=SorUAE_AVW8-ezKE) and [Spanish](https://youtu.be/ePsri0sP99Y?si=l3JCik3Z-B0hg4CR).
36
37 ### 🔥 One free target language ###
38 The first language translation is completely free for non-commercial websites. If your website is of a commercial nature (e-commerce, advertising, etc.), a commercial licence is available.
39
40 ### 🧮 No word limits! ###
41
42 Don't count the words on your website to decide which plan to choose, wpLingua doesn't limit them! Simply choose the number of target languages and translate without counting!
43
44 ### 🚀 Optimized for international search engines (SEO) ###
45 When you use wpLingua on your website, all elements of your content - even those that are invisible - are translated.
46
47 wpLingua is "SEO-Friendly" because it takes care of translating:
48
49 ✓ Meta Title tags
50 ✓ Meta Description tags
51 ✓ Hreflang alternative links
52 ✓ Meta tags for social networks (Twitter X, OpenGraph Facebook...)
53 ✓ ALT attributes of images
54 ✓ And more.
55
56 By optimizing indexing, we ensure that your translated pages are not only understood by your audience, but are also easily found by search engines.
57
58 ### 🪄 Streamlined Setup Process ###
59 Forget about complex plugins to set up, wpLingua enhances the user experience of the multilingual world.
60
61 All you need to do to get started is request your machine translation API key, then play with the language switcher appearance options!
62
63 Let wpLingua take care of the technical aspects while you concentrate on creating compelling content for your international audience. Our commitment is **to make multilingual capabilities accessible and easy to use for all WordPress users**.
64
65 ### ✍️ Tailor-made translations at your fingertips with our On-Page Editor ###
66 Although wpLingua gives you the convenience of **machine translations**, we understand the nuances of each language.
67
68 wpLingua allows you **to fine-tune each translation manually** if you need to.
69
70 Experience the fusion of automation and the personal touch with our **visual on-page editor**.
71
72 ### 🔗 Editable URL translation ###
73 The plugin **automatically discovers URLs on your website and lets you translate them**. URLs are split into slugs (parts of the URL), making them easy to edit. This feature boosts SEO performance!
74
75 ### 🎨 Fully customizable language switcher ###
76 wpLingua's language switcher is fully customizable. You can display the language selector in four ways:
77
78 ✓ Automatic insertion via predefined positions.
79 ✓ Use a shortcode to display it wherever you like.
80 ✓ Insertion in the navigation menu using the design defined by the theme.
81 ✓ Insertion in the navigation menu from the site editor using the Gutenberg block named Language Switcher
82
83 You can also control the appearance of the language switcher using:
84
85 ✓ Switcher styles (dropdown, inline and block)
86 ✓ Predefined themes (light, dark, chameleon, etc.)
87 ✓ Configurable language names (translated name, original name, language ID, etc.)
88 ✓ Flag shapes (round, rectangle and wavy)
89 ✓ Language-based flag choices or import your own flag images
90 ✓ Adding custom CSS in a dedicated insert
91
92 With all these customization options, there's no way your website's language switcher will look like any other!
93
94 ### 📖 Translation rules by dictionary ###
95 The dictionary allows you to define translation rules that apply when generating machine translations. You can specify words or sets of words that should never be translated, or define how they should be translated for each language.
96
97 ### 🖼️ Translation of links and media ###
98 This feature lets you apply translation rules to links and media, offering even greater customization. You can display different images or modify link URLs according to the current language. These rules apply to the following elements: Link URLs, image URLs, iframe URLs and URLs in intercepted JSONs.
99
100 ### 🧭 Intuitive possibilities to exclude certain translations ###
101 Navigate the complexities of website translation with wpLingua's intelligent exclusion feature.
102
103 Want to preserve specific sections of a page in its original language? Our system seamlessly allows you to pinpoint and **exclude translations using CSS selectors**.
104
105 If entire pages need to remain untouched, effortlessly exclude them by their URL. All of this can be managed with ease through our user-friendly exclusions manager.
106
107 With wpLingua, you're always in command of what gets translated and what doesn't, ensuring your website's essence remains intact.
108
109 ### 💫 Supported languages ###
110
111 #### The plugin supports the following languages ####
112
113 Arabic ∘ Chinese ∘ Danish ∘ Dutch ∘ Slovak ∘ English ∘ Finnish ∘ French ∘ German ∘ Greek ∘ Hebrew ∘ Hindi ∘ Hungarian ∘ Indonesian ∘ Italian ∘ Japanese ∘ Korean ∘ Norwegian ∘ Polish ∘ Portuguese ∘ Russian ∘ Spanish ∘ Swedish ∘ Turkish ∘ Ukrainian ∘ Vietnamese
114
115 #### The plugin is translated into the following languages ####
116
117 Danish ∘ Dutch ∘ English ∘ Finnish ∘ French ∘ German ∘ Hindi ∘ Hungarian ∘ Indonesian ∘ Italian ∘ Japanese ∘ Korean ∘ Portuguese ∘ Spanish ∘ Swedish
118
119 You can contribute to the translation of the [wpLingua plugin on translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/wplingua/) and contribute to the editing of [PO/MO translation files on GitHub](https://github.com/julien-jacob/wplingua/tree/develop/languages).
120
121
122 ### 🔌 Theme and plugin compatibility ###
123 The method used by wpLingua to translate website texts ensures compatibility with most themes and plugins.
124
125 **Compatible plugins tested:** WooCommerce, Yoast SEO, SEOPress, All in One SEO, SEOKey, Elementor, Gutenberg, Divi Builder, Advanced Custom Fields (ACF), Contact Form 7, Fluent Forms, WP Forms, Gravity Form, MailPoet, WP Rocket, Cache Enabler, WP Fastest Cache, All-in-One WP Migration, UpdraftPlus, Redirection, Complianz, WF Cookies, Complianz, LuckyWP Table of content, WP Grid Builder, and more...
126
127 **Compatible themes tested:** Divi, Twenty Twenty-One, Astra, OceanWP, Blocksy, Hello, GeneratePress, Neve, Envince, Twenty Twenty-Four, Twenty Twenty-Five, Poe, Neve FSE, Frost, Tove, and more...
128
129 ### ⚡️ The wpLingua API and plugin connectors ###
130 The wpLingua plugin relies on our own wpLingua API, an integrated third-party service, to provide its machine translation functionality. The call to this Third Party Service (wpLingua API) is made when creating an API key from the plugin, during API key verification and when your website requests a new automatic translation (new texts discovered on a page web or request automatic translations from the translation edition). We invite you to consult our [Terms & Conditions page](https://wplingua.com/terms-and-conditions/) for more information.
131
132 **Keywords**: wpLingua, WP Lingua, WP-Lingua, Multilingual, Bilingual, Translation, Translate, Translated, Translator, Localization, Automatic translation, Machine translation, Translation connector, Languages, Language switcher, Language selector, API, SEO, Custom flags
133
134
135 == Installation ==
136
137 1. Download the plugin zip file and install it via the WordPress interface, or upload it directly to your plugins directory.
138 2. Activate wpLingua from your plugins page.
139 3. Navigate to the wpLingua settings to get your free API key and to set up your language preferences.
140 4. Start translating your content!
141
142 == Frequently Asked Questions ==
143
144 = What languages are available for plugin administration? =
145 For the time being, the plugin administration is available in Danish, Dutch, English, Finnish, French, German, Hindi, Hungarian, Indonesian, Italian, Japanese, Korean, Portuguese, Spanish, and Swedish. If you want to help us translate it into more languages, don't hesitate!
146
147 = What languages are available for translation? =
148 The plugin supports the following languages: Arabic ∘ Chinese ∘ Danish ∘ Dutch ∘ Slovak ∘ English ∘ Finnish ∘ French ∘ German ∘ Greek ∘ Hebrew ∘ Hindi ∘ Hungarian ∘ Indonesian ∘ Italian ∘ Japanese ∘ Korean ∘ Norwegian ∘ Polish ∘ Portuguese ∘ Russian ∘ Spanish ∘ Swedish ∘ Turkish ∘ Ukrainian ∘ Vietnamese
149
150 = How it works? =
151 wpLingua intercepts page content and analyzes HTML and JS code. It discovers all texts, translates them and makes the pages multilingual. This approach ensures compatibility with most themes, plugins and page builders such as Gutenberg, Elementor, Divi…
152
153 = Is wpLingua compatible with WooCommerce or other plugins? =
154 Absolutely! wpLingua intercepts page content and analyzes HTML and JS code. It discovers all texts, translates them and renders the pages multilingual. This approach guarantees compatibility with the translation of your WooCommerce online store, as well as with all other WordPress plugins.
155
156 = Is wpLingua compatible with Divi or other Theme? =
157 The method used by wpLingua to translate website texts guarantees compatibility with most themes. Themes tested with guaranteed compatibility: Divi, Twenty Twenty-One, Astra, OceanWP, Blocksy, Hello, GeneratePress, Neve, Envince, Twenty Twenty-Four, Twenty Twenty-Five, Poe, Neve FSE, Frost, Tove, and more…
158
159 = Is wpLingua compatible with Gutenberg or other page builders? =
160 The method used by wpLingua to translate website texts guarantees compatibility with most page builders. Page builders tested with guaranteed compatibility: Elementor, Divi Builder, Gutenberg.
161
162 = Is wpLingua compatible with WordPress Multisite? =
163 No, wpLingua is not compatible with WordPress Multisite
164
165 = Is wpLingua compatible with caching plugins? =
166 Quite ! And it's even recommended to cache your pages and translations to improve website loading and performance.
167
168 = Is there a Gutenberg block to easily insert the language selector from the site editor? =
169 Yes! If your website uses a block-based theme (like Twenty Twenty Five, Neve FSE, etc.), you can easily edit the website header via the Site Editor to add the Language switcher block in the location of your choice. You can also easily display the language switcher wherever you want using our shortcode provided for this purpose. Simply copy and paste this shortcode where you want: **[wplng_switcher]**
170
171 = How can I get more languages? =
172 To get more than one language, you need to opt for the Premium package, which gives you access to up to 25 translated languages.
173
174 = Do I need a DeepL or Google Translate plan in addition to wpLingua? =
175 No. Translations are managed by our API integrated in wpLingua. You do not need to purchase an additional plan.
176
177 = Is wpLingua entirely free? =
178 You can use wpLingua free of charge to translate your website into the language of your choice, provided your website is not intended for commercial use. If your website is for commercial use, or if you would like more languages translated, we invite you to choose a premium package.
179
180 = Where are my translations stored? =
181 Your server’s database holds all the translations locally.
182
183 == Screenshots ==
184
185 1. When you visit your translated page, you can activate the editor to modify your translations if necessary.
186 2. Installing wpLingua and creating an API key.
187 3. You can choose which flag to display by language or import a custom flag.
188 4. Customize language selector, activate or deactivate automatic insertion + choose position, use shortcode or add directly to menu.
189 5. Many options available for the language switcher, even adding custom CSS.
190 6. SEO tags are translated automatically, but you can modify them manually.
191 7. Dictionary: define translation rules that apply when generating machine translations.
192 8. You have the possibility to exclude pages or parts of pages.
193 9. wpLingua adds a list of your website's slugs. You can decide whether or not to translate them.
194 10. All translations are stored on your WordPress website.
195 11. Translations are automatically generated by wpLingua. When you visit the page for the first time (from the admin), you'll see the translation progress.
196 12. SEO-Friendly: wpLingua add the HTML code needed for your translated pages to be indexed by search engines.
197
198 == Changelog ==
199
200 = 2.14.3 =
201
202 * Set api.wplingua.com as the API URL
203 * Fixed the issue with spaces being preserved between strings
204 * Fixed the dictionary option page: textarea height in WP 7.0
205
206 = 2.14.2 =
207
208 * Quick fix for API proxy
209
210 = 2.14.1 =
211
212 * Improve compatibility:
213 * Theme: Bricks
214 * Theme: GeneratePress
215 * Plugin: advanced-post-block
216 * Plugin: top-10
217
218 = 2.14.0 =
219
220 * New language supported: Norwegian
221 * Tested up to WordPress version 7.0
222
223 = 2.13.1 =
224
225 * Improvement:
226 * Update option page design for WordPress 7.0 compatibility (flex layout)
227 * Enhance CodeMirror editor settings and styles for better usability in option page switcher
228 * Prevent duplicate excluded elements in DOM processing
229 * Refactor exclusion tag processing to streamline checks
230 * Refactor selector sanitization and ensure filters return an array
231 * Refactor attribute setting for translated links and media URLs for improved readability
232 * Hide advanced-post-block admin notice
233 * Fix:
234 * Fix translation text retrieval in `wplng_dom_translate_nodes_texts` function
235 * Update HTML entity decoding to use `ENT_HTML5` for improved compatibility across attribute, JSON and HTML translators
236 * Fix regex pattern in i18n script JSON parsing to correctly match quotes
237 * Fix regex pattern in i18n script translation and adjust return value in function call translation
238 * Fix exclusion check in JSON translation to use the correct element
239 * Fix body class assignment in editor mode and list mode
240 * Fix body element selector in body class modification
241 * Fix translation domain in close button title for overload notification
242 * Improve error handling in AJAX overload function
243
244 = 2.13.0 =
245
246 * Performance:
247 * Refactor caching mechanism from transients to options for translations and slugs
248 * Add caching for translated attributes, JSON functions, URL parsing and language lists
249 * Optimize `wplng_get_translated_text_from_translations()`, meta_query structures and `wplng_text_is_translatable()`
250 * Skip JS script translation files larger than 2MB for JSON translation files
251 * Handle JSON generation failures gracefully in script translation functions
252 * Replace `strpos`/`str_contains` with `wplng_str_contains` wrapper throughout codebase
253 * Improvement:
254 * Implement search query translation with placeholder tags and restore functionality
255 * Add notice for original text containing search query tag in translation editor
256 * Decode slug before truncating to ensure accurate title length
257 * Better wplng_text_esc() function
258 * Add cache and option cleanup on plugin deactivation
259 * Add input validation to string utility functions
260 * Add wplng_bypass_multisite_incompatibility filter
261 * Security:
262 * Prevent path traversal attacks in cache file operations
263 * Sanitize custom CSS output to prevent breaking out of `<style>` context
264 * Add input validation and strict type checks across admin option pages (escaping, `esc_html_e`, `esc_attr__`)
265 * Sanitize post ID in AJAX modal edit and save functions
266 * Sanitize API key expiration date and error messages from API responses
267 * Improve sanitization in slug and translation save functions (replace `stripslashes` with `wp_unslash`)
268 * Add error handling for invalid IV length in encryption functions
269 * Enforce strict type checking for API feature flags
270 * Fix:
271 * Normalize slugs in translation to prevent cache misses for non-ASCII characters
272 * Slug creation logic in admin bar using wrong variable after loop
273 * Undefined `$language_target_id` in `wplng_get_language_name_translated()`
274 * Cache variable not properly set in `wplng_get_language_current_id()`
275 * `wplng_get_language_by_id()` now handles missing language IDs and prevents infinite recursion
276 * Regex pattern in `wplng_get_translated_text_from_translations()` to correctly capture trailing whitespace
277 * Regex pattern in `wplng_url_is_translatable_no_filter()` to correctly match file URLs
278 * Regex validation in `wplng_get_url_exclude_regex()` to prevent PHP errors on invalid patterns
279 * Regex fallback in `wplng_link_media_apply_rules()` to return original URL if `preg_replace` fails
280 * Return value handling in `wplng_translate_html()` and incorrect type casting of DOM object
281 * Non-ASCII characters now preserved in translated search queries
282 * Slug sanitization and decoding in `wplng_create_slug()`
283 * Removed incorrect `esc_attr` from `wplng_get_switcher_class()` return value
284 * `wplng_save_translation()` now returns the result of save or update operations
285
286 = 2.12.3 =
287
288 * Change menu access capability from 'administrator' to 'edit_posts'
289 * Add confetti effect on successful first loading
290
291 = 2.12.2 =
292
293 * Enhance JSON and HTML translation handling in AJAX callbacks with filter hooks
294
295 = 2.12.1 =
296
297 * Update plugin translations
298
299 = 2.12.0 =
300
301 * Make wpLingua compatible with websites in subfolders
302 * Refactor translation and dictionary functions to include target language IDs, improving tagging and replacement logic
303 * Fix missing jQuery dependency for "Load in progress"
304 * Enqueue Dashicons for better compatibility when the admin bar is disabled
305 * Update the target language label in free API key registration
306 * Clarify how default settings are used in switcher options documentation
307
308
309 All changelogs and previous versions of the wpLingua plugin are available on the releases page of the project's GitHub repo: [https://github.com/julien-jacob/wplingua/releases](https://github.com/julien-jacob/wplingua/releases).
310
311 == Upgrade Notice ==
312
313 = 1.0.0 =
314 First release. Be sure to set up your preferences after installation.
315