[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fMwWJESwLF0I-H3dyHwaaQRnAhNaNJ9DgTkRrQFLElZs":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":34,"analysis":132,"fingerprints":850},"tmy-globalization","Translatio","2.3.0","yushao","https:\u002F\u002Fprofiles.wordpress.org\u002Fyushao\u002F","\u003Cp>Translatio is an open source tool for internationalization and localization of WordPress based websites. Translatio provides two translation workflows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Live Translation workflow\u003C\u002Fli>\n\u003Cli>Full Professional Translation workflow\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Live translation workflow provides instant translation based on Google Translate engine. Simply configure the extra languages you want to support through the intutuive setup interface and save, then you are done.\u003C\u002Fp>\n\u003Cp>Full Professional workflow provides more control and higher translation quality, which involves extracting the text for translation, translating and integrating back into WordPress. More specifically Translatio plugin hosts your translations locally for proof reading, editing and final publication. You can intergrate machine translation of your choice to prepare your contents, then leveraging fully featured translation editor with any 3rd party translation agencies.\u003C\u002Fp>\n\u003Cp>Translatio provides multiple ways to handle different development phases of the WordPress websites with intuitive and easy to use interfaces, some features include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Live Translation powered by Google Translate\u003C\u002Fli>\n\u003Cli>Support Taxonomies translation, including Categories, Tags\u003C\u002Fli>\n\u003Cli>Support Woo Commerce \u003C\u002Fli>\n\u003Cli>Full cycle to keep translation locally for proof read, edit and publish.\u003C\u002Fli>\n\u003Cli>Support Search Engeine Optimizaion\u002FSEO URL\u003C\u002Fli>\n\u003Cli>Support new block Gutenberg editor and classic editor.\u003C\u002Fli>\n\u003Cli>Support Google Translate integration with editing capability\u003C\u002Fli>\n\u003Cli>Language switcher based on\n\u003Cul>\n\u003Cli>Draggable floating meanu\u003C\u002Fli>\n\u003Cli>Sidebar widget\u003C\u002Fli>\n\u003Cli>Along with title or description\u003C\u002Fli>\n\u003Cli>With any page or post\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Language switcher is in language name or flags\u003C\u002Fli>\n\u003Cli>Detect browser language setting\u003C\u002Fli>\n\u003Cli>Support browser cookie\u003C\u002Fli>\n\u003Cli>Premium service available\u003C\u002Fli>\n\u003Cli>Live support community\u003C\u002Fli>\n\u003C\u002Ful>\n","Make your website multilingual ready at ease with live translation or with support of full translation cycle, with machine translation integration.",0,3102,"","6.4.8","5.0","7.0",[18,19,20,21,22],"language","localization","multilingual","translation","woocommerce","https:\u002F\u002Fgithub.com\u002Ftranslatio-io\u002Ftranslatio","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftmy-globalization.2.3.0.zip",100,null,"2026-03-15T10:48:56.248Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},1,30,94,"2026-04-04T19:06:30.558Z",[35,58,78,95,114],{"slug":36,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":32,"num_ratings":45,"last_updated":46,"tested_up_to":47,"requires_at_least":48,"requires_php":49,"tags":50,"homepage":52,"download_link":53,"security_score":54,"vuln_count":55,"unpatched_count":11,"last_vuln_date":56,"fetched_at":57},"polylang","Polylang","3.7.8","Chouby","https:\u002F\u002Fprofiles.wordpress.org\u002Fchouby\u002F","\u003Cp>With Polylang fully integrated to WordPress and using only its built-in core features (taxonomies), keep steady performances on your site and create a multilingual site featuring from just one extra language to 10 or more depending on your needs. There is no limit in the number of languages added and WordPress’ language packs are automatically downloaded when ready.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>Depending on the type of site you have built or are planning to build, a combination of plugins from the list below might be of interest.\u003Cbr \u002F>\nAll plugins include a wizard allowing to setup them in just a few clicks.\u003C\u002Fp>\n\u003Ch3>Polylang\u003C\u002Fh3>\n\u003Cp>Polylang and \u003Ca href=\"https:\u002F\u002Fpolylang.pro\" rel=\"nofollow ugc\">Polylang Pro\u003C\u002Fa> share the same core providing features such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Translating posts, pages, media, categories, post tags, custom post types and taxonomies, RSS feeds; RTL scripts are supported.\u003C\u002Fli>\n\u003Cli>The language is either set by the language code in URL, or you can use a different sub-domain or domain per language.\u003C\u002Fli>\n\u003Cli>Automatic copy of categories, post tags and other metas when creating a new post or page translation.\u003C\u002Fli>\n\u003Cli>Translating classic menus and classic widgets. Also accessible with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffse-classic\u002F\" rel=\"ugc\">Site Editor Classic Features\u003C\u002Fa> in block themes.\u003C\u002Fli>\n\u003Cli>Customizable language switcher available as a classic widget or a classic navigation menu item.\u003C\u002Fli>\n\u003Cli>Compatibility with Yoast SEO.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Polylang Pro\u003C\u002Fh3>\n\u003Cp>Helps optimizing the time spent translating your site with some very useful extra features such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Better integration in the new Block Editor.\u003C\u002Fli>\n\u003Cli>Language switcher available as a block.\u003C\u002Fli>\n\u003Cli>Language options available in the widget block editor.\u003C\u002Fli>\n\u003Cli>Template parts translatable in the site editor (FSE).\u003C\u002Fli>\n\u003Cli>Duplicate and\u002For synchronize content across post translations.\u003C\u002Fli>\n\u003Cli>Improved compatibility with other plugins such as \u003Ca href=\"https:\u002F\u002Fpolylang.pro\u002Fdoc\u002Fworking-with-acf-pro\u002F\" rel=\"nofollow ugc\">ACF Pro\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Share the same URL slug for posts or terms across languages.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpolylang.pro\u002Fdoc\u002Ftranslating-urls-slugs\u002F\" rel=\"nofollow ugc\">Translate URL slugs\u003C\u002Fa> for categories, author bases, custom post types and more…\u003C\u002Fli>\n\u003Cli>Machine translation with DeepL.\u003C\u002Fli>\n\u003Cli>Export and import of content in XLIFF format for outsourced professional translation.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Access to a Premium Support for personalized assistance.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Polylang for WooCommerce\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpolylang.pro\u002Fdownloads\u002Fpolylang-for-woocommerce\u002F\" rel=\"nofollow ugc\">Add-on\u003C\u002Fa> for the compatibility with WooCommerce which provides features such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Translating WooCommerce pages (shop, check-out, cart, my account), product categories and global attribute terms directly in the WooCommerce interface.\u003C\u002Fli>\n\u003Cli>Translating WooCommerce e-mails and sending them to customers in their language.\u003C\u002Fli>\n\u003Cli>Products metadata synchronization.\u003C\u002Fli>\n\u003Cli>Compatibility with the native WooCommerce CSV import & export tool.\u003C\u002Fli>\n\u003Cli>Compatibility with popular plugins such as WooCommerce Subscriptions, Product Bundles, WooCommerce Bookings, Shipment Tracking and more.\u003C\u002Fli>\n\u003Cli>Ability to use the WooCommerce REST API (available with Polylang Pro).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Access to a Premium Support for personalized assistance.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Our other free plugins\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwpml-to-polylang\u002F\" rel=\"ugc\">WPML to Polylang\u003C\u002Fa> allows migrating from WPML to Polylang.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffse-classic\u002F\" rel=\"ugc\">Site Editor Classic Features\u003C\u002Fa> allows to use classic widgets (including the Polylang language switcher) and menus in the site editor (FSE).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Credits\u003C\u002Fh4>\n\u003Cp>Thanks a lot to all translators who \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fpolylang\" rel=\"nofollow ugc\">help translating Polylang\u003C\u002Fa>.\u003Cbr \u002F>\nThanks a lot to \u003Ca href=\"http:\u002F\u002Fwww.alexlopez.rocks\u002F\" rel=\"nofollow ugc\">Alex Lopez\u003C\u002Fa> for the design of the logo.\u003Cbr \u002F>\nMost of the flags included with Polylang are coming from \u003Ca href=\"http:\u002F\u002Ffamfamfam.com\u002F\" rel=\"nofollow ugc\">famfamfam\u003C\u002Fa> and are public domain.\u003Cbr \u002F>\nWherever third party code has been used, credit has been given in the code’s comments.\u003C\u002Fp>\n","Go multilingual in a simple and efficient way. Keep writing posts and taxonomy terms as usual while defining their languages all at once.",800000,25784629,2921,"2026-02-23T09:13:00.000Z","6.9.4","6.2","7.2",[18,19,20,51,21],"translate","https:\u002F\u002Fpolylang.pro","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpolylang.3.7.8.zip",93,3,"2025-10-28 00:00:00","2026-03-15T15:16:48.613Z",{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":66,"downloaded":67,"rating":68,"num_ratings":25,"last_updated":69,"tested_up_to":47,"requires_at_least":70,"requires_php":71,"tags":72,"homepage":74,"download_link":75,"security_score":76,"vuln_count":30,"unpatched_count":11,"last_vuln_date":77,"fetched_at":57},"wp-multilang","WP Multilang – Translation and Multilingual Plugin","2.4.26","Magazine3","https:\u002F\u002Fprofiles.wordpress.org\u002Fmagazine3\u002F","\u003Cp>WP Multilang is a multilingual plugin for WordPress.\u003C\u002Fp>\n\u003Cp>Translations of post types, taxonomies, meta fields, options, text fields in miltimedia files, menus, titles and text fields in widgets.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002F\" rel=\"nofollow ugc\">Home\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fcontact-us\u002F\" rel=\"nofollow ugc\">Help & Tech Support\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002F#features\" rel=\"nofollow ugc\">Premium Features\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>New Features of the plugin WP Multilang\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Support full site editor for block based themes\u003C\u002Fli>\n\u003Cli>Support block based widgets\u003C\u002Fli>\n\u003Cli>Support different feature image for each language\u003C\u002Fli>\n\u003Cli>Support Smart Custom Fields Plugin\u003C\u002Fli>\n\u003Cli>Auto Translation ( \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">available in premium version\u003C\u002Fa> ) – \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002Fknowledge-base\u002Fhow-to-auto-translate-your-website-contents-using-wp-multilang\u002F\" rel=\"nofollow ugc\">View Tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Support URL Slug Translation ( \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">available in premium version\u003C\u002Fa> ) – \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002Fknowledge-base\u002Fhow-to-translate-url-slugs-with-selective-languages\u002F\" rel=\"nofollow ugc\">View Tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Support Base Translation ( \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">available in premium version\u003C\u002Fa> ) – \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002Fknowledge-base\u002Fhow-to-translate-taxonomy-bases-such-as-categories-and-tags-into-selective-languages-using-the-base-translation-option\u002F\" rel=\"nofollow ugc\">View Tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Export and import content in XLIFF or xml format to translate outside\u003C\u002Fli>\n\u003Cli>Activate Multilingual Support for Post Types\u003C\u002Fli>\n\u003Cli>Support Auto URL Slug Translation ( \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">available in premium version\u003C\u002Fa> ) – \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002Fknowledge-base\u002Fhow-to-translate-url-slugs-with-selective-languages\u002F\" rel=\"nofollow ugc\">View Tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Features of the plugin WP Multilang\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>100% free.\u003C\u002Fli>\n\u003Cli>Translation at PHP.\u003C\u002Fli>\n\u003Cli>Compatible with REST.\u003C\u002Fli>\n\u003Cli>Support configuration for translate multidimensional arrays in options, meta fields, post content.\u003C\u002Fli>\n\u003Cli>Support multisite.\u003C\u002Fli>\n\u003Cli>Support WordPress in sub-folder.\u003C\u002Fli>\n\u003Cli>Separate menu items, posts, terms, widgets, comments per language.\u003C\u002Fli>\n\u003Cli>Many filters for dynamic applying translation settings.\u003C\u002Fli>\n\u003Cli>No duplicate posts, terms, menus, widgets.\u003C\u002Fli>\n\u003Cli>No sub-domain for each language version.\u003C\u002Fli>\n\u003Cli>No additional tables in database.\u003C\u002Fli>\n\u003Cli>Possibility set many languages with one localization. For example, for localization in the region.\u003C\u002Fli>\n\u003Cli>Possibility to set custom locale for html(If installed locale is en_US, you can set locale like: en, en-UK, en-AU etc. Without installation another localization)\u003C\u002Fli>\n\u003Cli>Possibility for add new languages for any user with capability \u003Ccode>manage_options\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Exist the role “Translator” for editing posts, terms. It can not publish or delete.\u003C\u002Fli>\n\u003Cli>No limits by languages or by possibilities.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>WP Multilang compatible with plugins\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Elementor ( \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">available in premium version\u003C\u002Fa> ) – \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002Fknowledge-base\u002Fhow-to-build-a-multilingual-site-with-elementor-using-wp-multilang\u002F\" rel=\"nofollow ugc\">View Tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Divi Builder ( \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">available in premium version\u003C\u002Fa> ) – \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002Fknowledge-base\u002Fhow-to-build-a-multilingual-site-with-divi-builder-using-wp-multilang\u002F\" rel=\"nofollow ugc\">View Tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>ACF, ACF Pro\u003C\u002Fli>\n\u003Cli>WooCommerce\u003C\u002Fli>\n\u003Cli>WooCommerce Customizer\u003C\u002Fli>\n\u003Cli>Gutenberg\u003C\u002Fli>\n\u003Cli>Yoast Seo\u003C\u002Fli>\n\u003Cli>SEOPress \u003C\u002Fli>\n\u003Cli>Contact Form 7 (added mail tag [_language] for send user language in mail)\u003C\u002Fli>\n\u003Cli>WPBakery Visual Composer\u003C\u002Fli>\n\u003Cli>Page Builder by SiteOrigin\u003C\u002Fli>\n\u003Cli>NextGEN Gallery\u003C\u002Fli>\n\u003Cli>All in One SEO Pack\u003C\u002Fli>\n\u003Cli>MailChimp for WordPress\u003C\u002Fli>\n\u003Cli>Newsletter\u003C\u002Fli>\n\u003Cli>Maps Builder\u003C\u002Fli>\n\u003Cli>Max Mega Menu\u003C\u002Fli>\n\u003Cli>MasterSlider\u003C\u002Fli>\n\u003Cli>WP-PageNavi\u003C\u002Fli>\n\u003Cli>BuddyPress\u003C\u002Fli>\n\u003Cli>Meta Slider\u003C\u002Fli>\n\u003Cli>TablePress\u003C\u002Fli>\n\u003Cli>Download Monitor (Redefine templates for links in your theme and translate link texts)\u003C\u002Fli>\n\u003Cli>Better Search\u003C\u002Fli>\n\u003Cli>Rank Math SEO (thanks for @pratikmts)\u003C\u002Fli>\n\u003Cli>WPGraphQL (Add lang to the query parameters in URL. Eg: lang=en)\u003C\u002Fli>\n\u003Cli>Smart Custom Fields\u003C\u002Fli>\n\u003Cli>Team – Team Members Showcase Plugin\u003C\u002Fli>\n\u003Cli>Schema & Structured Data for WP & AMP\u003C\u002Fli>\n\u003Cli>Forminator Forms\u003C\u002Fli>\n\u003Cli>Gravity Forms\u003C\u002Fli>\n\u003Cli>Ultimate Member Form\u003C\u002Fli>\n\u003Cli>Oxygen Builder\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Advance Woocommerce Support\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Send emails in customer’s selected language\u003C\u002Fli>\n\u003Cli>REST API Support\u003C\u002Fli>\n\u003Cli>Import and export products in customer’s selected language\u003C\u002Fli>\n\u003Cli>Translate products (simple products, variable products, grouped products), categories, tags, global attributes\u003C\u002Fli>\n\u003Cli>Cart synchronization across multiple languages \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Manage translation settings via json.\u003C\u002Fp>\n\u003Cp>Add in the root of your theme or plugin file \u003Ccode>wpm-config.json\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Sample configurations can be viewed in config files in folder ‘configs’ in root the plugin.\u003C\u002Fp>\n\u003Cp>Configuration is updated after switching theme, enable or update any plugins.\u003C\u002Fp>\n\u003Cp>The plugin has filters for dynamic application configuration for translate.\u003C\u002Fp>\n\u003Cp>For turn off translation, set \u003Ccode>null\u003C\u002Fcode> into the desired configuration.\u003Cbr \u002F>\nFor example, you must turn off translation for a post type \u003Ccode>post\u003C\u002Fcode>.\u003Cbr \u002F>\nThere are two ways:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\n\u003Cp>In json.\u003Cbr \u002F>\nCreate in root of a theme or a plugin file \u003Ccode>wpm-config.json\u003C\u002Fcode> with:\u003Cbr \u002F>\n    {\u003Cbr \u002F>\n           “post_types”: {\u003Cbr \u002F>\n             “post”: null\u003Cbr \u002F>\n           }\u003Cbr \u002F>\n         }\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Through the filter.\u003Cbr \u002F>\nAdd in functions.php\u003Cbr \u002F>\n    add_filter( ‘wpm_post_post_config’, ‘__return_null’ );\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>To enable translation pass an empty array in php \u003Ccode>array()\u003C\u002Fcode> or empty object in json \u003Ccode>{}\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Supports translation multidimensional array of options, meta fields and post_content.\u003Cbr \u002F>\nSupports the removal of established localizations.\u003Cbr \u002F>\nSupports translation via GET parameter. Add in the GET parameter \u003Ccode>lang\u003C\u002Fcode> code desired language.\u003Cbr \u002F>\nSupports clean database of translations when removing the plugin. Translations are only removed from the built-in tables.\u003Cbr \u002F>\nSupports import term translations from qTranslate(by Soft79).\u003Cbr \u002F>\nSupports automatically redirect to the user’s browser language, if he visits for the first time.\u003C\u002Fp>\n\u003Cp>Ideal for developers.\u003C\u002Fp>\n\u003Cp>For display language switcher in any place add the code to your template \u003Ccode>if ( function_exists ( 'wpm_language_switcher' ) ) wpm_language_switcher ();\u003C\u002Fcode>\u003Cbr \u002F>\nFunction accepts two parameters:\u003Cbr \u002F>\n$type – ‘list’, ‘dropdown’, ‘select’. Default – ‘list’.\u003Cbr \u002F>\n$show – ‘flag’, ‘name’, ‘both’. Default – ‘both’.\u003C\u002Fp>\n\u003Cp>Or using the shortcode \u003Ccode>wpm_lang_switcher\u003C\u002Fcode>. It accept two not necessary parameters ‘type’ and ‘show’.\u003C\u002Fp>\n\u003Cp>Available features for translation:\u003Cbr \u002F>\n    wpm_translate_url( $url, $language = ” ); – translate url\u003Cbr \u002F>\n    wpm_translate_string( $string, $language = ” ); – translate multilingual string\u003Cbr \u002F>\n    wpm_translate_value( $value, $language = ” ); – translate multidimensional array with multilingual strings\u003C\u002Fp>\n\u003Cp>Update translation occurs at PHP. Therefore plugin has high adaptability, compatibility and easily integrates with other plugins. This is what distinguishes it among similar.\u003C\u002Fp>\n\u003Cp>Available translation html tags by JS for strings what do not have WP filters before output.\u003C\u002Fp>\n\u003Cp>Add your tags in config:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\"admin_html_tags\": {\n    \"admin_screen_id\": {\n      \"attribute\": [\n        \"selector\"\n      ]\n    }\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Where:\u003Cbr \u002F>\n    admin_screen_id – admin screen id.\u003Cbr \u002F>\n    attribute – attribute what need to translate. Available ‘text’ – for translate text node, ‘value’ – for translate form values. Or other tag attribute, like ‘title’, ‘alt’.\u003Cbr \u002F>\n    selector – css selector for search needed tag. Each selector is a new array item.\u003C\u002Fp>\n\u003Cp>If You need to add translation for multidimentional array for repeated elements You can use custom tag ‘wpm_each’ for set config to each element in array.\u003Cbr \u002F>\nExample, add config for each item ‘title’ in custom post field array:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\"post_fields\": {\n    \"custom_field\": {\n      \"wpm_each\": {\n        \"title\": {}\n      }\n    }\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For set translation uses the syntax:\u003Cbr \u002F>\n    [:en]Donec vitae orci sed dolor[:de]Cras risus ipsum faucibus ut[:]\u003C\u002Fp>\n\u003Cp>Added shortcode for translate text in any place:\u003Cbr \u002F>\n    [wpm_translate][:en]Donec vitae orci sed dolor[:de]Cras risus ipsum faucibus ut[:][wpm_translate]\u003C\u002Fp>\n\u003Cp>If You translate text in established language, add lang parameter:\u003Cbr \u002F>\n    [wpm_translate lang=”de”][:en]Donec vitae orci sed dolor[:de]Cras risus ipsum faucibus ut[:][wpm_translate]\u003C\u002Fp>\n\u003Cp>Support translating from syntax qTranslate, qTranslate-X, WPGlobus etc.\u003C\u002Fp>\n\u003Cp>Compatible with REST-API.\u003Cbr \u002F>\nSupport transfer the required translation through option \u003Ccode>lang\u003C\u002Fcode> in the GET request to REST.\u003Cbr \u002F>\nHas the ability to keep recording the target language through the transmission parameter \u003Ccode>lang\u003C\u002Fcode> in the request.\u003C\u002Fp>\n\u003Ch3>Migration from qTranslate-X\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Before installing\u002Funinstalling, make database backup.\u003C\u002Fli>\n\u003Cli>Deactivate qTranslate-X.\u003C\u002Fli>\n\u003Cli>Install and activate WP Multilang.\u003C\u002Fli>\n\u003Cli>Create in root of your theme file ‘wpm-config.json’.\u003C\u002Fli>\n\u003Cli>Add all needed post types, taxonomies, options, fields to ‘wpm-config.json’. Setting from qTranslate-X not importing.\u003C\u002Fli>\n\u003Cli>Import term names from qTranslate.\u003C\u002Fli>\n\u003Cli>Check that everything is okay.\u003C\u002Fli>\n\u003Cli>If everything is okay, remove qTranslate-X. If not, make screenshots of errors, restore database from backup and add support issue with your screenshots and description of errors.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Warning\u003C\u002Fh3>\n\u003Cp>Not compatible with:\u003Cbr \u002F>\n– WP Maintenance\u003C\u002Fp>\n\u003Ch3>Known issues\u003C\u002Fh3>\n\u003Cp>Function ‘get_page_by_title’ not working, because in title field are stored titles for all languages. Use function ‘wpm_get_page_by_title( $title )’ as solution.\u003C\u002Fp>\n\u003Cp>NOTE: Because plugins have different ways of storing data, WP Multilang is not compatible with every single plugin out-of-the-box (mostly page builders). This may result in texts not being translatable or translations not being saved. Most of these issues can be resolved using the integration options (wpm-config.json or filters) of WP Multilang.\u003C\u002Fp>\n\u003Cp>Please try WP Multilang in a test-environment before activating it on an existing production site and always make a backup before activating!\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002F\" rel=\"nofollow ugc\">Home\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fcontact-us\u002F\" rel=\"nofollow ugc\">Help & Tech Support\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002F\" rel=\"nofollow ugc\">Premium\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>We try our best to provide support on WordPress.org forums. However, We have a special \u003Ca href=\"https:\u002F\u002Fwp-multilang.com\u002Fcontact-us\u002F\" rel=\"nofollow ugc\">community support\u003C\u002Fa> where you can ask us questions and get help about your WP Multilang related questions. Delivering a good user experience means a lot to us and so we try our best to reply each and every question that gets asked.\u003C\u002Fp>\n\u003Ch3>Bug Reports\u003C\u002Fh3>\n\u003Cp>Bug reports for WP Multilang are \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fahmedkaludi\u002Fwp-multilang\u002Fissues\" rel=\"nofollow ugc\">welcomed on GitHub\u003C\u002Fa>. Please note GitHub is not a support forum, and issues that aren’t properly qualified as bugs will be closed.\u003C\u002Fp>\n","Multilingual plugin for WordPress. Go Multilingual in minutes with full WordPress support. Translate your site easily with this localization plugin.",10000,249839,86,"2026-02-18T13:52:00.000Z","4.7","5.6.20",[19,73,20,51,21],"multilanguage","https:\u002F\u002Fgithub.com\u002Fahmedkaludi\u002Fwp-multilang","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-multilang.2.4.26.zip",98,"2025-06-05 00:00:00",{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":86,"downloaded":87,"rating":76,"num_ratings":88,"last_updated":89,"tested_up_to":47,"requires_at_least":90,"requires_php":91,"tags":92,"homepage":93,"download_link":94,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":57},"wplingua","wpLingua – Automatic translation – Translate and make website multilingual","2.11.3","wpLingua Translation Service","https:\u002F\u002Fprofiles.wordpress.org\u002Fwplingua\u002F","\u003Cp>\u003Cstrong>An all-in-one solution that makes your websites multilingual and translate them automatically, without word limits.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>✓ One free first language for non-commercial websites\u003Cbr \u002F>\n✓ Automatic translation API\u003Cbr \u002F>\n✓ Unlimited number of translated words\u003Cbr \u002F>\n✓ SEO-friendly: indexing of translated pages in search engines\u003Cbr \u002F>\n✓ On-page visual editor for editing translations\u003Cbr \u002F>\n✓ Customizable language switcher\u003Cbr \u002F>\n✓ Translate website URLs\u003Cbr \u002F>\n✓ Making XML sitemaps automatically multilingual\u003Cbr \u002F>\n✓ No coding knowledge needed\u003Cbr \u002F>\n✓ Self-hosted data\u003Cbr \u002F>\n✓ Open source, find \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjulien-jacob\u002Fwplingua\" rel=\"nofollow ugc\">wpLingua on GitHub\u003C\u002Fa>\u003Cbr \u002F>\n✓ And more!\u003C\u002Fp>\n\u003Ch3>🎬 6 minutes to translate your website\u003C\u002Fh3>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FT1fTHnZhH-0?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>Video tutorial available in \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FET2ijgN3cUw?si=6L2_KlZJ6Dw3kOJq\" rel=\"nofollow ugc\">Chinese\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FcxoMK5UamXA?si=sbaK-Fx8GAfsl8Bu\" rel=\"nofollow ugc\">Danish\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FT1fTHnZhH-0?si=rELV5g5I4i9KwVG0\" rel=\"nofollow ugc\">English\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FniuBK79uK4Y?si=fKs6mvNqLCTliOIV\" rel=\"nofollow ugc\">Finnish\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FNo6PdIJrbrk?si=2w2yJERXIhdSfqFb\" rel=\"nofollow ugc\">French\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FTvyHn8n9zr4?si=FSWSHd8YkW17V07u\" rel=\"nofollow ugc\">German\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FMMrkmhzVrNM?si=A0BM0Mq-gBgIQ-rT\" rel=\"nofollow ugc\">Greek\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FTCoaBMCusbE?si=eXACXPXZtAeC4J2P\" rel=\"nofollow ugc\">Hindi\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FyYNkJqbFGeo?si=VBkJrNck4_kPma-0\" rel=\"nofollow ugc\">Italian\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FH9jL6B9ZoRk?si=ZOoNKdxE67LMt4Sv\" rel=\"nofollow ugc\">Japanese\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FFGi68qYvzWg?si=zNZKYPUvf12FNxCz\" rel=\"nofollow ugc\">Korean\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FQkQ8fn7XZkY?si=Z4aEfcVHs05_AOLS\" rel=\"nofollow ugc\">Polish\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FW8lGMYeE-wQ?si=SorUAE_AVW8-ezKE\" rel=\"nofollow ugc\">Portuguese\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FePsri0sP99Y?si=l3JCik3Z-B0hg4CR\" rel=\"nofollow ugc\">Spanish\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>🔥 One free target language\u003C\u002Fh3>\n\u003Cp>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.\u003C\u002Fp>\n\u003Ch3>🧮 No word limits!\u003C\u002Fh3>\n\u003Cp>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!\u003C\u002Fp>\n\u003Ch3>🚀 Optimized for international search engines (SEO)\u003C\u002Fh3>\n\u003Cp>When you use wpLingua on your website, all elements of your content – even those that are invisible – are translated.\u003C\u002Fp>\n\u003Cp>wpLingua is “SEO-Friendly” because it takes care of translating:\u003C\u002Fp>\n\u003Cp>✓ Meta Title tags\u003Cbr \u002F>\n✓ Meta Description tags\u003Cbr \u002F>\n✓ Hreflang alternative links\u003Cbr \u002F>\n✓ Meta tags for social networks (Twitter X, OpenGraph Facebook…)\u003Cbr \u002F>\n✓ ALT attributes of images\u003Cbr \u002F>\n✓ And more.\u003C\u002Fp>\n\u003Cp>By optimizing indexing, we ensure that your translated pages are not only understood by your audience, but are also easily found by search engines.\u003C\u002Fp>\n\u003Ch3>🪄 Streamlined Setup Process\u003C\u002Fh3>\n\u003Cp>Forget about complex plugins to set up, wpLingua enhances the user experience of the multilingual world.\u003C\u002Fp>\n\u003Cp>All you need to do to get started is request your machine translation API key, then play with the language switcher appearance options!\u003C\u002Fp>\n\u003Cp>Let wpLingua take care of the technical aspects while you concentrate on creating compelling content for your international audience. Our commitment is \u003Cstrong>to make multilingual capabilities accessible and easy to use for all WordPress users\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch3>✍️ Tailor-made translations at your fingertips with our On-Page Editor\u003C\u002Fh3>\n\u003Cp>Although wpLingua gives you the convenience of \u003Cstrong>machine translations\u003C\u002Fstrong>, we understand the nuances of each language.\u003C\u002Fp>\n\u003Cp>wpLingua allows you \u003Cstrong>to fine-tune each translation manually\u003C\u002Fstrong> if you need to.\u003C\u002Fp>\n\u003Cp>Experience the fusion of automation and the personal touch with our \u003Cstrong>visual on-page editor\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch3>🔗 Editable URL translation\u003C\u002Fh3>\n\u003Cp>The plugin \u003Cstrong>automatically discovers URLs on your website and lets you translate them\u003C\u002Fstrong>. URLs are split into slugs (parts of the URL), making them easy to edit. This feature boosts SEO performance!\u003C\u002Fp>\n\u003Ch3>🎨 Fully customizable language switcher\u003C\u002Fh3>\n\u003Cp>wpLingua’s language switcher is fully customizable. You can display the language selector in four ways:\u003C\u002Fp>\n\u003Cp>✓ Automatic insertion via predefined positions.\u003Cbr \u002F>\n✓ Use a shortcode to display it wherever you like.\u003Cbr \u002F>\n✓ Insertion in the navigation menu using the design defined by the theme.\u003Cbr \u002F>\n✓ Insertion in the navigation menu from the site editor using the Gutenberg block named Language Switcher\u003C\u002Fp>\n\u003Cp>You can also control the appearance of the language switcher using:\u003C\u002Fp>\n\u003Cp>✓ Switcher styles (dropdown, inline, block…)\u003Cbr \u002F>\n✓ Predefined themes (light, dark, chameleon, etc.)\u003Cbr \u002F>\n✓ Configurable language names (translated name, original name, language ID, etc.)\u003Cbr \u002F>\n✓ Flag shapes (round, rectangle, wavy)\u003Cbr \u002F>\n✓ Language-based flag choices or import your own flag images\u003Cbr \u002F>\n✓ Adding custom CSS in a dedicated insert\u003C\u002Fp>\n\u003Cp>With all these customization options, there’s no way your website’s language switcher will look like any other!\u003C\u002Fp>\n\u003Ch3>📖 Translation rules by dictionary\u003C\u002Fh3>\n\u003Cp>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.\u003C\u002Fp>\n\u003Ch3>🖼️ Translation of links and media\u003C\u002Fh3>\n\u003Cp>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.\u003C\u002Fp>\n\u003Ch3>🧭 Intuitive possibilities to exclude certain translations\u003C\u002Fh3>\n\u003Cp>Navigate the complexities of website translation with wpLingua’s intelligent exclusion feature.\u003C\u002Fp>\n\u003Cp>Want to preserve specific sections of a page in its original language? Our system seamlessly allows you to pinpoint and \u003Cstrong>exclude translations using CSS selectors\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>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.\u003C\u002Fp>\n\u003Cp>With wpLingua, you’re always in command of what gets translated and what doesn’t, ensuring your website’s essence remains intact.\u003C\u002Fp>\n\u003Ch3>💫 Supported languages\u003C\u002Fh3>\n\u003Ch4>The plugin supports the following languages\u003C\u002Fh4>\n\u003Cp>Arabic ∘ Chinese ∘ Danish ∘ Dutch ∘ Slovak ∘ English ∘ Finnish ∘ French ∘ German ∘ Greek ∘ Hebrew ∘ Hindi ∘ Hungarian ∘ Indonesian ∘ Italian ∘ Japanese ∘ Korean ∘ Polish ∘ Portuguese ∘ Russian ∘ Spanish ∘ Swedish ∘ Turkish ∘ Ukrainian ∘ Vietnamese\u003C\u002Fp>\n\u003Ch4>The plugin is translated into the following languages\u003C\u002Fh4>\n\u003Cp>Danish ∘ Dutch ∘ English ∘ Finnish ∘ French ∘ German ∘ Hindi ∘ Hungarian ∘ Indonesian ∘ Italian ∘ Japanese ∘ Korean ∘ Portuguese ∘ Spanish ∘ Swedish\u003C\u002Fp>\n\u003Cp>You can contribute to the translation of the \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fwplingua\u002F\" rel=\"nofollow ugc\">wpLingua plugin on translate.wordpress.org\u003C\u002Fa> and contribute to the editing of \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjulien-jacob\u002Fwplingua\u002Ftree\u002Fdevelop\u002Flanguages\" rel=\"nofollow ugc\">PO\u002FMO translation files on GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>🔌 Theme and plugin compatibility\u003C\u002Fh3>\n\u003Cp>The method used by wpLingua to translate website texts ensures compatibility with most themes and plugins.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Compatible plugins tested:\u003C\u002Fstrong> 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…\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Compatible themes tested:\u003C\u002Fstrong> Divi, Twenty Twenty-One, Astra, OceanWP, Blocksy, Hello, GeneratePress, Neve, Envince, Twenty Twenty-Four, Twenty Twenty-Five, Poe, Neve FSE, Frost, Tove, and more…\u003C\u002Fp>\n\u003Ch3>⚡️ The wpLingua API\u003C\u002Fh3>\n\u003Cp>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 \u003Ca href=\"https:\u002F\u002Fwplingua.com\u002Fterms-and-conditions\u002F\" rel=\"nofollow ugc\">Terms & Conditions page\u003C\u002Fa> for more information.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Keywords\u003C\u002Fstrong>: wpLingua, WP Lingua, WP-Lingua, Multilingual, Bilingual, Translation, Translate, Translated, Translator, Localization, Automatic translation, Machine translation, Languages, Language switcher, Language selector, API, SEO, Custom flags\u003C\u002Fp>\n","Make your websites multilingual and translate them automatically: no word limits, editable translations, SEO-friendly, no coding knowledge needed",2000,43529,29,"2026-03-13T00:11:00.000Z","6.0","7.4",[18,19,20,51,21],"https:\u002F\u002Fwplingua.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwplingua.2.11.3.zip",{"slug":96,"name":97,"version":98,"author":99,"author_profile":100,"description":101,"short_description":102,"active_installs":103,"downloaded":104,"rating":25,"num_ratings":55,"last_updated":105,"tested_up_to":47,"requires_at_least":106,"requires_php":16,"tags":107,"homepage":110,"download_link":111,"security_score":112,"vuln_count":30,"unpatched_count":11,"last_vuln_date":113,"fetched_at":57},"smartcat-wpml","Smartcat Translator for WPML","3.1.77","smartcatai","https:\u002F\u002Fprofiles.wordpress.org\u002Fsmartcatai\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.smartcat.com\u002F?utm_source=connectors&utm_medium=referral&utm_campaign=wordpress\" rel=\"nofollow ugc\">Smartcat\u003C\u002Fa> connects linguists, companies, and agencies to streamline the translation of any content into any language, on demand. Our platform puts your translation process on autopilot, from content creation to payments.\u003C\u002Fp>\n\u003Cp>The plugin allows you to set up an integration between your WPML-enabled WordPress site and Smartcat. The integration itself is configured in Smartcat. Once configured, it will automatically pull translatable content from your website to Smartcat, where you can translate it with your own linguists or the ones you pick from our Marketplace. Alternatively, you can use the power of machine translation and post-edit just the most important pages to reduce translation costs. Once your content is translated, Smartcat will push it back to WordPress, instantly publishable in the target language(s) of choice.\u003C\u002Fp>\n\u003Ch3>Account & pricing\u003C\u002Fh3>\n\u003Cp>You first need to create a Smartcat account as one is not automatically created when installing the extension.\u003Cbr \u002F>\nTo create an account, go to \u003Ca href=\"https:\u002F\u002Fwww.smartcat.com\" rel=\"nofollow ugc\">smartcat.com\u003C\u002Fa>. All translation features in Smartcat are free to use.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Connect your WordPress website with a specific Smartcat account\u003C\u002Fli>\n\u003Cli>Choose the translation supplier from your own team or Smartcat Marketplace\u003C\u002Fli>\n\u003Cli>Automatically send new or updated content for translation\u003C\u002Fli>\n\u003Cli>Reuse existing translations thanks to Translation Memory\u003C\u002Fli>\n\u003Cli>Choose translation workflow stages — translation, editing, proofreading, etc.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Benefits of Smartcat\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>No document re-formatting required\u003C\u002Fli>\n\u003Cli>Easy-to-use multilingual translation editor\u003C\u002Fli>\n\u003Cli>Multi-stage translation process — e.g., translation, editing, proofreading\u003C\u002Fli>\n\u003Cli>Free collaboration with your own volunteers or coworkers\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.smartcat.com\u002Fmarketplace\u002F?utm_source=connectors&utm_medium=referral&utm_campaign=wordpress\" rel=\"nofollow ugc\">Marketplace\u003C\u002Fa>\u003Cbr \u002F>\n of 350,000+ translators and 2,000+ agencies in 100+ language pairs\u003C\u002Fli>\n\u003Cli>Track progress by language, document, or person\u003C\u002Fli>\n\u003Cli>Automated payments to translation suppliers\u003C\u002Fli>\n\u003Cli>Free support to optimize localization processes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Contact us at \u003Ca href=\"mailto:support@smartcat.com\" rel=\"nofollow ugc\">support@smartcat.com\u003C\u002Fa> with any questions related to:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Module issues\u003C\u002Fli>\n\u003Cli>Assistance in vendor management (freelancers or LSPs)\u003C\u002Fli>\n\u003Cli>Use of the module for your clients needs\u003C\u002Fli>\n\u003C\u002Ful>\n","The easiest way to translate your WPML-enabled WordPress site into various languages.",60,15979,"2026-03-13T07:35:00.000Z","5.3",[108,19,20,21,109],"languages","translator","https:\u002F\u002Fsmartcat.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsmartcat-wpml.3.1.77.zip",99,"2025-09-10 18:45:26",{"slug":115,"name":116,"version":117,"author":118,"author_profile":119,"description":120,"short_description":121,"active_installs":122,"downloaded":123,"rating":11,"num_ratings":11,"last_updated":124,"tested_up_to":125,"requires_at_least":126,"requires_php":13,"tags":127,"homepage":129,"download_link":130,"security_score":131,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":57},"icanlocalize-translator","ICanLocalize Translator","1.3.1","Amir Helzer","https:\u002F\u002Fprofiles.wordpress.org\u002Famirhelzer\u002F","\u003Cp>“ICanLocalize Translator” allows running multi-lingual WordPress websites (See the \u003Ca href=\"http:\u002F\u002Fmedia.icanlocalize.com\u002Fwp_translation_demos\u002Ficanlocalize-translator.htm\" rel=\"nofollow ugc\">5 minute demo\u003C\u002Fa>).\u003Cbr \u002F>\nIt helps maintain contents in different languages and automatically links between them.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Blog in your native language. Translations will be created automatically.\u003C\u002Fli>\n\u003Cli>Use different domains, \u003Ccode>www.myblog.com\u003C\u002Fcode>, \u003Ccode>es.myblog.com\u003C\u002Fcode>, \u003Ccode>de.myblog.com\u003C\u002Fcode> or directories within the same domain.\u003C\u002Fli>\n\u003Cli>Updates are handled automatically. When the original contents update, translations follow.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>WordPress supports contents in a single language. To make multi-lingual WordPress sites insensitive to upgrades and to other plugins,\u003Cbr \u002F>\nICanLocalize Translator doesn’t change any table structure and doesn’t alter permlinks. Instead, each language will run in its own WordPress instance.\u003C\u002Fp>\n\u003Ch4>Is this machine translation?\u003C\u002Fh4>\n\u003Cp>Unlike free machine translators, this plugin will send posts and pages to be translated by real people.\u003Cbr \u002F>\nYou can select from our pool of professional translators or assign the work to your favorite translator.\u003C\u002Fp>\n\u003Cp>This plugin works together with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Ficanlocalize-comment-translator\u002F\" rel=\"ugc\">ICanLocalize Comment Translator Plugin\u003C\u002Fa>.\u003Cbr \u002F>\nIt needs to be installed in the original-language blog. The Comment Translator plugin will be installed in the translated-language blog(s).\u003C\u002Fp>\n\u003Ch4>Running a multi-lingual site\u003C\u002Fh4>\n\u003Cp>Even though visitors read and comment in their languages, and You will do all your tasks (including comment moderation and replies) in your own language.\u003C\u002Fp>\n\u003Cp>Comment moderation in your language is handled by \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Ficanlocalize-comment-translator\u002F\" rel=\"ugc\">ICanLocalize Comment Translator Plugin\u003C\u002Fa> which needs to be install on each of the translated blogs.\u003C\u002Fp>\n\u003Cp>The plugin provides a function that you can include in your theme which automatically links between contents in different languages.\u003C\u002Fp>\n\u003Ch4>What gets translated\u003C\u002Fh4>\n\u003Cp>The plugin will automatically send all texts to be translated, including:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Posts\u003C\u002Fli>\n\u003Cli>Pages\u003C\u002Fli>\n\u003Cli>Tags\u003C\u002Fli>\n\u003Cli>Categories (names and descriptions)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Where can I see some examples?\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fblog-en.icanlocalize.com\" rel=\"nofollow ugc\">Our own blog\u003C\u002Fa> is being translated by our system from English to French.\u003Cbr \u002F>\nYou’re invited to \u003Ca href=\"http:\u002F\u002Fwww.icanlocalize.com\u002Fweb_dialogs\u002Fnew?language_id=1&store=4\" rel=\"nofollow ugc\">contact us\u003C\u002Fa> for other examples.\u003C\u002Fp>\n\u003Ch4>SitePress\u003C\u002Fh4>\n\u003Cp>This plugin is part of \u003Ca href=\"http:\u002F\u002Fsitepress.org\" rel=\"nofollow ugc\">SitePress\u003C\u002Fa> – a collection of plugins that turn WordPress into a fully featured multilingual content management system.\u003C\u002Fp>\n\u003Ch3>Version History\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Version 0.4\n\u003Cul>\n\u003Cli>First public release\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 0.5\n\u003Cul>\n\u003Cli>Improved support for page hierarchy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 0.6\n\u003Cul>\n\u003Cli>Works with WordPress MU\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 1.0\n\u003Cul>\n\u003Cli>Users can cancel translation jobs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 1.3\n\u003Cul>\n\u003Cli>Includes drop down language switcher that can be added to header.php.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 1.3.1\n\u003Cul>\n\u003Cli>Dropdown language selector now support IE6\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n","Allows running multilingual WordPress sites with zero management. Automatically creates and updates translation when you edit.",10,6526,"2009-02-05T19:19:00.000Z","2.7","2.5.1",[128,18,19,20,21],"i18n","http:\u002F\u002Fsitepress.org\u002Fwordpress-translation\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ficanlocalize-translator.1.3.1.zip",85,{"attackSurface":133,"codeSignals":476,"taintFlows":644,"riskAssessment":834,"analyzedAt":849},{"hooks":134,"ajaxHandlers":441,"restRoutes":473,"shortcodes":474,"cronEvents":475,"entryPointCount":122,"unprotectedCount":122},[135,141,146,149,151,154,157,161,164,167,170,173,176,179,182,185,188,191,194,197,200,203,206,209,212,215,218,221,224,227,230,233,236,239,242,245,248,251,254,257,260,263,266,269,272,275,277,280,283,286,289,292,295,298,301,304,307,310,313,316,319,322,325,328,331,334,337,340,343,346,349,352,355,358,361,364,367,370,373,376,379,382,384,387,390,393,396,399,402,405,408,411,414,417,420,423,427,430,433,435,437,439],{"type":136,"name":137,"callback":138,"file":139,"line":140},"action","widgets_init","g11n_language_chooser_widget","includes\\class-tmy-g11n-widget.php",53,{"type":136,"name":142,"callback":143,"file":144,"line":145},"plugins_loaded","anonymous","includes\\class-tmy-g11n.php",147,{"type":136,"name":147,"callback":143,"file":144,"line":148},"admin_enqueue_scripts",162,{"type":136,"name":147,"callback":143,"file":144,"line":150},163,{"type":136,"name":152,"callback":143,"file":144,"line":153},"admin_init",165,{"type":136,"name":155,"callback":143,"file":144,"line":156},"admin_menu",166,{"type":158,"name":159,"callback":143,"file":144,"line":160},"filter","rewrite_rules_array",177,{"type":158,"name":162,"callback":143,"file":144,"line":163},"views_edit-post",179,{"type":158,"name":165,"callback":143,"file":144,"line":166},"pre_update_option",180,{"type":158,"name":168,"callback":143,"file":144,"line":169},"manage_g11n_translation_posts_columns",192,{"type":158,"name":171,"callback":143,"file":144,"line":172},"manage_edit-g11n_translation_sortable_columns",193,{"type":136,"name":174,"callback":143,"file":144,"line":175},"manage_g11n_translation_posts_custom_column",194,{"type":158,"name":177,"callback":143,"file":144,"line":178},"manage_pages_columns",198,{"type":136,"name":180,"callback":143,"file":144,"line":181},"manage_pages_custom_column",199,{"type":158,"name":183,"callback":143,"file":144,"line":184},"manage_posts_columns",201,{"type":136,"name":186,"callback":143,"file":144,"line":187},"manage_posts_custom_column",202,{"type":136,"name":189,"callback":143,"file":144,"line":190},"pre_get_posts",205,{"type":136,"name":192,"callback":143,"file":144,"line":193},"admin_notices",213,{"type":136,"name":195,"callback":143,"file":144,"line":196},"admin_head",214,{"type":136,"name":198,"callback":143,"file":144,"line":199},"save_post",216,{"type":136,"name":201,"callback":143,"file":144,"line":202},"admin_head-nav-menus.php",218,{"type":136,"name":204,"callback":143,"file":144,"line":205},"category_edit_form",220,{"type":136,"name":207,"callback":143,"file":144,"line":208},"post_tag_edit_form",221,{"type":136,"name":210,"callback":143,"file":144,"line":211},"product_cat_edit_form",222,{"type":136,"name":213,"callback":143,"file":144,"line":214},"product_tag_edit_form",223,{"type":136,"name":216,"callback":143,"file":144,"line":217},"woocommerce_before_resend_order_emails",225,{"type":136,"name":219,"callback":143,"file":144,"line":220},"woocommerce_new_customer_note_notification",229,{"type":136,"name":222,"callback":143,"file":144,"line":223},"woocommerce_order_status_processing_to_cancelled_notification",231,{"type":136,"name":225,"callback":143,"file":144,"line":226},"woocommerce_order_status_on-hold_to_cancelled_notification",232,{"type":136,"name":228,"callback":143,"file":144,"line":229},"woocommerce_order_status_completed_notification",233,{"type":136,"name":231,"callback":143,"file":144,"line":232},"woocommerce_order_status_on-hold_to_processing_notification",234,{"type":136,"name":234,"callback":143,"file":144,"line":235},"woocommerce_order_fully_refunded_notification",235,{"type":136,"name":237,"callback":143,"file":144,"line":238},"woocommerce_order_partially_refunded_notification",236,{"type":136,"name":240,"callback":143,"file":144,"line":241},"woocommerce_order_status_on-hold_to_failed_notification",237,{"type":136,"name":243,"callback":143,"file":144,"line":244},"woocommerce_order_status_pending_to_failed_notification",238,{"type":136,"name":246,"callback":143,"file":144,"line":247},"woocommerce_order_status_pending_to_completed_notification",240,{"type":136,"name":249,"callback":143,"file":144,"line":250},"woocommerce_order_status_pending_to_on-hold_notification",241,{"type":136,"name":252,"callback":143,"file":144,"line":253},"woocommerce_order_status_pending_to_processing_notification",242,{"type":136,"name":255,"callback":143,"file":144,"line":256},"woocommerce_order_status_failed_to_on-hold_notification",243,{"type":136,"name":258,"callback":143,"file":144,"line":259},"woocommerce_order_status_failed_to_processing_notification",244,{"type":136,"name":261,"callback":143,"file":144,"line":262},"woocommerce_order_status_failed_to_completed_notification",245,{"type":136,"name":264,"callback":143,"file":144,"line":265},"woocommerce_order_status_cancelled_to_on-hold_notification",246,{"type":136,"name":267,"callback":143,"file":144,"line":268},"woocommerce_order_status_cancelled_to_processing_notification",247,{"type":136,"name":270,"callback":143,"file":144,"line":271},"woocommerce_order_status_cancelled_to_completed_notification",248,{"type":136,"name":273,"callback":143,"file":144,"line":274},"wp_enqueue_scripts",265,{"type":136,"name":273,"callback":143,"file":144,"line":276},266,{"type":136,"name":278,"callback":143,"file":144,"line":279},"wp_login",270,{"type":136,"name":281,"callback":143,"file":144,"line":282},"wp_logout",271,{"type":136,"name":284,"callback":143,"file":144,"line":285},"init",280,{"type":158,"name":287,"callback":143,"file":144,"line":288},"post_type_link",288,{"type":158,"name":290,"callback":143,"file":144,"line":291},"post_link",289,{"type":158,"name":293,"callback":143,"file":144,"line":294},"page_link",290,{"type":158,"name":296,"callback":143,"file":144,"line":297},"year_link",292,{"type":158,"name":299,"callback":143,"file":144,"line":300},"month_link",293,{"type":158,"name":302,"callback":143,"file":144,"line":303},"day_link",294,{"type":158,"name":305,"callback":143,"file":144,"line":306},"tag_link",296,{"type":158,"name":308,"callback":143,"file":144,"line":309},"category_link",297,{"type":158,"name":311,"callback":143,"file":144,"line":312},"search_link",298,{"type":158,"name":314,"callback":143,"file":144,"line":315},"term_link",300,{"type":136,"name":317,"callback":143,"file":144,"line":318},"wp_head",301,{"type":136,"name":320,"callback":143,"file":144,"line":321},"get_sidebar",306,{"type":136,"name":323,"callback":143,"file":144,"line":324},"dynamic_sidebar",308,{"type":136,"name":326,"callback":143,"file":144,"line":327},"edit_form_after_title",310,{"type":136,"name":329,"callback":143,"file":144,"line":330},"wp_footer",313,{"type":158,"name":332,"callback":143,"file":144,"line":333},"pre_get_document_title",315,{"type":158,"name":335,"callback":143,"file":144,"line":336},"bloginfo",317,{"type":158,"name":338,"callback":143,"file":144,"line":339},"the_title",318,{"type":158,"name":341,"callback":143,"file":144,"line":342},"the_content",319,{"type":158,"name":344,"callback":143,"file":144,"line":345},"the_posts",322,{"type":158,"name":347,"callback":143,"file":144,"line":348},"wpml_object_id",324,{"type":158,"name":350,"callback":143,"file":144,"line":351},"fusion_layout_section_id",325,{"type":158,"name":353,"callback":143,"file":144,"line":354},"avada_menu_meta",326,{"type":158,"name":356,"callback":143,"file":144,"line":357},"fusion_shortcode_content",327,{"type":158,"name":359,"callback":143,"file":144,"line":360},"fusion_builder_default_args",328,{"type":158,"name":362,"callback":143,"file":144,"line":363},"pre_option_blogname",330,{"type":158,"name":365,"callback":143,"file":144,"line":366},"pre_option_blogdescription",331,{"type":158,"name":368,"callback":143,"file":144,"line":369},"pre_update_option_blogname",333,{"type":158,"name":371,"callback":143,"file":144,"line":372},"pre_update_option_blogdescription",334,{"type":158,"name":374,"callback":143,"file":144,"line":375},"locale",336,{"type":158,"name":377,"callback":143,"file":144,"line":378},"query_vars",339,{"type":158,"name":380,"callback":143,"file":144,"line":381},"use_block_editor_for_post",342,{"type":136,"name":284,"callback":143,"file":144,"line":383},345,{"type":158,"name":385,"callback":143,"file":144,"line":386},"fusion_faq_all_filter_name",350,{"type":158,"name":388,"callback":143,"file":144,"line":389},"option_widget_block",366,{"type":158,"name":391,"callback":143,"file":144,"line":392},"option_woocommerce_cheque_settings",368,{"type":158,"name":394,"callback":143,"file":144,"line":395},"option_woocommerce_cod_settings",369,{"type":158,"name":397,"callback":143,"file":144,"line":398},"woocommerce_cart_item_name",370,{"type":158,"name":400,"callback":143,"file":144,"line":401},"woocommerce_order_item_name",371,{"type":158,"name":403,"callback":143,"file":144,"line":404},"woocommerce_attribute_label",372,{"type":136,"name":406,"callback":143,"file":144,"line":407},"woocommerce_new_order",374,{"type":158,"name":409,"callback":143,"file":144,"line":410},"nav_menu_item_title",375,{"type":158,"name":412,"callback":143,"file":144,"line":413},"nav_menu_item_filter",378,{"type":158,"name":415,"callback":143,"file":144,"line":416},"wp_nav_menu_items",379,{"type":158,"name":418,"callback":143,"file":144,"line":419},"wp_nav_menu_objects",380,{"type":158,"name":421,"callback":143,"file":144,"line":422},"wpseo_metadesc",385,{"type":158,"name":365,"callback":424,"priority":122,"file":425,"line":426},"g11n_pre_get_option_blogdescription","public\\class-tmy-g11n-public.php",767,{"type":158,"name":335,"callback":428,"priority":122,"file":425,"line":429},"g11n_wp_title_filter",811,{"type":158,"name":362,"callback":431,"priority":122,"file":425,"line":432},"g11n_pre_get_option_blogname",812,{"type":158,"name":335,"callback":428,"priority":122,"file":425,"line":434},1417,{"type":158,"name":365,"callback":424,"priority":122,"file":425,"line":436},1418,{"type":158,"name":335,"callback":428,"priority":122,"file":425,"line":438},1454,{"type":158,"name":362,"callback":431,"priority":122,"file":425,"line":440},1455,[442,446,449,452,455,458,461,464,467,470],{"action":443,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":445},"tmy_create_server_project",false,168,{"action":447,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":448},"tmy_create_clear_plugin_data",169,{"action":450,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":451},"tmy_get_project_status",170,{"action":453,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":454},"tmy_get_local_translation_status",171,{"action":456,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":457},"tmy_create_sync_translation",172,{"action":459,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":460},"tmy_get_post_translation_status",173,{"action":462,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":463},"tmy_admin_save_changes",174,{"action":465,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":466},"tmy_g11n_admin_slugs_ops",175,{"action":468,"nopriv":444,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":469},"tmy_g11n_frontend_jquery_call",283,{"action":468,"nopriv":471,"callback":143,"hasNonce":444,"hasCapCheck":444,"file":144,"line":472},true,284,[],[],[],{"dangerousFunctions":477,"sqlUsage":482,"outputEscaping":510,"fileOperations":55,"externalRequests":640,"nonceChecks":641,"capabilityChecks":642,"bundledLibraries":643},[478],{"fn":479,"file":480,"line":268,"context":481},"unserialize","admin\\include\\class-tmy-g11n-table.php","$meta_value_var=unserialize($row[\"meta_value\"]);",{"prepared":483,"raw":484,"locations":485},27,11,[486,490,492,494,496,498,500,502,504,506,508],{"file":487,"line":488,"context":489},"admin\\class-tmy-g11n-admin.php",1793,"$wpdb->get_results() with variable interpolation",{"file":487,"line":491,"context":489},1796,{"file":487,"line":493,"context":489},1799,{"file":487,"line":495,"context":489},1889,{"file":487,"line":497,"context":489},2068,{"file":487,"line":499,"context":489},2541,{"file":487,"line":501,"context":489},2773,{"file":487,"line":503,"context":489},2774,{"file":487,"line":505,"context":489},2775,{"file":487,"line":507,"context":489},3045,{"file":487,"line":509,"context":489},3472,{"escaped":511,"rawEcho":512,"locations":513},497,63,[514,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,563,565,567,569,571,573,575,577,579,581,583,585,587,589,591,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638],{"file":487,"line":515,"context":516},421,"raw output",{"file":487,"line":518,"context":516},423,{"file":487,"line":520,"context":516},493,{"file":487,"line":522,"context":516},566,{"file":487,"line":524,"context":516},584,{"file":487,"line":526,"context":516},613,{"file":487,"line":528,"context":516},623,{"file":487,"line":530,"context":516},655,{"file":487,"line":532,"context":516},667,{"file":487,"line":534,"context":516},678,{"file":487,"line":536,"context":516},816,{"file":487,"line":538,"context":516},971,{"file":487,"line":540,"context":516},982,{"file":487,"line":542,"context":516},1003,{"file":487,"line":544,"context":516},1011,{"file":487,"line":546,"context":516},1018,{"file":487,"line":548,"context":516},1032,{"file":487,"line":550,"context":516},1033,{"file":487,"line":552,"context":516},1041,{"file":487,"line":554,"context":516},1049,{"file":487,"line":556,"context":516},1079,{"file":487,"line":558,"context":516},1084,{"file":487,"line":560,"context":516},1189,{"file":487,"line":562,"context":516},1190,{"file":487,"line":564,"context":516},1192,{"file":487,"line":566,"context":516},1193,{"file":487,"line":568,"context":516},1258,{"file":487,"line":570,"context":516},1292,{"file":487,"line":572,"context":516},1294,{"file":487,"line":574,"context":516},1332,{"file":487,"line":576,"context":516},1634,{"file":487,"line":578,"context":516},1660,{"file":487,"line":580,"context":516},1667,{"file":487,"line":582,"context":516},1668,{"file":487,"line":584,"context":516},1671,{"file":487,"line":586,"context":516},1686,{"file":487,"line":588,"context":516},1690,{"file":487,"line":590,"context":516},1756,{"file":487,"line":86,"context":516},{"file":487,"line":593,"context":516},2019,{"file":487,"line":595,"context":516},2585,{"file":487,"line":597,"context":516},2761,{"file":487,"line":599,"context":516},3062,{"file":487,"line":601,"context":516},3067,{"file":487,"line":603,"context":516},3075,{"file":487,"line":605,"context":516},3079,{"file":487,"line":607,"context":516},3082,{"file":487,"line":609,"context":516},3280,{"file":487,"line":611,"context":516},3283,{"file":487,"line":613,"context":516},3295,{"file":487,"line":615,"context":516},3304,{"file":487,"line":617,"context":516},3313,{"file":487,"line":619,"context":516},3388,{"file":487,"line":621,"context":516},3414,{"file":487,"line":623,"context":516},3854,{"file":139,"line":625,"context":516},17,{"file":425,"line":627,"context":516},362,{"file":425,"line":629,"context":516},506,{"file":425,"line":631,"context":516},507,{"file":425,"line":633,"context":516},561,{"file":425,"line":635,"context":516},1582,{"file":425,"line":637,"context":516},1583,{"file":425,"line":639,"context":516},2301,8,5,6,[],[645,661,687,705,716,725,738,746,759],{"entryPoint":646,"graph":647,"unsanitizedCount":30,"severity":660},"tmy_get_post_translation_status (admin\\class-tmy-g11n-admin.php:1999)",{"nodes":648,"edges":658},[649,653],{"id":650,"type":651,"label":652,"file":487,"line":86},"n0","source","$_POST['id']",{"id":654,"type":655,"label":656,"file":487,"line":86,"wp_function":657},"n1","sink","echo() [XSS]","echo",[659],{"from":650,"to":654,"sanitized":444},"medium",{"entryPoint":662,"graph":663,"unsanitizedCount":30,"severity":660},"tmy_g11n_create_server_project (admin\\class-tmy-g11n-admin.php:2380)",{"nodes":664,"edges":683},[665,668,670,674,678],{"id":650,"type":651,"label":666,"file":487,"line":667},"$_POST",2401,{"id":654,"type":655,"label":656,"file":487,"line":669,"wp_function":657},2403,{"id":671,"type":651,"label":672,"file":487,"line":673},"n2","$_POST['proj_name']",2400,{"id":675,"type":676,"label":677,"file":487,"line":673},"n3","transform","→ _tmy_g11n_create_server_project()",{"id":679,"type":655,"label":680,"file":487,"line":681,"wp_function":682},"n4","wp_remote_post() [SSRF]",2359,"wp_remote_post",[684,685,686],{"from":650,"to":654,"sanitized":471},{"from":671,"to":675,"sanitized":444},{"from":675,"to":679,"sanitized":444},{"entryPoint":688,"graph":689,"unsanitizedCount":55,"severity":660},"tmy_plugin_g11n_admin_notice (admin\\class-tmy-g11n-admin.php:3270)",{"nodes":690,"edges":701},[691,693,694,696,697,699],{"id":650,"type":651,"label":692,"file":487,"line":613},"$_REQUEST['start_sync_tranlations']",{"id":654,"type":655,"label":656,"file":487,"line":613,"wp_function":657},{"id":671,"type":651,"label":695,"file":487,"line":615},"$_REQUEST['start_html_tranlations']",{"id":675,"type":655,"label":656,"file":487,"line":615,"wp_function":657},{"id":679,"type":651,"label":698,"file":487,"line":617},"$_REQUEST['apply_html_translations']",{"id":700,"type":655,"label":656,"file":487,"line":617,"wp_function":657},"n5",[702,703,704],{"from":650,"to":654,"sanitized":444},{"from":671,"to":675,"sanitized":444},{"from":679,"to":700,"sanitized":444},{"entryPoint":706,"graph":707,"unsanitizedCount":11,"severity":715},"tmy_l10n_text_page (admin\\class-tmy-g11n-admin.php:1253)",{"nodes":708,"edges":713},[709,712],{"id":650,"type":651,"label":710,"file":487,"line":711},"$_REQUEST['page']",1273,{"id":654,"type":655,"label":656,"file":487,"line":711,"wp_function":657},[714],{"from":650,"to":654,"sanitized":471},"low",{"entryPoint":717,"graph":718,"unsanitizedCount":11,"severity":715},"tmy_l10n_taxonomy_page (admin\\class-tmy-g11n-admin.php:1327)",{"nodes":719,"edges":723},[720,722],{"id":650,"type":651,"label":710,"file":487,"line":721},1350,{"id":654,"type":655,"label":656,"file":487,"line":721,"wp_function":657},[724],{"from":650,"to":654,"sanitized":471},{"entryPoint":726,"graph":727,"unsanitizedCount":11,"severity":715},"tmy_g11n_frontend_jquery_call (public\\class-tmy-g11n-public.php:1989)",{"nodes":728,"edges":736},[729,732],{"id":650,"type":651,"label":730,"file":425,"line":731},"$_POST (x5)",2012,{"id":654,"type":655,"label":733,"file":425,"line":734,"wp_function":735},"get_results() [SQLi]",2025,"get_results",[737],{"from":650,"to":654,"sanitized":471},{"entryPoint":739,"graph":740,"unsanitizedCount":11,"severity":715},"\u003Cclass-tmy-g11n-public> (public\\class-tmy-g11n-public.php:0)",{"nodes":741,"edges":744},[742,743],{"id":650,"type":651,"label":730,"file":425,"line":731},{"id":654,"type":655,"label":733,"file":425,"line":734,"wp_function":735},[745],{"from":650,"to":654,"sanitized":471},{"entryPoint":747,"graph":748,"unsanitizedCount":30,"severity":758},"tmy_create_sync_translation (admin\\class-tmy-g11n-admin.php:2005)",{"nodes":749,"edges":755},[750,752,754],{"id":650,"type":651,"label":666,"file":487,"line":751},2016,{"id":654,"type":676,"label":753,"file":487,"line":751},"→ _tmy_create_sync_dep_translation()",{"id":671,"type":655,"label":733,"file":487,"line":497,"wp_function":735},[756,757],{"from":650,"to":654,"sanitized":444},{"from":654,"to":671,"sanitized":444},"high",{"entryPoint":760,"graph":761,"unsanitizedCount":833,"severity":758},"\u003Cclass-tmy-g11n-admin> (admin\\class-tmy-g11n-admin.php:0)",{"nodes":762,"edges":818},[763,765,766,767,768,771,772,775,777,779,784,786,788,790,792,794,796,799,801,803,806,809,812,814,816],{"id":650,"type":651,"label":764,"file":487,"line":711},"$_REQUEST['page'] (x2)",{"id":654,"type":655,"label":656,"file":487,"line":711,"wp_function":657},{"id":671,"type":651,"label":652,"file":487,"line":86},{"id":675,"type":655,"label":656,"file":487,"line":86,"wp_function":657},{"id":679,"type":651,"label":769,"file":487,"line":770},"$_POST (x3)",2010,{"id":700,"type":655,"label":733,"file":487,"line":497,"wp_function":735},{"id":773,"type":651,"label":774,"file":487,"line":667},"n6","$_POST (x8)",{"id":776,"type":655,"label":656,"file":487,"line":669,"wp_function":657},"n7",{"id":778,"type":651,"label":666,"file":487,"line":770},"n8",{"id":780,"type":655,"label":781,"file":487,"line":782,"wp_function":783},"n9","wp_remote_get() [SSRF]",3213,"wp_remote_get",{"id":785,"type":651,"label":692,"file":487,"line":613},"n10",{"id":787,"type":655,"label":656,"file":487,"line":613,"wp_function":657},"n11",{"id":789,"type":651,"label":695,"file":487,"line":615},"n12",{"id":791,"type":655,"label":656,"file":487,"line":615,"wp_function":657},"n13",{"id":793,"type":651,"label":698,"file":487,"line":617},"n14",{"id":795,"type":655,"label":656,"file":487,"line":617,"wp_function":657},"n15",{"id":797,"type":651,"label":798,"file":487,"line":751},"n16","$_POST (x2)",{"id":800,"type":676,"label":753,"file":487,"line":751},"n17",{"id":802,"type":655,"label":733,"file":487,"line":497,"wp_function":735},"n18",{"id":804,"type":651,"label":666,"file":487,"line":805},"n19",2229,{"id":807,"type":676,"label":808,"file":487,"line":805},"n20","→ push_contents_to_translation_server()",{"id":810,"type":655,"label":680,"file":811,"line":268,"wp_function":682},"n21","includes\\class-tmy-g11n-translator.php",{"id":813,"type":651,"label":672,"file":487,"line":673},"n22",{"id":815,"type":676,"label":677,"file":487,"line":673},"n23",{"id":817,"type":655,"label":680,"file":487,"line":681,"wp_function":682},"n24",[819,820,821,822,823,824,825,826,827,828,829,830,831,832],{"from":650,"to":654,"sanitized":471},{"from":671,"to":675,"sanitized":471},{"from":679,"to":700,"sanitized":471},{"from":773,"to":776,"sanitized":471},{"from":778,"to":780,"sanitized":471},{"from":785,"to":787,"sanitized":471},{"from":789,"to":791,"sanitized":471},{"from":793,"to":795,"sanitized":471},{"from":797,"to":800,"sanitized":444},{"from":800,"to":802,"sanitized":444},{"from":804,"to":807,"sanitized":444},{"from":807,"to":810,"sanitized":444},{"from":813,"to":815,"sanitized":444},{"from":815,"to":817,"sanitized":444},4,{"summary":835,"deductions":836},"The tmy-globalization plugin version 2.3.0 exhibits a concerning security posture due to a significant number of unprotected AJAX handlers. While the plugin demonstrates good practices in output escaping and a reasonable percentage of prepared SQL statements, the lack of authentication checks on all its AJAX entry points creates a broad attack surface. This suggests a potential for unauthorized actions or data manipulation if these handlers can be triggered by unauthenticated users.\n\nThe taint analysis reveals two high-severity flows with unsanitized paths. This is a critical concern as it indicates potential vulnerabilities where user-supplied input could be processed in an unsafe manner, potentially leading to code execution or other severe impacts. The absence of any recorded vulnerability history might suggest a lack of past exploitation or disclosure, but it does not negate the risks identified in the static analysis.\n\nIn conclusion, the plugin has strengths in areas like output escaping and SQL preparation. However, the substantial number of unprotected AJAX handlers and the presence of high-severity taint flows are significant weaknesses that warrant immediate attention. The lack of known CVEs is positive, but the identified code signals demand remediation to ensure a robust security posture.",[837,839,842,844,846],{"reason":838,"points":122},"Unprotected AJAX handlers present",{"reason":840,"points":841},"High severity taint flows with unsanitized paths",12,{"reason":843,"points":641},"Dangerous function 'unserialize' used",{"reason":845,"points":55},"Some SQL queries not using prepared statements",{"reason":847,"points":848},"File operations without clear context",2,"2026-03-17T05:52:51.700Z",{"wat":851,"direct":864},{"assetPaths":852,"generatorPatterns":857,"scriptPaths":858,"versionParams":859},[853,854,855,856],"\u002Fwp-content\u002Fplugins\u002Ftmy-globalization\u002Fcss\u002Ftmy-g11n-admin-slugs-page.css","\u002Fwp-content\u002Fplugins\u002Ftmy-globalization\u002Fcss\u002Ftmy-g11n-admin.css","\u002Fwp-content\u002Fplugins\u002Ftmy-globalization\u002Fjs\u002Ftmy-g11n-admin-slugs-page.js","\u002Fwp-content\u002Fplugins\u002Ftmy-globalization\u002Fjs\u002Ftmy-g11n-admin.js",[],[],[860,861,862,863],"tmy-g11n-admin-slugs-page.css?ver=","tmy-g11n-admin.css?ver=","tmy-g11n-admin-slugs-page.js?ver=","tmy-g11n-admin.js?ver=",{"cssClasses":865,"htmlComments":866,"htmlAttributes":867,"restEndpoints":868,"jsGlobals":869,"shortcodeOutput":870},[],[],[],[],[],[]]