[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f95J9HxcPTkoAmSJqJ_kxKayA8eTQDhtxQGIPuybnfV4":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":36,"analysis":141,"fingerprints":172},"hreflang-for-polylang","Hreflang for polylang","1.2","Marco Giannini","https:\u002F\u002Fprofiles.wordpress.org\u002Fgianemi2\u002F","\u003Cp>Just install this plugin for print:\u003C\u002Fp>\n\u003Cp>link rel=”alternate” hreflang=”the language” href=”the url”\u003C\u002Fp>\n\u003Cp>This plugin needs Polylang for working.\u003Cbr \u002F>\nNo WPML supports.\u003C\u002Fp>\n\u003Cp>This plugin needs Polylang to be activated for working.\u003C\u002Fp>\n\u003Cp>This plugin auto prints all the alternate language of the current page. If no alternate language found it prints the homepage alternate URL.\u003C\u002Fp>\n","Auto print in header the link alternate hreflang of all the language in the website.",100,72118,0,"2017-05-15T12:33:00.000Z","4.7.32","3.8","",[19,20,21,22,23],"alternate","hreflang","link-alternate","multilanguage","polylang","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fhreflang-to-polylang","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fhreflang-for-polylang.1.2.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},"gianemi2",1,30,84,"2026-04-05T09:59:29.578Z",[37,60,81,99,121],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":45,"downloaded":46,"rating":47,"num_ratings":48,"last_updated":49,"tested_up_to":50,"requires_at_least":51,"requires_php":52,"tags":53,"homepage":17,"download_link":57,"security_score":58,"vuln_count":32,"unpatched_count":13,"last_vuln_date":59,"fetched_at":28},"theme-translation-for-polylang","Theme and plugin translation for Polylang (TTfP)","3.4.9","Marcin Kazmierski","https:\u002F\u002Fprofiles.wordpress.org\u002Fmarcinkazmierski\u002F","\u003Ch4>What is “Theme and plugin translation for Polylang”?\u003C\u002Fh4>\n\u003Cp>Extension for Polylang plugin (Polylang is an extension to make multilingual WordPress websites.).\u003Cbr \u002F>\nPlugin is needed to translate the WordPress themes and plugins by Polylang.\u003C\u002Fp>\n\u003Ch4>How to configure it?\u003C\u002Fh4>\n\u003Cp>Select themes and plugins to find texts for translation by Polylang.\u003Cbr \u002F>\nIn admin dashboard:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Languages -> TTfP Settings\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>How it is work?\u003C\u002Fh4>\n\u003Cp>“Theme and plugin translation for Polylang” automatically searches all files of WordPress themes and plugins. It chooses from this file only those files with extensions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>php\u003C\u002Fli>\n\u003Cli>inc\u003C\u002Fli>\n\u003Cli>twig\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In addition, is implemented the integration with Timber library (read more: http:\u002F\u002Ftimber.upstatement.com) – which allows to translate twig’s skins in simple way.\u003Cbr \u002F>\nPlugin in searched skins or plugins chooses texts from Polylang functions, such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>_e(string $text, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>__(string $text, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>_x(string $text, string $context, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>pll_e(string $text);\u003C\u002Fli>\n\u003Cli>pll__(string $text);\u003C\u002Fli>\n\u003Cli>esc_html(string $text);\u003C\u002Fli>\n\u003Cli>esc_html_e(string $text, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>esc_html__(string $text, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>_n(string $single, string $plural, int $number, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>esc_attr_e(string $text, string $domain = ‘default’);\u003C\u002Fli>\n\u003Cli>esc_attr__(string $text, string $domain = ‘default’);\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In your function.php, themes or plugins.\u003C\u002Fp>\n\u003Cp>For example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cp>\u003C?php pll_e('My text'); ?>\u003C\u002Fp>\n\n\u003Cp>\u003C?php _e('My another text', 'my_theme'); ?>\u003C\u002Fp>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>On the timber context declare this functions like:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$context['pll_e'] = TimberHelper::function_wrapper('pll_e');\n\n$context['pll_'] = TimberHelper::function_wrapper('pll_');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>See more on: \u003Ccode>https:\u002F\u002Fpolylang.wordpress.com\u002Fdocumentation\u002Fdocumentation-for-developers\u002Ffunctions-reference\u002F\u003C\u002Fcode>\u003Cbr \u002F>\nThese functions are defined by Polylang plugin for printing translations.\u003Cbr \u002F>\nThanks “Theme and plugin translation for Polylang” you can find these strings to translate and add to Polylang register on very simple way.\u003Cbr \u002F>\nAnd then you can translate these texts from the admin dashboard.\u003Cbr \u002F>\nThe scan result can be seen on the tab with translations:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Settings -> Languages -> String translation\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>or\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Languages -> String translation\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You don’t need programs like poedit – you don’t change files with extensions like: \u003Ccode>.pot\u003C\u002Fcode>, \u003Ccode>.po\u003C\u002Fcode>, \u003Ccode>.mo\u003C\u002Fcode>.\u003Cbr \u002F>\n“Theme and plugin translation for Polylang” is highly efficient because the scanner is worked only on admin dashboard in tab:\u003Cbr \u002F>\nIn dashboard:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Settings -> Languages -> String translation\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>or\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Languages -> String translation\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Export and import string translation\u003C\u002Fh4>\n\u003Cp>In dashboard:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Languages -> TTfP Settings\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Filter reference\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>ttfp_domains\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Allows plugins and themes (in functions.php) to modify list of text domains (unique identifier for retrieving translated strings).\u003Cbr \u002F>\nList of text domains is displayed on “TTfP Settings” page to select them for translation by polylang engine.\u003C\u002Fp>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter('ttfp_domains', 'custom_ttfp_domains', 10, 1);\nfunction custom_ttfp_domains(array $domains):array\n {\n     $domains[] = \"my-custom-domain\";\n     return $domains;\n }\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Filter reference\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>ttfp_translation_access\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Returns whether the user has capability to view and edit translations provided by TTfP.\u003C\u002Fp>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter('ttfp_translation_access', 'custom_ttfp_translation_access', 10, 1);\nfunction custom_ttfp_translation_access(bool $hasAccess):bool\n {\n     return current_user_can('edit_posts');\n }\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Theme and plugin translation using Polylang for WordPress. Extension for Polylang plugin.",10000,269744,94,35,"2025-03-15T15:35:00.000Z","6.6.5","5.7","7.0",[54,22,23,55,56],"languages","translate","translation","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftheme-translation-for-polylang.3.4.9.zip",92,"2022-11-28 00:00:00",{"slug":61,"name":62,"version":63,"author":64,"author_profile":65,"description":66,"short_description":67,"active_installs":68,"downloaded":69,"rating":70,"num_ratings":71,"last_updated":72,"tested_up_to":73,"requires_at_least":74,"requires_php":17,"tags":75,"homepage":79,"download_link":80,"security_score":58,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"juiz-lang-attributes","Juiz Lang Attribute","1.3.1","Geoffrey","https:\u002F\u002Fprofiles.wordpress.org\u002Fcreativejuiz\u002F","\u003Cp>To improve your SEO and the accessibility of your content, you must declare changes of language within your content.\u003Cbr \u002F>\nYou must also declare translations of your pages to Google to avoid duplicate content.\u003C\u002Fp>\n\u003Cp>TinyMCE: For the people still in this old editor, buttons are available to add \u003Ccode>lang\u003C\u002Fcode> and \u003Ccode>hreflang\u003C\u002Fcode> attributes on your content, therefore to improve accessibility when screen readers are reading words from different languages than your main page language.\u003C\u002Fp>\n\u003Cp>Gutenberg: For Gutenberg users, WordPress already provide the “Language” menu. When selecting a text you can add a specific language. This plugin will enhance this behaviour with its own command, and by remembering the last language code you used.\u003Cbr \u002F>\nThis plugin also comes with a hreflang option that you can put on links to tell users “this link lead to a French website” for example.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Example of cases you need this plugin:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>You translated a blog post in your language from another blog, (hreflang alternate links)\u003C\u002Fli>\n\u003Cli>You publish the same article in 2 languages on 2 different websites, (hreflang alternate links)\u003C\u002Fli>\n\u003Cli>You use in your content a jargon from another language. (\u003Ccode>lang\u003C\u002Fcode> attribute)\u003C\u002Fli>\n\u003Cli>You link from your post other posts in another language. (\u003Ccode>hreflang\u003C\u002Fcode> attribute)\u003C\u002Fli>\n\u003Cli>Your Menus have some items not translated (\u003Ccode>lang\u003C\u002Fcode> attributes) or lead to page in another language (\u003Ccode>hreflang\u003C\u002Fcode>), you can edit those attributes in the Menus admin-menu. (\u003Cstrong>WordPress 5.4\u003C\u002Fstrong> compatibility) If you have a FSE (Full Site Editing) theme, I don’t know how this will work for you, but you can use the Gutenberg commands this plugin put at your disposal.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Features available\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Custom \u003Ccode>hreflang\u003C\u002Fcode> alternate links for posts (page, and custom posts)\u003C\u002Fli>\n\u003Cli>Attributes \u003Ccode>hreflang\u003C\u002Fcode> and \u003Ccode>lang\u003C\u002Fcode> available and visible in the editor\u003C\u002Fli>\n\u003Cli>Attributes \u003Ccode>hreflang\u003C\u002Fcode> and \u003Ccode>lang\u003C\u002Fcode> available on your main Menus items. (\u003Cstrong>WordPress 5.4\u003C\u002Fstrong> compatibility)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Known bugs\u003C\u002Fh3>\n\u003Cp>In old version of Gutenberg, the \u003Ccode>hreflang\u003C\u002Fcode> attribute on links is applied, but never save it in database. That is because \u003Ccode>hreflang\u003C\u002Fcode> is cleaned from WordPress posts. Indeed, it was not well recognized by the WordPress post sanitizing function.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>You can donate to support\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.paypal.com\u002Fcgi-bin\u002Fwebscr?cmd=_donations&business=P39NJPCWVXGDY&lc=FR&item_name=Juiz%20Lang%20Attributes2d%20WP%20Plugin&item_number=%23wp%2djla&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted\" rel=\"nofollow ugc\">Donate what you want with Paypal\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Please, use the support forum to tell me bugs encountered, and be patient\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>Other plugins\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjuiz-social-post-sharer\u002F\" rel=\"ugc\">Juiz Social Post Sharer\u003C\u002Fa>\u003C\u002Fstrong>: if you need social buttons.\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Ffr.wordpress.org\u002Fplugins\u002Fjuiz-outdated-post-message\u002F\" rel=\"nofollow ugc\">Juiz Outdated Post Message\u003C\u002Fa>\u003C\u002Fstrong>: if you want to put a warning on old post on your blog.\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fembed-can-i-use\u002F\" rel=\"ugc\">Embed Can I Use\u003C\u002Fa>\u003C\u002Fstrong>: if you talk about support of HTML 5, CSS3 or JS API, you need to embed Can I Use support tables.\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsocial-integration-for-bluesky\u002F\" rel=\"ugc\">Social integration for BlueSky\u003C\u002Fa>\u003C\u002Fstrong>: Add a Profile Banner, a list of your recent BlueSky Posts, or an auto syndication on BlueSky with this plugin.\u003C\u002Fp>\n","Add a custom HREFLANG meta box on your post to manually edit the link between your post and a translation (which could be outside your domain).",1000,4992,50,4,"2024-12-28T18:14:00.000Z","6.7.5","4.5",[19,76,20,77,78],"attribute","lang","seo","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fjuiz-lang","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjuiz-lang-attributes.zip",{"slug":82,"name":83,"version":84,"author":85,"author_profile":86,"description":87,"short_description":88,"active_installs":89,"downloaded":90,"rating":11,"num_ratings":32,"last_updated":91,"tested_up_to":92,"requires_at_least":93,"requires_php":17,"tags":94,"homepage":17,"download_link":98,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"language-option-for-acf4-fields","Language option for ACF4+ Fields","1.3.0","VoiD2008","https:\u002F\u002Fprofiles.wordpress.org\u002Fvoid2008\u002F","\u003Cp>This plugin allows to select language for fields to be shown.\u003Cbr \u002F>\nWPML,xili-language,Polylang plugins supported.\u003C\u002Fp>\n\u003Ch3>Contribute\u003C\u002Fh3>\n\u003Cp>If you find this useful and you if you want to contribute, there are three ways:\u003C\u002Fp>\n\u003Col>\n\u003Cli>You can write me (void2008dev[at]gmail.com or \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FVoiD2008\u002Facf_wpml_fields\" rel=\"nofollow ugc\">here\u003C\u002Fa>) and submit your bug reports, suggestions and requests for features;\u003C\u002Fli>\n\u003Cli>Using the plugin is free, but if you want you can send me some money with PayPal \u003Ca href=\"https:\u002F\u002Fwww.paypal.com\u002Fcgi-bin\u002Fwebscr?cmd=_s-xclick&hosted_button_id=WBHZUEALQ2RAN\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Fol>\n","Adding language option to ACF fields plugin.",10,2532,"2014-09-03T02:08:00.000Z","3.9.40","3.0",[95,22,23,96,97],"acf","wpml","xili","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flanguage-option-for-acf4-fields.1.3.0.zip",{"slug":100,"name":101,"version":102,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":107,"downloaded":108,"rating":109,"num_ratings":70,"last_updated":110,"tested_up_to":111,"requires_at_least":112,"requires_php":113,"tags":114,"homepage":119,"download_link":120,"security_score":11,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"connect-polylang-elementor","Connect Polylang for Elementor","2.5.5","David Decker","https:\u002F\u002Fprofiles.wordpress.org\u002Fdaveshine\u002F","\u003Cp>Connect Polylang multilingual plugin with Elementor Page Builder: \u003Cstrong>Translate your Elementor templates\u003C\u002Fstrong> and show them in the correct language, native customizable \u003Cstrong>Language Switcher Elementor widget\u003C\u002Fstrong>, \u003Cstrong>Visibility Conditions\u003C\u002Fstrong> of widgets and \u003Cstrong>Dynamic Tags\u003C\u002Fstrong> by language and much more…\u003C\u002Fp>\n\u003Ch3>What the Plugin Does\u003C\u002Fh3>\n\u003Ch4>📍 Template translation and show in the correct language\u003C\u002Fh4>\n\u003Cp>Create translations for your Elementor templates especially for header, footer or archive templates with \u003Ca href=\"https:\u002F\u002Fbe.elementor.com\u002Fvisit\u002F?bta=61741&brand=elementor&utm_campaign=wporg\" rel=\"nofollow ugc\">\u003Cstrong>Elementor Pro Theme Builder\u003C\u002Fstrong>\u003C\u002Fa> \u003Cem>(affiliated link)\u003C\u002Fem>.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Automatically selects the correct translation for \u003Ca href=\"https:\u002F\u002Felementor.com\u002Fhelp\u002Ftemplate-widget-pro\u002F\" rel=\"nofollow ugc\">“Template Widget”\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Automatically selects the correct translation for \u003Ccode>[elementor-template id=\"1234\"]\u003C\u002Fcode> shortcodes.\u003C\u002Fli>\n\u003Cli>Allow Elementor Kit translation for different settings for each language.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>🔄 Language Switcher\u003C\u002Fh4>\n\u003Cp>A native Elementor Widget to easily build a nice and fully customizable language switcher:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Show or hide flags, language name, language code.\u003C\u002Fli>\n\u003Cli>Vertical list, Horizontal list or \u003Cstrong>styled dropdown\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SVG scalable flags\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\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\u002F7DUh-bggJBs?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>\u003C\u002Fp>\n\u003Ch4>👁️ Language Visibility Conditions\u003C\u002Fh4>\n\u003Cp>Allow to \u003Cstrong>show or hide every widget\u003C\u002Fstrong>, section or column \u003Cstrong>by language\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>🏷️ Language Dynamic Tags\u003C\u002Fh4>\n\u003Cp>Use language dynamic tags (on Elementor Pro) that you can set with an specific language or the “current” one. Available tags are:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Language Code\u003C\u002Fstrong> tag type text\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Language Name\u003C\u002Fstrong> tag type text\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Language Url\u003C\u002Fstrong> tag type url\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Language Flag\u003C\u002Fstrong> tag type image\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>✏️ Elementor Editor integration\u003C\u002Fh4>\n\u003Cp>Now you can view the language of the current template and change to its translations or create them \u003Cstrong>from the Elementor editor\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>🔍 Elementor Finder integration\u003C\u002Fh4>\n\u003Cp>From Elementor Finder you can access to Polylang settings pages and go the site in the selected language.\u003C\u002Fp>\n\u003Ch4>🔨 Plugins integration fixes and tweaks\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Automatically generate display conditions on new template translation.\u003C\u002Fli>\n\u003Cli>Automatically generate Elementor CSS styles on create new template translation.\u003C\u002Fli>\n\u003Cli>Fix home url to the current language on site-url Dynamic Tag and Search Form widget.\u003C\u002Fli>\n\u003Cli>Add language url trailing slash.\u003C\u002Fli>\n\u003Cli>Hide language on wp-admin for global widgets.\u003C\u002Fli>\n\u003Cli>Other integration fixes.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fcoolplugins.net\u002Fproduct\u002Fautopoly-ai-translation-for-polylang\u002F?ref=creame&utm_source=cpel_plugin&utm_medium=readme&utm_campaign=get_pro&utm_content=bottom_link\" rel=\"nofollow ugc\">AI-powered translation for Polylang\u003C\u002Fa> — AutoPoly instantly translates your Elementor, Gutenberg, and ACF content in one click while keeping your design exactly the same. \u003Ca href=\"https:\u002F\u002Fcoolplugins.net\u002Fproduct\u002Fautopoly-ai-translation-for-polylang\u002F?ref=creame&utm_source=cpel_plugin&utm_medium=readme&utm_campaign=get_pro&utm_content=bottom_link\" rel=\"nofollow ugc\">Check it now (affiliated link)\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>How to use\u003C\u002Fh3>\n\u003Cp>You can manage translated templates in two ways:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>(recommended)\u003C\u002Fstrong> create linked translations for a template and only set display conditions on the default language.\u003C\u002Fli>\n\u003Cli>create separated translations for a template with their own display conditions.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>See an example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>Site languages:\n - EN (main)\n - ES\n - IT\n\n- Option 1 (linked translations only main language has display conditions):\n╔═ Archive Template A (EN) -> condition category is \"Red (EN)\"\n╠═ Archive Template A (ES) -> none (in front checks if category is ES translation of \"Red (EN)\")\n╚═ Archive Template A (IT) -> none (in front checks if category is IT translation of \"Red (EN)\")\n\n- Option 2 (not linked translations, all languages has display conditions):\n══ Archive Template B (EN) -> condition category is \"Red (EN)\"\n══ Archive Template B (ES) -> condition category is \"Rojo (ES)\"\n══ Archive Template B (IT) -> condition category is \"Rosso (IT)\"\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fconnect-polylang-elementor\" rel=\"ugc\">\u003Cstrong>Plugin’s support forum\u003C\u002Fstrong>\u003C\u002Fa> here on WordPress.org\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcreame\u002Fconnect-polylang-elementor\" rel=\"nofollow ugc\">Github plugin repo\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fgroups\u002Fpolylang.users\u002F\" rel=\"nofollow ugc\">Polylang User Community Group at Facebook\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What is covered by our support?\u003C\u002Fstrong> – All regarding \u003Cstrong>THIS plugin\u003C\u002Fstrong> (“Connect Polylang for Elementor”), plus the relation to \u003Cem>Polylang\u003C\u002Fem>, \u003Cem>Polylang Pro\u003C\u002Fem>, \u003Cem>Elementor\u003C\u002Fem> and \u003Cem>Elementor Pro\u003C\u002Fem> of course.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What is NOT covered by support?\u003C\u002Fstrong> – Anything general regarding multilingual topics and WordPress. Explicitely we \u003Cstrong>DO NOT\u003C\u002Fstrong> offer any “WPML”, “WPBakery” or “Visual Composer” support, and also not for your theme etc.!!!\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Translations\u003C\u002Fh3>\n\u003Cp>We have used the strings of Elementor and Polylang whenever possible to take advantage of the fact that they are translated into many languages. For the other strings a \u003Ccode>.pot\u003C\u002Fcode> file (\u003Ccode>connect-polylang-elementor.pot\u003C\u002Fcode>) for translators is also always included 🙂\u003C\u002Fp>\n\u003Cp>You can collaborate with your language translations in \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fconnect-polylang-elementor\" rel=\"nofollow ugc\">Translating WordPress\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>The following code\u002Fclasses are licensed under the GPL.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>v2. refactor and upgrade by \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fpacotole\u002F\" rel=\"nofollow ugc\">Pacotole\u003C\u002Fa> at \u003Ca href=\"https:\u002F\u002Fcrea.me\" rel=\"nofollow ugc\">Creame\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>v2.1 Cross domain fixes based on work of \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fkeraweb\u002F\" rel=\"nofollow ugc\">Jory Hogeveen\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnicmare\" rel=\"nofollow ugc\">nicmare\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Support \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fp4fbradjohnson\u002F\" rel=\"nofollow ugc\">Brad Johnson\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>v1. released by \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fdaveshine\u002F\" rel=\"nofollow ugc\">David Decker\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>v1. Polylang Switcher class (Elementor Widget) and its CSS based on widget from plugin “Language Switcher for Elementor” by Solitweb (GPLv2 or later)\u003C\u002Fli>\n\u003Cli>SVG flags from \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmadebybowtie\u002FFlagKit\" rel=\"nofollow ugc\">FlagKit\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fwikipedia.org\u002F\" rel=\"nofollow ugc\">Wikipedia\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please, send your suggestions and feedback – Thank you for using or trying out this plugin!\u003C\u002Fp>\n","Connect Polylang with Elementor: translated templates, language switcher widget, language visibility conditions and more",100000,2039612,96,"2025-12-31T09:49:00.000Z","6.9.4","5.4","5.6",[115,116,117,118,23],"dynamic-tags","elementor","language-switcher","multilingual","https:\u002F\u002Fgithub.com\u002Fcreame\u002Fconnect-polylang-elementor","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fconnect-polylang-elementor.2.5.5.zip",{"slug":122,"name":123,"version":124,"author":125,"author_profile":126,"description":127,"short_description":128,"active_installs":45,"downloaded":129,"rating":130,"num_ratings":131,"last_updated":132,"tested_up_to":111,"requires_at_least":133,"requires_php":134,"tags":135,"homepage":139,"download_link":140,"security_score":11,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"acf-options-for-polylang","ACF Options For Polylang","2.0.0","Amaury Balmer","https:\u002F\u002Fprofiles.wordpress.org\u002Fmomo360modena\u002F","\u003Cp>Are you using Advanced Custom Fields for option pages and Polylang for your multilingual site?\u003C\u002Fp>\n\u003Cp>Polylang does not natively support ACF Option Pages, so option values are shared across all languages. This plugin improves that: once activated, you can set different values per language. Values are stored per language in the database and the correct one is loaded according to the current Polylang language. If a value isn’t set for a language, the “All languages” value is used by default.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> On activation, existing option values become temporarily unavailable (but remain in the database); you can recover them by deactivating the plugin. To edit options for a language, use the Polylang language switcher in the admin bar before opening the options page.\u003C\u002Fp>\n\u003Cp>Requirements: WordPress 6.0+, PHP 7.4–8.4, \u003Ca href=\"https:\u002F\u002Fwww.advancedcustomfields.com\u002Fpro\" rel=\"nofollow ugc\">Advanced Custom Fields\u003C\u002Fa> 5.6.0+, \u003Ca href=\"https:\u002F\u002Fpolylang.pro\u002F\" rel=\"nofollow ugc\">Polylang\u003C\u002Fa> (tested up to 3.7.7).\u003C\u002Fp>\n\u003Cp>For full documentation (usage, filters, API, excluding pages, default fallback, loading untranslated values), see the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FBeAPI\u002Facf-options-for-polylang#readme\" rel=\"nofollow ugc\">project README on GitHub\u003C\u002Fa>.\u003C\u002Fp>\n","Improves Polylang by adding per-language support for ACF options pages—each language can have its own option values.",204386,88,17,"2026-03-04T10:12:00.000Z","6.0","7.4",[95,136,137,138,23],"option","options","options-page","https:\u002F\u002Fgithub.com\u002FBeAPI\u002Facf-options-for-polylang","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Facf-options-for-polylang.2.0.0.zip",{"attackSurface":142,"codeSignals":154,"taintFlows":164,"riskAssessment":165,"analyzedAt":171},{"hooks":143,"ajaxHandlers":150,"restRoutes":151,"shortcodes":152,"cronEvents":153,"entryPointCount":13,"unprotectedCount":13},[144],{"type":145,"name":146,"callback":147,"file":148,"line":149},"action","wp_head","printAlternate","hreflang_for_polylang.php",46,[],[],[],[],{"dangerousFunctions":155,"sqlUsage":156,"outputEscaping":158,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":163},[],{"prepared":13,"raw":13,"locations":157},[],{"escaped":13,"rawEcho":32,"locations":159},[160],{"file":148,"line":161,"context":162},38,"raw output",[],[],{"summary":166,"deductions":167},"The \"hreflang-for-polylang\" plugin v1.2 exhibits a generally strong security posture based on the provided static analysis.  The absence of any identified attack surface points, dangerous functions, file operations, or external HTTP requests is a positive indicator. Furthermore, all SQL queries utilize prepared statements, mitigating the risk of SQL injection vulnerabilities. The lack of any recorded CVEs or past vulnerabilities is also encouraging.\n\nHowever, a significant concern arises from the output escaping analysis.  With one total output identified and 0% properly escaped, this indicates a clear risk of cross-site scripting (XSS) vulnerabilities. Any data processed and displayed by this plugin that is not properly sanitized before output could be exploited by attackers to inject malicious scripts into users' browsers.  The lack of any capability checks or nonce checks, while not directly indicated as a risk due to the absence of an attack surface, means that if any entry points were to be introduced in future versions, they would be unprotected.\n\nIn conclusion, while the plugin has a clean vulnerability history and avoids many common pitfalls, the critical lack of output escaping presents a tangible security risk.  Addressing this specific issue should be the immediate priority to improve the plugin's overall security. The absence of known vulnerabilities suggests good development practices in other areas, but the XSS potential needs urgent attention.",[168],{"reason":169,"points":170},"Unescaped output identified",6,"2026-03-16T20:51:17.516Z",{"wat":173,"direct":178},{"assetPaths":174,"generatorPatterns":175,"scriptPaths":176,"versionParams":177},[],[],[],[],{"cssClasses":179,"htmlComments":180,"htmlAttributes":181,"restEndpoints":182,"jsGlobals":183,"shortcodeOutput":184},[],[],[],[],[],[]]