{"id":256340,"date":"2025-11-21T14:51:13","date_gmt":"2025-11-21T14:51:13","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/ai-translator-for-elementor-and-polylang\/"},"modified":"2026-04-04T17:25:06","modified_gmt":"2026-04-04T17:25:06","slug":"ai-translator-for-elementor-and-polylang","status":"publish","type":"plugin","link":"https:\/\/mk.wordpress.org\/plugins\/ai-translator-for-elementor-and-polylang\/","author":23382593,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.4.15","stable_tag":"1.4.15","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Meep AI Translator","header_author":"Meep Tech","header_description":"Premium AI-powered translation solution for Elementor with OpenAI integration for Polylang","assets_banners_color":"edeff1","last_updated":"2026-04-04 17:25:06","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/meeptech.com\/products\/ai-translator-for-elementor-polylang","header_author_uri":"https:\/\/meeptech.com","rating":5,"author_block_rating":0,"active_installs":0,"downloads":1414,"num_ratings":3,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.7":{"tag":"1.0.7","author":"meeptechdev","date":"2025-11-21 14:51:24"},"1.0.8":{"tag":"1.0.8","author":"meeptechdev","date":"2025-12-02 18:07:23"},"1.0.9":{"tag":"1.0.9","author":"meeptechdev","date":"2025-12-15 15:05:55"},"1.1.0":{"tag":"1.1.0","author":"meeptechdev","date":"2025-12-15 20:27:32"},"1.1.1":{"tag":"1.1.1","author":"meeptechdev","date":"2025-12-16 10:46:39"},"1.1.2":{"tag":"1.1.2","author":"meeptechdev","date":"2025-12-16 18:12:56"},"1.1.3":{"tag":"1.1.3","author":"meeptechdev","date":"2025-12-16 19:55:42"},"1.1.4":{"tag":"1.1.4","author":"meeptechdev","date":"2025-12-17 17:51:37"},"1.2.0":{"tag":"1.2.0","author":"meeptechdev","date":"2026-01-16 12:33:49"},"1.2.1":{"tag":"1.2.1","author":"meeptechdev","date":"2026-01-20 13:54:33"},"1.2.2":{"tag":"1.2.2","author":"meeptechdev","date":"2026-01-21 12:30:47"},"1.2.3":{"tag":"1.2.3","author":"meeptechdev","date":"2026-01-21 14:31:05"},"1.2.4":{"tag":"1.2.4","author":"meeptechdev","date":"2026-01-22 16:50:18"},"1.2.5":{"tag":"1.2.5","author":"meeptechdev","date":"2026-01-24 11:24:12"},"1.2.6":{"tag":"1.2.6","author":"meeptechdev","date":"2026-02-21 15:49:44"},"1.2.7":{"tag":"1.2.7","author":"meeptechdev","date":"2026-02-21 16:33:10"},"1.3.0":{"tag":"1.3.0","author":"meeptechdev","date":"2026-02-26 16:05:55"},"1.3.1":{"tag":"1.3.1","author":"meeptechdev","date":"2026-02-26 18:58:02"},"1.3.2":{"tag":"1.3.2","author":"meeptechdev","date":"2026-03-09 22:01:14"},"1.4.0":{"tag":"1.4.0","author":"meeptechdev","date":"2026-03-11 21:11:27"},"1.4.1":{"tag":"1.4.1","author":"meeptechdev","date":"2026-03-18 15:04:51"},"1.4.10":{"tag":"1.4.10","author":"meeptechdev","date":"2026-03-26 15:53:42"},"1.4.11":{"tag":"1.4.11","author":"meeptechdev","date":"2026-04-01 17:06:43"},"1.4.12":{"tag":"1.4.12","author":"meeptechdev","date":"2026-04-02 18:44:37"},"1.4.13":{"tag":"1.4.13","author":"meeptechdev","date":"2026-04-02 19:54:57"},"1.4.14":{"tag":"1.4.14","author":"meeptechdev","date":"2026-04-02 20:43:17"},"1.4.15":{"tag":"1.4.15","author":"meeptechdev","date":"2026-04-04 17:25:06"},"1.4.2":{"tag":"1.4.2","author":"meeptechdev","date":"2026-03-19 17:00:37"},"1.4.3":{"tag":"1.4.3","author":"meeptechdev","date":"2026-03-23 12:43:24"},"1.4.4":{"tag":"1.4.4","author":"meeptechdev","date":"2026-03-23 18:43:18"},"1.4.5":{"tag":"1.4.5","author":"meeptechdev","date":"2026-03-26 13:10:05"},"1.4.6":{"tag":"1.4.6","author":"meeptechdev","date":"2026-03-26 13:55:11"},"1.4.7":{"tag":"1.4.7","author":"meeptechdev","date":"2026-03-26 14:34:16"},"1.4.8":{"tag":"1.4.8","author":"meeptechdev","date":"2026-03-26 14:50:00"},"1.4.9":{"tag":"1.4.9","author":"meeptechdev","date":"2026-03-26 15:21:46"}},"upgrade_notice":{"1.4.2":"<p>Removed unnecessary dependency notices. UI improvements and free version language limits.<\/p>","1.4.1":"<p>Minor fixes and improvements.<\/p>","1.4.0":"<p>WooCommerce translation now fully supported. Upgrade to translate products, variations, and gallery SEO automatically.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":3},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3400555,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3400555,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3471015,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3471015,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.7","1.0.8","1.0.9","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.2.0","1.2.1","1.2.2","1.2.3","1.2.4","1.2.5","1.2.6","1.2.7","1.3.0","1.3.1","1.3.2","1.4.0","1.4.1","1.4.10","1.4.11","1.4.12","1.4.13","1.4.14","1.4.15","1.4.2","1.4.3","1.4.4","1.4.5","1.4.6","1.4.7","1.4.8","1.4.9"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3486693,"resolution":"1","location":"assets","locale":""},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3486693,"resolution":"2","location":"assets","locale":""},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3486693,"resolution":"3","location":"assets","locale":""},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3486693,"resolution":"4","location":"assets","locale":""},"screenshot-5.jpg":{"filename":"screenshot-5.jpg","revision":3486693,"resolution":"5","location":"assets","locale":""},"screenshot-6.jpg":{"filename":"screenshot-6.jpg","revision":3486693,"resolution":"6","location":"assets","locale":""}},"screenshots":{"1":"Plugin main translation interface \u2014 translate any page with one click.","2":"Translate All interface \u2014 bulk translate multiple pages at once.","3":"Language management settings \u2014 configure your site languages.","4":"Language switcher settings \u2014 customize the frontend language switcher.","5":"SEO translation settings \u2014 translate meta titles, descriptions, and slugs.","6":"WooCommerce settings \u2014 configure product translation options."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2353,76538,99,2333,286],"plugin_category":[48],"plugin_contributors":[251010],"plugin_business_model":[],"class_list":["post-256340","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-elementor","plugin_tags-multilingual","plugin_tags-translation","plugin_tags-woocommerce","plugin_category-language-tools","plugin_contributors-meeptechdev","plugin_committers-meeptechdev"],"banners":{"banner":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/banner-772x250.png?rev=3471015","banner_2x":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/banner-1544x500.png?rev=3471015","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/icon-128x128.png?rev=3400555","icon_2x":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/icon-256x256.png?rev=3400555","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/screenshot-1.jpg?rev=3486693","caption":"Plugin main translation interface \u2014 translate any page with one click."},{"src":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/screenshot-2.jpg?rev=3486693","caption":"Translate All interface \u2014 bulk translate multiple pages at once."},{"src":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/screenshot-3.jpg?rev=3486693","caption":"Language management settings \u2014 configure your site languages."},{"src":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/screenshot-4.jpg?rev=3486693","caption":"Language switcher settings \u2014 customize the frontend language switcher."},{"src":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/screenshot-5.jpg?rev=3486693","caption":"SEO translation settings \u2014 translate meta titles, descriptions, and slugs."},{"src":"https:\/\/ps.w.org\/ai-translator-for-elementor-and-polylang\/assets\/screenshot-6.jpg?rev=3486693","caption":"WooCommerce settings \u2014 configure product translation options."}],"raw_content":"<!--section=description-->\n<p>Meep AI Translator is an AI-powered translation plugin for WordPress that keeps your Elementor layouts, Gutenberg blocks, and WooCommerce products pixel-perfect after translation \u2014 no broken widgets, no collapsed sections, no manual fixes.<\/p>\n\n<p>Most translation plugins treat your site as plain text. Meep AI reads Elementor's JSON structure directly, so every widget, column, and design element stays exactly where you placed it.<\/p>\n\n<p><strong>Why Meep AI Translator?<\/strong><\/p>\n\n<ul>\n<li>\u2705 Elementor layout preserved \u2014 pixel-perfect after every translation<\/li>\n<li>\u2705 Built-in language system \u2014 no Polylang or WPML required<\/li>\n<li>\u2705 WooCommerce support \u2014 products, variations, attributes, gallery SEO<\/li>\n<li>\u2705 No API key needed \u2014 zero setup friction<\/li>\n<li>\u2705 1,800 words per week free \u2014 resets automatically<\/li>\n<\/ul>\n\n<p><strong>Features:<\/strong><\/p>\n\n<ul>\n<li>One-click translation for Elementor pages (single page or bulk)<\/li>\n<li>WooCommerce product translation (title, description, excerpt, attributes, variations, gallery SEO)<\/li>\n<li>Built-in language management \u2014 add languages directly in the plugin, no extra plugins needed<\/li>\n<li>Polylang and WPML integration also supported if you prefer<\/li>\n<li>Gutenberg block-based pages supported<\/li>\n<li>Classic pages and posts supported<\/li>\n<li>Context-aware AI translations using advanced LLMs \u2014 not word-for-word<\/li>\n<li>Automatic hreflang SEO tags and clean URL prefixes (\/fr\/, \/de\/)<\/li>\n<li>Language switcher widget, shortcode, and nav menu integration (4 display styles)<\/li>\n<\/ul>\n\n<p><strong>How It Works:<\/strong><\/p>\n\n<ol>\n<li>Install and activate \u2014 no API keys, no complicated setup.<\/li>\n<li>Choose your language system: Built-in (recommended), Polylang, or WPML.<\/li>\n<li>Pick any Elementor page, Gutenberg post, or WooCommerce product.<\/li>\n<li>Choose your target languages and click Translate.<\/li>\n<li>Your site is multilingual \u2014 layouts intact, SEO tags in place.<\/li>\n<\/ol>\n\n<p><strong>Want a higher word limit?<\/strong><\/p>\n\n<ul>\n<li><strong>Starter \u2013 $9.99\/month<\/strong> \u2013 1 site, ~18,000 words\/month. Perfect for small business sites.<\/li>\n<li><strong>Agency \u2013 $34.99\/month<\/strong> \u2013 Up to 10 sites. Best for agencies and freelancers.<\/li>\n<li><strong>Agency Lifetime \u2013 $299 one-time<\/strong> \u2013 50 sites, unlimited words. Pay once, use forever.<\/li>\n<li><strong>Enterprise \u2013 $53.99\/month<\/strong> \u2013 Up to 50 sites, dedicated account manager.<\/li>\n<\/ul>\n\n<p>\ud83d\udc49 <a href=\"https:\/\/meeptech.com\/products\/ai-translator-for-elementor-polylang#pricing\">View plans and upgrade<\/a><\/p>\n\n<h3>External Services &amp; Privacy<\/h3>\n\n<p>This plugin connects to external services to provide AI-powered translations.<\/p>\n\n<h4>Services Used<\/h4>\n\n<p><strong>MeepTech API<\/strong> (meeptech.com)\n* Handles usage tracking and word count enforcement\n* Receives: Website URL, word counts, language pairs\n* Does NOT store your translated content<\/p>\n\n<p><strong>OpenAI<\/strong> (openai.com)\n* Processes translation requests using AI language models\n* Receives: Text content to be translated\n* Content is sent for processing only, not stored by us<\/p>\n\n<p><strong>PostHog<\/strong> (posthog.com) - Optional\n* Anonymous usage analytics (opt-in only)\n* Disabled by default, requires explicit consent<\/p>\n\n<h4>What We Collect<\/h4>\n\n<p>\u2705 Website URL (for authentication)\n\u2705 Word counts and language pairs (for plan limits)<\/p>\n\n<h4>What We Do NOT Collect<\/h4>\n\n<p>\u274c Your translated content is not stored\n\u274c Personal information or email addresses\n\u274c User or visitor data<\/p>\n\n<h4>Privacy &amp; Security<\/h4>\n\n<p>For data deletion, export, or GDPR\/CCPA inquiries, contact sales@meeptech.com with your website URL.<\/p>\n\n<ul>\n<li><a href=\"https:\/\/meeptech.com\/privacy-policy\">MeepTech Privacy Policy<\/a><\/li>\n<li><a href=\"https:\/\/meeptech.com\/terms\">MeepTech Terms of Service<\/a><\/li>\n<li><a href=\"https:\/\/openai.com\/policies\/privacy-policy\">OpenAI Privacy Policy<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install via the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Choose your language setup option:\n\n<ul>\n<li><strong>Built-in (Recommended):<\/strong> Use the plugin's built-in language system \u2014 no extra plugins needed<\/li>\n<li><strong>Polylang:<\/strong> Go to Languages \u2192 Languages tab \u2192 Add your languages<\/li>\n<li><strong>WPML:<\/strong> Go to WPML \u2192 Languages \u2192 Add languages and configure<\/li>\n<\/ul><\/li>\n<li>Navigate to AI Translator in your WordPress menu.<\/li>\n<li>Start translating your pages, posts, and WooCommerce products!<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20translate%20elementor%20pages%20without%20breaking%20the%20layout%3F\"><h3>How do I translate Elementor pages without breaking the layout?<\/h3><\/dt>\n<dd><p>Meep AI Translator reads Elementor's internal JSON structure directly instead of treating your page as plain text. This means every widget, column, heading, and button stays exactly where you placed it after translation. No broken sections, no collapsed widgets, no manual CSS fixes needed.<\/p><\/dd>\n<dt id=\"can%20i%20translate%20a%20wordpress%20site%20without%20polylang%20or%20wpml%3F\"><h3>Can I translate a WordPress site without Polylang or WPML?<\/h3><\/dt>\n<dd><p>Yes. Since v1.3.0, Meep AI Translator includes a fully built-in language management system. You can add languages, configure URL prefixes (\/fr\/, \/de\/), and get a language switcher widget \u2014 all without installing any additional plugins. Polylang and WPML are still supported if you prefer them.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20multiple%20languages%20to%20woocommerce%3F\"><h3>How do I add multiple languages to WooCommerce?<\/h3><\/dt>\n<dd><p>Install Meep AI Translator, choose Built-in language system during setup, add your target languages, then go to the Products tab in the dashboard. Select the products you want to translate, choose target languages, and click Translate. Product titles, descriptions, attributes, variations, and gallery alt text are all translated automatically.<\/p><\/dd>\n<dt id=\"does%20elementor%20translation%20work%20with%20dynamic%20widgets%3F\"><h3>Does Elementor translation work with dynamic widgets?<\/h3><\/dt>\n<dd><p>Meep AI Translator translates static Elementor content \u2014 text, headings, buttons, image captions, and any text stored inside Elementor's JSON. Dynamic widgets that pull content from external sources or custom fields at runtime are skipped to avoid conflicts. Standard Elementor widgets are fully supported.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20elementor%20free%20or%20only%20elementor%20pro%3F\"><h3>Does this work with Elementor Free or only Elementor Pro?<\/h3><\/dt>\n<dd><p>Both. Meep AI Translator works with Elementor free and Elementor Pro. No Pro license is required for translation to work.<\/p><\/dd>\n<dt id=\"do%20i%20need%20my%20own%20openai%20api%20key%3F\"><h3>Do I need my own OpenAI API key?<\/h3><\/dt>\n<dd><p>No. Translation is handled through our secure API \u2014 no setup, no API keys, no accounts with third-party services required. Just install and translate.<\/p><\/dd>\n<dt id=\"how%20many%20words%20can%20i%20translate%20for%20free%3F\"><h3>How many words can I translate for free?<\/h3><\/dt>\n<dd><p>The free version includes 1,800 words per week, which resets automatically every 7 days. There are no one-time limits \u2014 you can keep translating week after week on the free plan.<\/p><\/dd>\n<dt id=\"does%20this%20require%20polylang%20pro%3F\"><h3>Does this require Polylang Pro?<\/h3><\/dt>\n<dd><p>No. It supports both Polylang free and Polylang Pro. And since v1.3.0, you don't need Polylang at all \u2014 the built-in language system replaces it completely.<\/p><\/dd>\n<dt id=\"will%20this%20modify%20my%20existing%20content%3F\"><h3>Will this modify my existing content?<\/h3><\/dt>\n<dd><p>No. Translations are created as separate pages or posts in the target language. Your original content remains completely unchanged.<\/p><\/dd>\n<dt id=\"how%20do%20i%20check%20how%20many%20words%20i%20have%20left%3F\"><h3>How do I check how many words I have left?<\/h3><\/dt>\n<dd><p>Go to AI Translator \u2192 Dashboard to see your current usage, words remaining, and weekly reset date.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.4.15<\/h4>\n\n<ul>\n<li>Added Extra 50,000 Words Pack addon support<\/li>\n<li>Addon license detection and word limit boost<\/li>\n<li>Dashboard badge for active addon<\/li>\n<\/ul>\n\n<h4>1.4.14<\/h4>\n\n<ul>\n<li>Added: Translations for setup checklist, info card, and metabox strings (34 new strings across 9 languages)<\/li>\n<\/ul>\n\n<h4>1.4.13<\/h4>\n\n<ul>\n<li>Fixed: Word count accuracy for languages with apostrophes (French, Italian, etc.) \u2014 no longer splits contractions into separate words<\/li>\n<li>Fixed: Classic Editor post title now correctly translated (batch results keyed by text, not path)<\/li>\n<li>Improved: Translation speed \u2014 parallel batch API calls for large content, word-count-aware batch splitting<\/li>\n<li>Improved: API timeout increased from 120s to 300s to prevent fallback to slow individual requests<\/li>\n<li>Added: 262 new admin UI translations across 9 languages (German, Spanish, French, Italian, Dutch, Polish, Portuguese, Russian, Ukrainian)<\/li>\n<li>Added: Plugin version number displayed in footer<\/li>\n<\/ul>\n\n<h4>1.4.12<\/h4>\n\n<ul>\n<li>Fixed: Word count overcounting due to HTML entities not being decoded before counting<\/li>\n<li>Fixed: Classic Editor translation speed improved by removing duplicate regex processing<\/li>\n<li>Fixed: Post title no longer double-counted when it appears as H1 in content<\/li>\n<li>Fixed: Title extraction from batch translation results (was never matching due to path-keyed lookup)<\/li>\n<li>Fixed: Plain permalink support \u2014 translated pages now use ?lang= parameter instead of URL prefix<\/li>\n<li>Fixed: Pages without explicit language assignment now correctly show as default language instead of \"(?)\"<\/li>\n<li>Fixed: Pre-flight word limit check now applies the same server factor as the engine (no more false \"fits\" then block)<\/li>\n<li>Fixed: Bulk translation now stops all loops when word limit or cooldown is hit<\/li>\n<li>Fixed: Translation status text no longer keeps cycling after an error occurs<\/li>\n<li>Fixed: \"Clear History\" button now works (AJAX handler was not registered during AJAX requests)<\/li>\n<li>Fixed: Elementor translations now recorded in translation history<\/li>\n<li>Fixed: AI-preserved HTML no longer stripped and re-translated unnecessarily (major speed improvement)<\/li>\n<li>Fixed: Gutenberg post title now correctly translated (batch results keyed by text, not path)<\/li>\n<li>Fixed: Elementor title extraction moved before gap-filler to prevent path errors<\/li>\n<li>Fixed: Gap-filler no longer falsely re-translates content with valid HTML closing tags<\/li>\n<li>Added: Language badges in history tab are now clickable to filter by language<\/li>\n<\/ul>\n\n<h4>1.4.11<\/h4>\n\n<ul>\n<li>Fixed: Translated pages now get proper translated slugs instead of reusing the source language slug<\/li>\n<li>Added: Exclude Words tab in Settings page for managing terms that should not be translated<\/li>\n<li>Improved: Settings button on main plugin page now clearly indicates exclude words functionality<\/li>\n<li>Fixed: Settings button now opens the exclude words modal instead of showing \"coming soon\" toast<\/li>\n<\/ul>\n\n<h4>1.4.10<\/h4>\n\n<ul>\n<li>Fixed: \"Monthly Limit Reached\" notice incorrectly showing for paid license users<\/li>\n<li>Fixed: Usage reporting now sends actual license key instead of null<\/li>\n<li>Improved: Paid license detection prevents false cooldown activation<\/li>\n<\/ul>\n\n<h4>1.4.4<\/h4>\n\n<ul>\n<li>Improved: Metabox now shows helpful setup message with link to dashboard when no multilingual plugin is configured<\/li>\n<\/ul>\n\n<h4>1.4.3<\/h4>\n\n<ul>\n<li>Minor stability improvements<\/li>\n<\/ul>\n\n<h4>1.4.2<\/h4>\n\n<ul>\n<li>Removed unnecessary dependency notices (Elementor\/multilingual no longer required)<\/li>\n<li>Fixed checkbox alignment in admin settings<\/li>\n<li>Fixed language card checkbox visibility in Translate All<\/li>\n<li>Added review prompt URL trigger for dashboard<\/li>\n<li>Free version: single language selection with upgrade prompts<\/li>\n<li>UI improvements and minor fixes<\/li>\n<\/ul>\n\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Added review prompt after successful translation<\/li>\n<li>Minor fixes<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>NEW: Full WooCommerce product translation support<\/li>\n<li>Added: Translate product titles, descriptions, short descriptions, and attributes<\/li>\n<li>Added: Variable product support \u2014 variations translated with proper parent-child relationships<\/li>\n<li>Added: Product gallery image SEO \u2014 translates alt text, captions, and descriptions<\/li>\n<li>Added: WooCommerce block support in Gutenberg (skips dynamic blocks, translates content blocks)<\/li>\n<li>Added: Products tab in dashboard with dedicated management<\/li>\n<li>Added: Frontend locale switching \u2014 WooCommerce UI (Add to cart, etc.) displays in the correct language<\/li>\n<li>Added: Single custom post type URL rewrite rules for built-in language system (\/de\/product\/slug\/)<\/li>\n<li>Fixed: Built-in language taxonomy now registered for all public post types including products<\/li>\n<li>Fixed: Product content detection \u2014 products with no editor content now properly detected as WooCommerce type<\/li>\n<li>Fixed: Dashboard grouping \u2014 translated products no longer appear as duplicate entries<\/li>\n<li>Fixed: Product deletion now supported from the plugin dashboard<\/li>\n<li>Fixed: Language column in WooCommerce admin fits properly in table layout<\/li>\n<li>Improved: Translation title mapping fixed for batch API responses<\/li>\n<li>Improved: Slug generation reuses original slug when multilingual plugin is active<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Fixed: Word count estimates now account for server-side usage (source + translated words counted)<\/li>\n<li>Fixed: Translate All recommendation now updates dynamically based on page selection checkboxes<\/li>\n<li>Fixed: Usage reporting changed from non-blocking to blocking so cooldown and word limits propagate correctly<\/li>\n<li>Fixed: License status cache now invalidated after each usage report for accurate word-limit enforcement<\/li>\n<li>Improved: Selection summary and recommendation labels clarified as \"estimated API words\"<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Fixed: Translated pages returning 404 \u2014 built-in language URL rewrite rules were not persisted to database after setup<\/li>\n<li>Fixed: Rewrite rules now self-heal if missing from stored rules (e.g. after reinstall or AJAX setup)<\/li>\n<li>Improved: Translation slug now uses translated title instead of original-slug-lang pattern<\/li>\n<li>Changed: Admin menu label shortened to \"AI Translator\"<\/li>\n<li>Updated: Plugin short description to fit WordPress.org character limit<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>NEW: Built-in language management system \u2014 translate without Polylang or WPML<\/li>\n<li>Added onboarding screen with 3 options: Built-in (recommended), Polylang, or WPML<\/li>\n<li>Added inline language setup wizard with searchable language picker<\/li>\n<li>Added language switcher WordPress widget (list, dropdown, or flags style)<\/li>\n<li>Added [aitrfoel_language_switcher] shortcode<\/li>\n<li>Added optional language switcher auto-append to navigation menus<\/li>\n<li>Added language column to Posts\/Pages admin list<\/li>\n<li>Added REST API language and translations fields for all public post types<\/li>\n<li>Added hreflang SEO tags for built-in language system<\/li>\n<li>Added WordPress core sitemap filtering by language<\/li>\n<li>Added URL rewriting with language prefix (\/fr\/page-slug\/) including pagination, feeds, categories, tags<\/li>\n<li>Added full language management in Settings page (add\/remove languages, set default)<\/li>\n<li>Polylang is no longer a required plugin dependency<\/li>\n<li>Updated all readme files and installation instructions<\/li>\n<\/ul>\n\n<h4>1.2.7<\/h4>\n\n<ul>\n<li>Compact onboarding screen \u2014 \"What You Need\" and \"How It Works\" now side by side so everything fits in one view<\/li>\n<li>Hides all admin notices on the onboarding page for a clean, focused experience<\/li>\n<li>Removed redundant multilingual plugin notice on the plugin's own setup page<\/li>\n<\/ul>\n\n<h4>1.2.6<\/h4>\n\n<ul>\n<li>Dashboard now separates Pages and Posts into dedicated tabs for cleaner navigation<\/li>\n<li>Modernized dashboard UI with refined styling, card-based stats, and improved visual hierarchy<\/li>\n<li>Added \"Go to Source Post\" link on translation posts metabox for quick access to translate<\/li>\n<li>Improved tab navigation with animated transitions and item counts<\/li>\n<li>Updated language flags, page type badges, and table headers with modern design<\/li>\n<\/ul>\n\n<h4>1.2.5<\/h4>\n\n<ul>\n<li>Improved onboarding experience when no multilingual plugin is installed<\/li>\n<li>Added friendly welcome screen with step-by-step setup guide<\/li>\n<li>Added language configuration detection - shows warning when languages not set up<\/li>\n<li>Updated installation instructions with Polylang and WPML setup details<\/li>\n<li>Updated \"How it works\" to include Gutenberg and Classic Editor support<\/li>\n<li>Fixed critical error on settings page when no multilingual plugin active<\/li>\n<li>Updated Enterprise plan to 50 sites limit<\/li>\n<\/ul>\n\n<h4>1.2.4<\/h4>\n\n<ul>\n<li>Fixed critical batch translation bug - translations now apply correctly in first pass<\/li>\n<li>Fixed permanent deletion for translated pages (skips trash for cleaner workflow)<\/li>\n<li>Added auto-refresh after deleting translations to update available languages<\/li>\n<li>Fixed AI instruction artifacts appearing in translations (e.g., \"Translating the text...\")<\/li>\n<li>Fixed PHP warning for levenshtein() with strings over 255 characters<\/li>\n<li>Added proper noun and acronym detection (names like \"John Smith\" and \"CEO\" no longer mistranslated)<\/li>\n<li>Improved translation quality for less common languages (Romanian, Bulgarian, Croatian, etc.)<\/li>\n<li>Added language-specific retry boost for rare languages<\/li>\n<li>Fixed WPML permalink caching issue - translation links now show correct language immediately<\/li>\n<li>Added Debug Mode toggle in settings to control verbose logging<\/li>\n<li>Improved delete confirmation messages for translations vs original pages<\/li>\n<\/ul>\n\n<h4>1.2.3<\/h4>\n\n<ul>\n<li>Minor bug fixes<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>Fixed license plan sync issue - Enterprise\/Agency plans now correctly sync from Freemius<\/li>\n<li>Added auto-sync for plan mismatches (checks hourly)<\/li>\n<li>Added \"Sync Plan\" button in settings for manual plan synchronization<\/li>\n<li>Improved Luxembourgish translation support with language-specific instructions<\/li>\n<li>Fixed HTML structure corruption during translation (SVG elements, nested tags)<\/li>\n<li>Fixed issue where original text was appearing above translation<\/li>\n<li>Added language instructions for rare languages (Frisian, Breton, Occitan, Corsican, Romansh)<\/li>\n<li>Plugin now sends language-specific instructions to translation server for better accuracy<\/li>\n<li>Improved license activation to properly extract plan from Freemius license<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Added basic WPML support<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Added Gutenberg\/Block Editor translation support<\/li>\n<li>Added \"Manage Languages\" button in settings for quick access to Polylang\/WPML<\/li>\n<li>Plugin now visible in menu even when dependencies are missing (with setup guide)<\/li>\n<li>Fixed translation not being applied to Gutenberg content<\/li>\n<li>Fixed HTML tag corruption during translation<\/li>\n<li>Fixed API response mapping for translations<\/li>\n<li>Fixed HTML entity handling during text replacement<\/li>\n<li>Improved error messages with direct links to install required plugins<\/li>\n<li>Renamed plugin references to \"Meep AI Translator\" for consistency<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Added \"Activate License\" submenu for PRO version<\/li>\n<li>Users can now enter license key without reactivating plugin<\/li>\n<li>Improved license activation flow<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Fixed YouTube video error 153 in welcome popup<\/li>\n<li>Video now opens on YouTube instead of embed (more compatible)<\/li>\n<li>Fixed all remaining emoji encoding issues<\/li>\n<li>Fixed translation completion detection<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Fixed JavaScript syntax error causing dropdowns to not work<\/li>\n<li>Fixed language selector not responding to clicks<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Added server-side Freemius license validation<\/li>\n<li>License expired users are now properly downgraded to Free plan<\/li>\n<li>Added admin notice for expired licenses<\/li>\n<li>Dashboard now shows \"Expired\" status when license is invalid<\/li>\n<li>Updated pricing: Starter $9.99\/month, Agency $34.99\/month<\/li>\n<li>Added translated readme files for 9 languages<\/li>\n<li>Improved license status accuracy<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Added pricing plans to readme<\/li>\n<li>Improved PRO build script with automatic readme branding<\/li>\n<li>Minor improvements<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Fixed plugin name (removed PRO from free version)<\/li>\n<li>Updated readme for free version<\/li>\n<li>Added admin interface translations for 9 languages<\/li>\n<li>Added optional usage analytics with user consent<\/li>\n<li>Fixed WordPress plugin checker errors<\/li>\n<li>Performance improvements<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Bug fixes and improvements<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Initial public release<\/li>\n<li>Elementor + Polylang integration<\/li>\n<li>OpenAI translation engine<\/li>\n<li>Usage tracking and limits<\/li>\n<li>Clean admin interface<\/li>\n<\/ul>","raw_excerpt":"AI translation for Elementor &amp; WooCommerce \u2014 layout stays pixel-perfect. Built-in multilingual system. No Polylang or WPML needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/256340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=256340"}],"author":[{"embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/meeptechdev"}],"wp:attachment":[{"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=256340"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=256340"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=256340"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=256340"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=256340"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/mk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=256340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}