{"id":277332,"date":"2026-02-02T08:24:01","date_gmt":"2026-02-02T08:24:01","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/llm-automatic-translation\/"},"modified":"2026-08-26T07:46:29","modified_gmt":"2026-08-26T07:46:29","slug":"latw-ai-translator-for-wpml","status":"publish","type":"plugin","link":"https:\/\/it.wordpress.org\/plugins\/latw-ai-translator-for-wpml\/","author":23441936,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.2.1","stable_tag":"2.2.1","tested":"7.1","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"LATW AI Translation for WPML","header_author":"Szymon Zawadzki","header_description":"Automatically translate WordPress content using OpenAI LLM with WPML integration.","assets_banners_color":"333333","last_updated":"2026-08-26 07:46:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/llm-automatic-translation.top\/","header_author_uri":"","rating":5,"author_block_rating":0,"active_installs":20,"downloads":2282,"num_ratings":2,"support_threads":3,"support_threads_resolved":2,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.0":{"tag":"1.1.0","author":"szymon0zawadzki","date":"2026-02-02 08:53:19"},"1.1.1":{"tag":"1.1.1","author":"szymon0zawadzki","date":"2026-02-19 10:08:33"},"1.2.0":{"tag":"1.2.0","author":"szymon0zawadzki","date":"2026-03-04 08:25:02"},"1.3.0":{"tag":"1.3.0","author":"szymon0zawadzki","date":"2026-03-12 12:38:30"},"1.4.0":{"tag":"1.4.0","author":"szymon0zawadzki","date":"2026-03-19 10:12:03"},"1.4.1":{"tag":"1.4.1","author":"szymon0zawadzki","date":"2026-04-01 17:14:02"},"1.5.1":{"tag":"1.5.1","author":"szymon0zawadzki","date":"2026-04-14 09:14:32"},"1.5.5":{"tag":"1.5.5","author":"szymon0zawadzki","date":"2026-04-24 12:42:58"},"1.5.6":{"tag":"1.5.6","author":"szymon0zawadzki","date":"2026-05-06 08:39:23"},"1.6.0":{"tag":"1.6.0","author":"szymon0zawadzki","date":"2026-05-13 08:38:37"},"1.6.1":{"tag":"1.6.1","author":"szymon0zawadzki","date":"2026-05-21 07:50:52"},"1.6.2":{"tag":"1.6.2","author":"szymon0zawadzki","date":"2026-05-21 08:04:59"},"2.0.0":{"tag":"2.0.0","author":"szymon0zawadzki","date":"2026-05-29 11:04:41"},"2.0.1":{"tag":"2.0.1","author":"szymon0zawadzki","date":"2026-06-01 15:54:26"},"2.0.2":{"tag":"2.0.2","author":"szymon0zawadzki","date":"2026-06-01 15:58:04"},"2.0.3":{"tag":"2.0.3","author":"szymon0zawadzki","date":"2026-06-18 06:58:35"},"2.0.4":{"tag":"2.0.4","author":"szymon0zawadzki","date":"2026-07-10 13:21:34"},"2.0.5":{"tag":"2.0.5","author":"szymon0zawadzki","date":"2026-07-13 14:55:21"},"2.0.6":{"tag":"2.0.6","author":"szymon0zawadzki","date":"2026-07-24 16:07:22"},"2.0.7":{"tag":"2.0.7","author":"szymon0zawadzki","date":"2026-07-28 07:44:48"},"2.0.8":{"tag":"2.0.8","author":"szymon0zawadzki","date":"2026-07-31 12:40:24"},"2.0.9":{"tag":"2.0.9","author":"szymon0zawadzki","date":"2026-08-11 17:11:54"},"2.1.0":{"tag":"2.1.0","author":"szymon0zawadzki","date":"2026-08-17 11:13:10"},"2.2.0":{"tag":"2.2.0","author":"szymon0zawadzki","date":"2026-08-24 12:26:44"},"2.2.1":{"tag":"2.2.1","author":"szymon0zawadzki","date":"2026-08-26 07:46:29"}},"upgrade_notice":{"2.2.0":"<p>Every language configured in WPML is now available in the free version, and MyMemory joins as a free engine that needs no API key. No settings changes needed.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":2},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3663424,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3663424,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3663424,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3663424,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.0","1.1.1","1.2.0","1.3.0","1.4.0","1.4.1","1.5.1","1.5.5","1.5.6","1.6.0","1.6.1","1.6.2","2.0.0","2.0.1","2.0.2","2.0.3","2.0.4","2.0.5","2.0.6","2.0.7","2.0.8","2.0.9","2.1.0","2.2.0","2.2.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3663424,"resolution":"1","location":"assets","locale":"","width":1904,"height":963},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3663424,"resolution":"2","location":"assets","locale":"","width":1904,"height":963},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3663424,"resolution":"3","location":"assets","locale":"","width":1904,"height":963},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3663424,"resolution":"4","location":"assets","locale":"","width":1904,"height":963}},"screenshots":{"1":"Translation Management screen","2":"Pick your engine and model","3":"Batch-translate WPML interface, theme and plugin strings in one pass","4":"Translation history: what was sent, what came back, and what each job cost"}},"plugin_section":[],"plugin_tags":[220668,180485,99,2333,103],"plugin_category":[48],"plugin_contributors":[255069],"plugin_business_model":[],"class_list":["post-277332","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-translation","plugin_tags-deepl","plugin_tags-multilingual","plugin_tags-translation","plugin_tags-wpml","plugin_category-language-tools","plugin_contributors-szymon0zawadzki","plugin_committers-szymon0zawadzki"],"banners":{"banner":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/banner-772x250.png?rev=3663424","banner_2x":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/banner-1544x500.png?rev=3663424","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/icon-128x128.png?rev=3663424","icon_2x":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/icon-256x256.png?rev=3663424","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/screenshot-1.png?rev=3663424","caption":"Translation Management screen"},{"src":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/screenshot-2.png?rev=3663424","caption":"Pick your engine and model"},{"src":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/screenshot-3.png?rev=3663424","caption":"Batch-translate WPML interface, theme and plugin strings in one pass"},{"src":"https:\/\/ps.w.org\/latw-ai-translator-for-wpml\/assets\/screenshot-4.png?rev=3663424","caption":"Translation history: what was sent, what came back, and what each job cost"}],"raw_content":"<!--section=description-->\n<p><a href=\"https:\/\/llm-automatic-translation.top\/latw-ai-translator-for-wpml\/\">LATW AI Translation for WPML<\/a> adds an AI translator to the WPML Translation Management workflow you already use.<\/p>\n\n<p>WPML keeps doing what it does today: language switching, translation jobs, string translation, the whole multilingual structure of your site. This plugin registers one additional translator inside that pipeline and lets it do the actual translating, using the AI model or translation engine you pick.<\/p>\n\n<p>https:\/\/youtu.be\/iqlw5al1G4Q<\/p>\n\n<h4>You bring your own API key<\/h4>\n\n<p>WPML's built-in automatic translation is billed in WPML credits. This plugin works differently. You connect your own provider key, and every request goes straight from your WordPress server to OpenAI, Google, Anthropic or DeepL, at their published rates, with nothing added on top by us.<\/p>\n\n<p><strong>A real example.<\/strong> Translating 30 articles into 3 languages costs <strong>\u20ac386.00<\/strong> in WPML Automatic Translation credits. The same job, through this plugin with GPT-5.4 nano, costs <strong>$0.45<\/strong>. Same content, same WPML workflow, <strong>over 99% off the bill<\/strong>.<\/p>\n\n<p>Nothing passes through our servers, and no content is stored outside your site and your chosen provider. You are responsible for your own provider billing and usage limits.<\/p>\n\n<h4>How it plugs into WPML<\/h4>\n\n<p>On activation the plugin creates a dedicated virtual translator user, <strong>latwaitr_ai_bot<\/strong>, shown in WPML as \"LATW AI Translator\", and registers it with WPML as a local translator for your active language pairs.<\/p>\n\n<p>Assign content to that translator on WPML's Translation Management screen and the plugin picks the job up automatically, translates it with your chosen engine, and hands the result back through WPML's own pipeline.<\/p>\n\n<p>The practical consequence: <strong>if WPML can send it for translation, this plugin can translate it.<\/strong> Posts, pages, custom post types, taxonomies, strings, page-builder layouts, third-party integrations. The plugin does not reinvent translation routing, it rides WPML's.<\/p>\n\n<h4>Who it is for<\/h4>\n\n<ul>\n<li>Agencies running client sites on WPML that want translation cost moved off the invoice and onto a metered API key<\/li>\n<li>Site owners with a few hundred pages, where credit-based pricing stops making sense<\/li>\n<li>Anyone who needs translated content to travel between their own server and one named provider, with no intermediary in between<\/li>\n<\/ul>\n\n<h4>Features<\/h4>\n\n<ul>\n<li><strong>Deep WPML integration<\/strong> \u2014 runs entirely through WPML's Translation Management pipeline via a dedicated AI translator user<\/li>\n<li><strong>Six engines, your choice<\/strong> \u2014 MyMemory, Google Translate, OpenAI, Gemini, and in Pro also Claude and DeepL<\/li>\n<li><strong>String Translation<\/strong> \u2014 batch-translate interface, theme and plugin strings from WPML String Translation<\/li>\n<li><strong>Page builder support<\/strong> \u2014 full support for Elementor and Bricks Builder; other WPML-compatible builders should work but are not officially tested<\/li>\n<li><strong>ACF support<\/strong> \u2014 translates Advanced Custom Fields content<\/li>\n<li><strong>Taxonomy translation<\/strong> \u2014 a dedicated screen for categories, tags and custom taxonomies, with per-term status<\/li>\n<li><strong>SEO metadata<\/strong> \u2014 Yoast SEO, Rank Math, SEOPress and All in One SEO titles and descriptions<\/li>\n<li><strong>Website context<\/strong> \u2014 describe your site once and every LLM translation is done with that context in mind<\/li>\n<li><strong>Cost tracking<\/strong> \u2014 every completed job records what it actually cost, priced against the engine that produced it<\/li>\n<li><strong>Translation history<\/strong> \u2014 review any past translation, inspect what was sent and what came back, track status over time<\/li>\n<li><strong>Custom prompt and glossary<\/strong> \u2014 control tone, register and terminology, and lock specific terms to specific translations <em>(Pro)<\/em><\/li>\n<li><strong>Processing modes<\/strong> \u2014 translate synchronously for immediate results, or send jobs to the provider's Batch API for roughly half the price<\/li>\n<li><strong>Re-translate only changes<\/strong> \u2014 edit one paragraph, pay for one paragraph instead of the whole page <em>(Pro)<\/em><\/li>\n<li><strong>Bulk translation<\/strong> \u2014 queue dozens of posts for translation in a single action instead of one at a time <em>(Pro)<\/em><\/li>\n<li><strong>WooCommerce<\/strong> \u2014 product attribute taxonomies, variations and shop-specific data <em>(Pro)<\/em><\/li>\n<\/ul>\n\n<h4>Free vs Pro<\/h4>\n\n<p>The free version is not a trial. It translates unlimited content into every language configured in WPML, permanently.<\/p>\n\n<p><strong>Free<\/strong><\/p>\n\n<ul>\n<li>Unlimited translations, all WPML languages<\/li>\n<li>Posts, pages and custom post types<\/li>\n<li>Elementor, Bricks and ACF<\/li>\n<li>WPML String Translation<\/li>\n<li>Taxonomy translation<\/li>\n<li>SEO metadata<\/li>\n<li>Translation history and cost tracking<\/li>\n<li>All processing modes, including Batch at roughly half price<\/li>\n<li>Engines: MyMemory, Google Translate, OpenAI GPT-5.6 luna and GPT-5.4 nano, Gemini 3.5 Flash Lite<\/li>\n<\/ul>\n\n<p><strong>Pro<\/strong><\/p>\n\n<p>Everything in free, plus:<\/p>\n\n<ul>\n<li>Bulk translation \u2014 queue many posts at once<\/li>\n<li>Re-translate only changes<\/li>\n<li>Custom translation prompt<\/li>\n<li>Glossary<\/li>\n<li>WooCommerce support<\/li>\n<li>Engines: Claude Opus 5, Sonnet 5 and Haiku 4.5; DeepL; OpenAI GPT-5.6 Sol, GPT-5.6 Terra, GPT-5.5 and more; Gemini 3.7 Flash, 3.6 Flash and more<\/li>\n<li>Premium support<\/li>\n<\/ul>\n\n<p><a href=\"https:\/\/llm-automatic-translation.top\/latw-ai-translator-for-wpml\">Upgrade to Pro<\/a><\/p>\n\n<h4>Supported content<\/h4>\n\n<ul>\n<li>Post titles, content and excerpts<\/li>\n<li>Custom post types<\/li>\n<li>Elementor and Bricks Builder widgets and modules<\/li>\n<li>ACF fields<\/li>\n<li>WPML String Translation strings<\/li>\n<li>Yoast SEO, Rank Math, SEOPress and All in One SEO metadata<\/li>\n<li>Categories and custom taxonomies<\/li>\n<li>WooCommerce products, attributes and variations <em>(Pro)<\/em><\/li>\n<li>Anything else WPML is able to send for translation<\/li>\n<\/ul>\n\n<h4>Translation engines<\/h4>\n\n<p>Six engines, split into two kinds. Language models read the whole page, follow your prompt and your website description, and handle nuance. Machine translation engines are faster and cheaper per word but take no instructions, because there is nothing to instruct.<\/p>\n\n<p><strong>Language models<\/strong><\/p>\n\n<ul>\n<li><strong>OpenAI<\/strong> \u2014 GPT-5.6 luna and GPT-5.4 nano in free; GPT-5.6 Sol, GPT-5.6 Terra, GPT-5.5 and more in Pro<\/li>\n<li><strong>Google Gemini<\/strong> \u2014 Gemini 3.5 Flash Lite in free; Gemini 3.7 Flash, 3.6 Flash and more in Pro<\/li>\n<li><strong>Anthropic Claude<\/strong> \u2014 Opus 5, Sonnet 5 and Haiku 4.5 <em>(Pro)<\/em><\/li>\n<\/ul>\n\n<p><strong>Machine translation<\/strong><\/p>\n\n<ul>\n<li><strong>Google Translate<\/strong> \u2014 Neural Machine Translation, billed per character<\/li>\n<li><strong>DeepL<\/strong> \u2014 billed per character <em>(Pro)<\/em><\/li>\n<li><strong>MyMemory<\/strong> \u2014 translation memory with machine translation fallback, free within a daily quota<\/li>\n<\/ul>\n\n<p>Each engine stores its own API key and model separately, so switching between them, and back again, costs you nothing in reconfiguration.<\/p>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.2 or higher<\/li>\n<li>PHP 7.4 or higher<\/li>\n<li><a href=\"https:\/\/wpml.org\/\">WPML<\/a> \u2014 required, this is an add-on and not a standalone translation plugin<\/li>\n<li>An API key for the engine you choose. MyMemory needs none.<\/li>\n<\/ul>\n\n<h4>Third-Party Services<\/h4>\n\n<p>Content is sent only to the engine you selected in the plugin settings, and only when you start a translation. Nothing is sent without your action, and every request goes directly from your WordPress server to that provider.<\/p>\n\n<p><strong>OpenAI API<\/strong><\/p>\n\n<ul>\n<li>Service URL: <a href=\"https:\/\/api.openai.com\/\">https:\/\/api.openai.com\/<\/a><\/li>\n<li>Privacy Policy: <a href=\"https:\/\/openai.com\/privacy\/\">https:\/\/openai.com\/privacy\/<\/a><\/li>\n<li>Terms of Use: <a href=\"https:\/\/openai.com\/terms\/\">https:\/\/openai.com\/terms\/<\/a><\/li>\n<\/ul>\n\n<p><strong>Google Gemini API<\/strong><\/p>\n\n<ul>\n<li>Service URL: <a href=\"https:\/\/generativelanguage.googleapis.com\/\">https:\/\/generativelanguage.googleapis.com\/<\/a><\/li>\n<li>Privacy Policy: <a href=\"https:\/\/policies.google.com\/privacy\">https:\/\/policies.google.com\/privacy<\/a><\/li>\n<li>Terms of Use: <a href=\"https:\/\/ai.google.dev\/gemini-api\/terms\">https:\/\/ai.google.dev\/gemini-api\/terms<\/a><\/li>\n<\/ul>\n\n<p><strong>Google Cloud Translation API<\/strong><\/p>\n\n<ul>\n<li>Service URL: <a href=\"https:\/\/translation.googleapis.com\/\">https:\/\/translation.googleapis.com\/<\/a><\/li>\n<li>Privacy Policy: <a href=\"https:\/\/policies.google.com\/privacy\">https:\/\/policies.google.com\/privacy<\/a><\/li>\n<li>Terms of Use: <a href=\"https:\/\/cloud.google.com\/terms\">https:\/\/cloud.google.com\/terms<\/a><\/li>\n<\/ul>\n\n<p><strong>MyMemory (Translated S.r.l.)<\/strong><\/p>\n\n<ul>\n<li>Service URL: <a href=\"https:\/\/api.mymemory.translated.net\/\">https:\/\/api.mymemory.translated.net\/<\/a><\/li>\n<li>Privacy Policy and Terms of Use: <a href=\"https:\/\/mymemory.translated.net\/terms-and-conditions\">https:\/\/mymemory.translated.net\/terms-and-conditions<\/a><\/li>\n<li>Usage limits: <a href=\"https:\/\/mymemory.translated.net\/doc\/usagelimits.php\">https:\/\/mymemory.translated.net\/doc\/usagelimits.php<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<h4>Quick start<\/h4>\n\n<ol>\n<li>Install and activate LATW AI Translation for WPML<\/li>\n<li>Go to <strong>AI Translator &gt; Settings<\/strong>, choose an engine and paste its API key. Starting with MyMemory needs no key at all.\n2.5. Optionally write a short website description, so the language model knows what kind of site it is translating<\/li>\n<li>Open <strong>Translations<\/strong> page, select your content, and translate it.<\/li>\n<\/ol>\n\n<p>The plugin picks the job up from there and returns the finished translation through WPML. Check <strong>Translation History<\/strong> to see what was sent, what came back, and what it cost.<\/p>\n\n<h4>Where to get an API key<\/h4>\n\n<p>The settings screen links straight to the right page for each engine, with step-by-step instructions:<\/p>\n\n<ul>\n<li>OpenAI \u2014 <a href=\"https:\/\/platform.openai.com\/api-keys\">platform.openai.com\/api-keys<\/a><\/li>\n<li>Google Gemini \u2014 <a href=\"https:\/\/aistudio.google.com\/apikey\">aistudio.google.com\/apikey<\/a><\/li>\n<li>Google Translate \u2014 a Google Cloud API key with the Cloud Translation API enabled<\/li>\n<li>Anthropic Claude <em>(Pro)<\/em> \u2014 <a href=\"https:\/\/console.anthropic.com\/\">console.anthropic.com<\/a><\/li>\n<li>DeepL <em>(Pro)<\/em> \u2014 <a href=\"https:\/\/www.deepl.com\/pro-api\">deepl.com\/pro-api<\/a><\/li>\n<li>MyMemory \u2014 no key required<\/li>\n<\/ul>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20wpml%3F\"><h3>Do I need WPML?<\/h3><\/dt>\n<dd><p>Yes. This is an add-on for <a href=\"https:\/\/wpml.org\/\">WPML<\/a>, not a standalone translation plugin. It extends WPML with AI-powered automatic translation and does nothing without it.<\/p><\/dd>\n<dt id=\"how%20is%20this%20different%20from%20wpml%27s%20own%20automatic%20translation%3F\"><h3>How is this different from WPML's own automatic translation?<\/h3><\/dt>\n<dd><p>WPML bills automatic translation in WPML credits, purchased from WPML. This plugin bills nothing at all: you connect your own provider key and the provider charges you directly at their list price. There is no markup and no intermediary. In exchange you manage your own API account and your own spending limits.<\/p><\/dd>\n<dt id=\"what%20can%20i%20do%20with%20the%20free%20version%3F\"><h3>What can I do with the free version?<\/h3><\/dt>\n<dd><p>Translate unlimited content into every language configured in WPML, using MyMemory, Google Translate, OpenAI GPT-5.6 luna, GPT-5.4 nano or Gemini 3.5 Flash Lite. Posts, custom post types, taxonomies, ACF, Elementor, Bricks, SEO metadata and WPML strings are all included. It is not a trial and it does not expire.<\/p><\/dd>\n<dt id=\"how%20much%20does%20translation%20actually%20cost%3F\"><h3>How much does translation actually cost?<\/h3><\/dt>\n<dd><p>It depends on the engine and the volume. Language models bill per token, Google Translate and DeepL bill per character, MyMemory is free within its quota.<\/p>\n\n<p>Rough guide for a single 1,000-word page:<\/p>\n\n<ul>\n<li>OpenAI GPT-5.4 nano \u2014 under $0.01<\/li>\n<li>Gemini 3.5 Flash Lite \u2014 under $0.01<\/li>\n<li>Google Translate \u2014 $20 per million characters<\/li>\n<li>MyMemory \u2014 free, within its daily quota<\/li>\n<li>Batch mode \u2014 roughly half the synchronous price<\/li>\n<\/ul>\n\n<p>For a full project: 30 articles into 3 languages runs to \u20ac386.00 in WPML Automatic Translation credits, against $0.45 with GPT-5.4 nano through this plugin.<\/p><\/dd>\n<dt id=\"which%20engine%20should%20i%20choose%3F\"><h3>Which engine should I choose?<\/h3><\/dt>\n<dd><p>If quality on nuanced content matters most, use a language model. It sees the whole page, follows the translation prompt and your website description, and keeps tone consistent. If you are pushing large volumes of straightforward text and cost is the priority, Google Translate and DeepL are cheaper and faster, and MyMemory is free within its daily quota.<\/p><\/dd>\n<dt id=\"can%20i%20switch%20engines%20later%3F\"><h3>Can I switch engines later?<\/h3><\/dt>\n<dd><p>Yes, at any time. Each engine keeps its own key and model setting, so switching back does not mean re-entering anything.<\/p><\/dd>\n<dt id=\"do%20google%20translate%2C%20deepl%20and%20mymemory%20use%20the%20prompt%3F\"><h3>Do Google Translate, DeepL and MyMemory use the prompt?<\/h3><\/dt>\n<dd><p>No. They ignore the translation prompt, the website description and the reasoning effort setting. They are translation engines rather than language models, so there is nothing to prompt.<\/p><\/dd>\n<dt id=\"can%20i%20customise%20the%20translation%20prompt%3F\"><h3>Can I customise the translation prompt?<\/h3><\/dt>\n<dd><p>In the free version the prompt is fixed and shown read-only on the Settings page, but you can add a website description that is passed to the model with every translation. A fully editable prompt, along with a glossary for locking specific terms, is a Pro feature.<\/p><\/dd>\n<dt id=\"what%20are%20the%20processing%20modes%3F\"><h3>What are the processing modes?<\/h3><\/dt>\n<dd><p><strong>Synchronous<\/strong> waits for the provider and fills in the translation in the same run. Fastest feedback, full price.<\/p>\n\n<p><strong>Background<\/strong> is OpenAI-only. It finishes in minutes without holding a long request open, and is the default where available.<\/p>\n\n<p><strong>Batch<\/strong> sends the job to the provider's Batch API for roughly half the price and collects it when ready, usually within the hour, though providers only guarantee a 24-hour window.<\/p>\n\n<p>All three modes are available in the free version. Google Translate, DeepL and MyMemory run synchronously only, because they have no Batch API. That is safe even for long posts, since their content is split into many small requests.<\/p><\/dd>\n<dt id=\"what%20is%20bulk%20translation%2C%20and%20how%20is%20it%20different%20from%20batch%20mode%3F\"><h3>What is bulk translation, and how is it different from Batch mode?<\/h3><\/dt>\n<dd><p>They solve different problems and the names are easy to confuse.<\/p>\n\n<p><strong>Batch mode<\/strong> is about <em>price<\/em>: a single job is sent to the provider's Batch API instead of being translated immediately, and comes back at roughly half the cost. Available to everyone.<\/p>\n\n<p><strong>Bulk translation<\/strong> <em>(Pro)<\/em> is about <em>volume<\/em>: you select dozens of posts and queue them all for translation in one action, rather than assigning them one at a time. It works with any processing mode.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20woocommerce%3F\"><h3>Does it work with WooCommerce?<\/h3><\/dt>\n<dd><p>WooCommerce support is a Pro feature. Products are ordinary posts as far as WPML is concerned, so the free version translates whatever WPML hands over, but it has no shop-specific handling: no product attribute taxonomies (<code>pa_*<\/code>), no variations, no other WooCommerce data. Pro adds that handling and supports it.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20page%20builders%3F\"><h3>Does it work with page builders?<\/h3><\/dt>\n<dd><p>Elementor and Bricks Builder are fully supported. Other builders compatible with WPML should work, but have not been officially tested.<\/p><\/dd>\n<dt id=\"can%20i%20translate%20wpml%20strings%3F\"><h3>Can I translate WPML strings?<\/h3><\/dt>\n<dd><p>Yes. The plugin integrates with WPML String Translation, so interface strings, theme strings and plugin strings can be batch-translated through your chosen engine directly from the plugin.<\/p><\/dd>\n<dt id=\"can%20i%20see%20what%20was%20translated%3F\"><h3>Can I see what was translated?<\/h3><\/dt>\n<dd><p>Yes. The Translation History page shows every past translation, what was sent, what came back, the status of each job and what it cost.<\/p><\/dd>\n<dt id=\"how%20are%20translations%20queued%3F\"><h3>How are translations queued?<\/h3><\/dt>\n<dd><p>Through WordPress Cron, in the background, so long jobs do not time out. You can check cron status from the admin UI.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20my%20pro%20license%20expires%3F\"><h3>What happens when my Pro license expires?<\/h3><\/dt>\n<dd><p>The version you have keeps working, but you stop receiving updates until you renew. The free version continues working regardless, with no license at all.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.2.0<\/h4>\n\n<ul>\n<li><strong>All languages in the free version.<\/strong> Every language configured in WPML can now be translated, with no per-language limit.<\/li>\n<li><strong>New: MyMemory engine.<\/strong> A free translation memory and machine translation engine that needs no API key, available in the free version.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li><strong>New: additional translation engines.<\/strong> Alongside OpenAI you can now use Anthropic (Claude), Google Gemini, DeepL and Google Translate. Each engine keeps its own API key and model, so switching back and forth costs you nothing.<\/li>\n<li><strong>New: DeepL and Google Translate support.<\/strong> Dedicated machine-translation engines, billed per character instead of per token.<\/li>\n<li><strong>New: processing modes.<\/strong> Choose Synchronous, Batch or Background. Modes an engine cannot serve fall back to Synchronous instead of failing.<\/li>\n<li><strong>New: current models.<\/strong> GPT-5.6 luna, terra and sol, Claude Opus 5, Sonnet 5 and Haiku 4.5, Gemini 3.7, 3.6 and 3.5 Flash, and Gemini 3.5 Flash Lite.<\/li>\n<\/ul>\n\n<h4>2.0.9<\/h4>\n\n<ul>\n<li>Fix: Astra Site Builder layouts not showing after translation.<\/li>\n<li>Fix: corrected the database join used to read untranslated posts.<\/li>\n<li>Fix: translated products kept appearing as needing translation.<\/li>\n<li>Fix: fatal error when saving translations of WooCommerce products, caused by the downloadable-files field type not being passed to WPML\/WCML.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li><strong>Translations now ride WPML's Translation Service pipeline.<\/strong> The plugin no longer writes translated posts directly. Jobs are pushed through WPML's queue, so they appear in WPML's Translation Management UI, respect WPML job statuses and stay consistent with manual edits.<\/li>\n<li><strong>New: Taxonomy Translation page.<\/strong> A dedicated tab for categories, tags and custom taxonomies, with its own term browser and per-term status.<\/li>\n<li><strong>Database and options upgrade.<\/strong> The queue table stores WPML job IDs, and the dedicated translator user is created on activation and removed on deactivation.<\/li>\n<\/ul>","raw_excerpt":"Automatic AI translation inside WPML, billed to your own API key. No WPML credits, no markup, no middleman.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/277332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=277332"}],"author":[{"embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/szymon0zawadzki"}],"wp:attachment":[{"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=277332"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=277332"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=277332"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=277332"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=277332"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/it.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=277332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}