[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$frUfDoW39seeBkyLQBK2MI7x1z6R2LFkveCXBC3GSkNw":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":21,"download_link":22,"security_score":23,"vuln_count":13,"unpatched_count":13,"last_vuln_date":24,"fetched_at":25,"vulnerabilities":26,"developer":27,"crawl_stats":24,"alternatives":34,"analysis":152,"fingerprints":199},"electric-studio-cross-linker","Electric Studio Cross-linker","1.0","James Irving-Swift","https:\u002F\u002Fprofiles.wordpress.org\u002Firvingswiftj\u002F","\u003Cp>This plugin makes any phrases in a post that match the title of another post into a link to that post.\u003C\u002Fp>\n","Inserts cross linking into your site from post names",10,3278,0,"2011-05-06T09:11:00.000Z","3.1.4","3.0","",[19,20],"cross-linking","tags","http:\u002F\u002Fwww.electricstudio.co.uk\u002F2010\u002F09\u002Felectric-studio-cross-linking-plugin-for-wordpress\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Felectric-studio-cross-linker.1.0.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":28,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":23,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},"irvingswiftj",5,290,30,84,"2026-04-04T04:25:34.158Z",[35,60,84,105,131],{"slug":36,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":45,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":57,"download_link":58,"security_score":59,"vuln_count":13,"unpatched_count":13,"last_vuln_date":24,"fetched_at":25},"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,50,"2025-12-31T09:49:00.000Z","6.9.4","5.4","5.6",[52,53,54,55,56],"dynamic-tags","elementor","language-switcher","multilingual","polylang","https:\u002F\u002Fgithub.com\u002Fcreame\u002Fconnect-polylang-elementor","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fconnect-polylang-elementor.2.5.5.zip",100,{"slug":61,"name":62,"version":63,"author":64,"author_profile":65,"description":66,"short_description":67,"active_installs":43,"downloaded":68,"rating":69,"num_ratings":70,"last_updated":71,"tested_up_to":48,"requires_at_least":72,"requires_php":73,"tags":74,"homepage":80,"download_link":81,"security_score":82,"vuln_count":11,"unpatched_count":13,"last_vuln_date":83,"fetched_at":25},"vk-all-in-one-expansion-unit","VK All in One Expansion Unit","9.113.4.1","Hidekazu Ishikawa","https:\u002F\u002Fprofiles.wordpress.org\u002Fkurudrive\u002F","\u003Cp>This plug-in is an integrated plug-in with a variety of features that make it powerful your web site.\u003C\u002Fp>\n\u003Cp>Many features can be stopped individually.\u003C\u002Fp>\n\u003Cp>[ Powerful　Widgets ]\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Recent Posts – display the link text and the date of the latest article title.\u003C\u002Fli>\n\u003Cli>Page content to widget – display the contents of the page to the widgets.\u003C\u002Fli>\n\u003Cli>Profile – display the profile entered in the widget.\u003C\u002Fli>\n\u003Cli>FB Page Plugin – display the Facebook Page Plugin.\u003C\u002Fli>\n\u003Cli>3PR area – display the 3PR area.\u003C\u002Fli>\n\u003Cli>PR Blocks – display the PR Blocks.\u003C\u002Fli>\n\u003Cli>Categories\u002Ftags list – Displays a categories, tags or format list.\u003C\u002Fli>\n\u003Cli>Archive list – Displays a list of archives. You can choose the post type and also to display archives by month or by year.\u003C\u002Fli>\n\u003Cli>Facebook Page Plugin widget\u003C\u002Fli>\n\u003Cli>Image Banner widget\u003C\u002Fli>\n\u003Cli>Text Button widget\u003C\u002Fli>\n\u003Cli>Contact Button widget\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>[ Gutenberg Blocks ]\u003C\u002Fp>\n\u003Cul>\n\u003Cli>HTML SiteMap\u003C\u002Fli>\n\u003Cli>Child Page List\u003C\u002Fli>\n\u003Cli>Page list from ancestor\u003C\u002Fli>\n\u003Cli>Share Button\u003C\u002Fli>\n\u003Cli>Contact Section\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>[ Social media ]\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Print Social Bookmarks\u003C\u002Fli>\n\u003Cli>Print OG Tags\u003C\u002Fli>\n\u003Cli>Print X Card Tags\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>[ Others ]\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Print Google Analytics tag\u003C\u002Fli>\n\u003Cli>Print meta description tag\u003C\u002Fli>\n\u003Cli>Rewrite the title tag\u003C\u002Fli>\n\u003Cli>Insert Related Posts\u003C\u002Fli>\n\u003Cli>Insert Call to action\u003C\u002Fli>\n\u003Cli>Insert Child page List to page\u003C\u002Fli>\n\u003Cli>Insert Page list from ancestor\u003C\u002Fli>\n\u003Cli>Insert Auto HTML Site Map\u003C\u002Fli>\n\u003Cli>Automatic Eye Catch insert\u003C\u002Fli>\n\u003Cli>Custom post type and custom taxonomy manager\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>and more.\u003C\u002Fp>\n","This plug-in is an integrated plug-in with a variety of features that make it powerful your web site.",7987014,80,7,"2026-03-09T17:15:00.000Z","6.5","7.4",[75,76,77,78,79],"facebook-page-plugin","google-analytics","og-tags","related-posts","sitemap","https:\u002F\u002Fex-unit.nagoya","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvk-all-in-one-expansion-unit.9.113.4.1.zip",95,"2026-02-17 16:43:06",{"slug":85,"name":86,"version":87,"author":88,"author_profile":89,"description":90,"short_description":91,"active_installs":43,"downloaded":92,"rating":93,"num_ratings":94,"last_updated":95,"tested_up_to":48,"requires_at_least":16,"requires_php":49,"tags":96,"homepage":17,"download_link":102,"security_score":82,"vuln_count":103,"unpatched_count":13,"last_vuln_date":104,"fetched_at":25},"widget-logic","Widget Logic","6.0.9","Widgetlogic.org","https:\u002F\u002Fprofiles.wordpress.org\u002Fwidgetlogics\u002F","\u003Cp>This plugin gives every widget an extra control field called “Widget logic” that lets you control the pages that the widget will appear on. The text field lets you use WP’s \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FConditional_Tags\" rel=\"nofollow ugc\">Conditional Tags\u003C\u002Fa>, or any general PHP code.\u003C\u002Fp>\n\u003Cp>The configuring and options are in the usual widget admin interface.\u003C\u002Fp>\n\u003Cp>BIG UPDATE:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Now you can control widget in Gutenberg Widgets editor as well as in Classic Editor. It is just as easy as before but also in gutenberg view.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Pre-installed widgets let you add special widget with one click of the mouse. First pre-installed widget is Live Match that let you add widget of one random live football game with real time score updates (teams logos, livescore, minute of the match, tournament name). And more interesting widgets to come!\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>NOTE ON DEFAULT FUNCTIONS:\u003C\u002Fstrong> Widget Logic includes a whitelist of common WordPress conditional tags and safe functions. If you need additional WordPress functions that are not currently whitelisted, please create a topic in our \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fwidget-logic\u002F\" rel=\"ugc\">support forum\u003C\u002Fa> to request them. We regularly add commonly requested functions in new releases.\u003C\u002Fp>\n\u003Ch4>Configuration\u003C\u002Fh4>\n\u003Cp>Aside from logic against your widgets, there are three options added to the foot of the widget admin page (see screenshots).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Use ‘wp_reset_query’ fix — Many features of WP, as well as the many themes and plugins out there, can mess with the conditional tags, such that is_home is NOT true on the home page. This can often be fixed with a quick wp_reset_query() statement just before the widgets are called, and this option puts that in for you rather than having to resort to code editing\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Load logic — This option allows you to set the point in the page load at which your widget logic if first checked. Pre v.50 it was when the ‘wp_head’ trigger happened, ie during the creation of the HTML’s HEAD block. Many themes didn’t call wp_head, which was a problem. From v.50 it happens, by default, as early as possible, which is as soon as the plugin loads. You can now specify these ‘late load’ points (in chronological order):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>after the theme loads (after_setup_theme trigger)\u003C\u002Fli>\n\u003Cli>when all PHP loaded (wp_loaded trigger)\u003C\u002Fli>\n\u003Cli>after query variables set (parse_query) – this is the default\u003C\u002Fli>\n\u003Cli>during page header (wp_head trigger)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You may need to delay the load if your logic depends on functions defined, eg in the theme functions.php file. Conversely you may want the load early so that the widget count is calculated correctly, eg to show an alternative layour or content when a sidebar has no widgets.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Don’t cache widget logic results — From v .58 the widget logic code should only execute once, but that might cause unexpected results with some themes, so this option is here to turn that behaviour off. (The truth\u002Ffalse of the code will be evaluated every time the sidebars_widgets filter is called.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Custom PHP Functions — From v.6.0.6 you can use the \u003Ccode>widget_logic_allowed_functions\u003C\u002Fcode> filter to add custom PHP functions that will be allowed in Widget Logic fields. By default, only WordPress conditional tags and a whitelist of safe functions are available. This filter allows you to extend the functionality and use your own custom functions.\u003C\u002Fp>\n\u003Cp>To add a custom function, add the following code to your theme’s \u003Ccode>functions.php\u003C\u002Fcode> file:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter('widget_logic_allowed_functions', 'my_allowed_functions');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>function my_allowed_functions($functions) {\u003Cbr \u002F>\n    $functions[] = ‘\u003Cem>my_custom_function_name\u003C\u002Fem>‘;\u003Cbr \u002F>\n    return $functions;\u003Cbr \u002F>\n}`\u003C\u002Fp>\n\u003Cp>You can add multiple functions by using one wrapper function:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter('widget_logic_allowed_functions', 'my_allowed_functions');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>function my_allowed_functions($functions) {\u003Cbr \u002F>\n    $functions[] = ‘is_special_page’;\u003Cbr \u002F>\n    $functions[] = ‘is_user_verified’;\u003Cbr \u002F>\n    $functions[] = ‘get_sidebar_title’;\u003Cbr \u002F>\n    return $functions;\u003Cbr \u002F>\n}`\u003C\u002Fp>\n\u003Cp>\u003Cstrong>IMPORTANT NOTE ON VARIABLES:\u003C\u002Fstrong> Widget Logic is designed to work with simple data types (strings, numbers, booleans). If you need to use complex variables, global state, or conditional logic that depends on many factors, create a custom function in your theme’s \u003Ccode>functions.php\u003C\u002Fcode> file and call it from Widget Logic:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Good approach (in functions.php):\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`function is_special_page() {\nglobal $post;\n$special_ids = array(5, 10, 15);\n$conditions = some_complex_function();\n\nreturn is_page() && in_array($post->ID, $special_ids) && $conditions;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>}`\u003C\u002Fp>\n\u003Cp>Then in Widget Logic field, simply use: \u003Ccode>is_special_page()\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Less ideal approach (in Widget Logic field):\u003C\u002Fstrong>\u003Cbr \u002F>\nAvoid putting complex logic directly in the Widget Logic field. Keep it simple and let your custom function handle the complexity. This keeps your widget settings clean and maintainable.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Interaction with External Services\u003C\u002Fh4>\n\u003Cp>Widget Logic uses the external service to obtain up-to-date information about the results of football matches. \u003Ca href=\"https:\u002F\u002Fwidgetlogic.org\" rel=\"nofollow ugc\">widgetlogic.org\u003C\u002Fa> is a source of sports information, that provides a wide range of information about football, including various leagues, tournaments, and championships from around the world.\u003C\u002Fp>\n\u003Cp>The functioning of the \u003Ca href=\"https:\u002F\u002Fwidgetlogic.org\" rel=\"nofollow ugc\">widgetlogic.org\u003C\u002Fa> service is based on delivering real-time data about selected matches without the need to refresh the page. This means that data is automatically updated without requiring page reload. This approach ensures users quick and uninterrupted access to the latest sports data without the effort of manually updating information, allowing them to stay informed about ongoing events in real-time.\u003C\u002Fp>\n\u003Ch3>Writing Logic Code\u003C\u002Fh3>\n\u003Cp>The text in the ‘Widget logic’ field can be full PHP code and should return ‘true’ when you need the widget to appear. If there is no ‘return’ in the text, an implicit ‘return’ is added to the start and a ‘;’ is added on the end. (This is just to make single statements like is_home() more convenient.)\u003C\u002Fp>\n\u003Ch4>The Basics\u003C\u002Fh4>\n\u003Cp>Make good use of \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FConditional_Tags\" rel=\"nofollow ugc\">WP’s own conditional tags\u003C\u002Fa>. You can vary and combine code using:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>!\u003C\u002Fcode> (NOT) to \u003Cstrong>reverse\u003C\u002Fstrong> the logic, eg \u003Ccode>!is_home()\u003C\u002Fcode> is TRUE when this is NOT the home page.\u003C\u002Fli>\n\u003Cli>\u003Ccode>||\u003C\u002Fcode> (OR) to \u003Cstrong>combine\u003C\u002Fstrong> conditions. \u003Ccode>X OR Y\u003C\u002Fcode> is TRUE when either X is true or Y is true.\u003C\u002Fli>\n\u003Cli>\u003Ccode>&&\u003C\u002Fcode> (AND) to make conditions \u003Cstrong>more specific\u003C\u002Fstrong>. \u003Ccode>X AND Y\u003C\u002Fcode> is TRUE when both X is true and Y is true.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>There are lots of great code examples on the WP forums, and on WP sites across the net. But the WP Codex is also full of good examples to adapt, such as \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FTemplate_Tags\u002Fin_category#Testing_if_a_post_is_in_a_descendant_category\" rel=\"nofollow ugc\">Test if post is in a descendent category\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>is_home()\u003C\u002Fcode> — just the main blog page\u003C\u002Fli>\n\u003Cli>\u003Ccode>!is_page('about')\u003C\u002Fcode> — everywhere EXCEPT this specific WP ‘page’\u003C\u002Fli>\n\u003Cli>\u003Ccode>!is_user_logged_in()\u003C\u002Fcode> — shown when a user is not logged in\u003C\u002Fli>\n\u003Cli>\u003Ccode>is_category(array(5,9,10,11))\u003C\u002Fcode> — category page of one of the given category IDs\u003C\u002Fli>\n\u003Cli>\u003Ccode>is_single() && in_category('baked-goods')\u003C\u002Fcode> — single post that’s in the category with this slug\u003C\u002Fli>\n\u003Cli>\u003Ccode>current_user_can('level_10')\u003C\u002Fcode> — admin only widget\u003C\u002Fli>\n\u003Cli>\u003Ccode>strpos($_SERVER['HTTP_REFERER'], \"google.com\")!=false\u003C\u002Fcode> — widget to show when clicked through from a google search\u003C\u002Fli>\n\u003Cli>\u003Ccode>is_category() && custom_function_to_check_the_category()\u003C\u002Fcode> — category page that’s a descendent of category 5\u003C\u002Fli>\n\u003Cli>\u003Ccode>custom_function_from_functions_php_to_check_the_page()\u003C\u002Fcode> — WP page that is a child of page 77\u003C\u002Fli>\n\u003Cli>\u003Ccode>custom_function_from_functions_php_to_check_the_page_child_of(13)\u003C\u002Fcode> — home page OR the page that’s a child of page 13\u003C\u002Fli>\n\u003C\u002Ful>\n","Widget Logic lets you control on which pages widgets appear using WP's conditional tags.",3242040,88,188,"2026-01-15T09:43:00.000Z",[97,98,99,100,101],"blocks","conditional-tags","gutenberg-widgets","sidebar","widget","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwidget-logic.6.0.9.zip",2,"2025-06-09 00:00:00",{"slug":106,"name":107,"version":108,"author":109,"author_profile":110,"description":111,"short_description":112,"active_installs":113,"downloaded":114,"rating":115,"num_ratings":116,"last_updated":117,"tested_up_to":118,"requires_at_least":119,"requires_php":50,"tags":120,"homepage":126,"download_link":127,"security_score":128,"vuln_count":129,"unpatched_count":13,"last_vuln_date":130,"fetched_at":25},"enhanced-media-library","Enhanced Media Library","2.9.4","webbistro","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebbistro\u002F","\u003Cp>\u003Cstrong>Handy for those who need to manage a lot of media files.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fsupport\" rel=\"nofollow ugc\">Known Issues :: Support\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fdocuments\u002Fenhanced-media-library\u002Fchangelog\" rel=\"nofollow ugc\">Changelog\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fdocuments\u002Fenhanced-media-library\" rel=\"nofollow ugc\">Usage Guide :: How to\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fdocuments\u002Fenhanced-media-library\u002Ffaqs-2\" rel=\"nofollow ugc\">FAQs\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fplugins\u002Fenhanced-media-library-pro\" rel=\"nofollow ugc\">Premium Features\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Officially! \u003Cstrong>EML 3.0 Early Beta\u003C\u002Fstrong> is available for testing\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fplugins\u002Fenhanced-media-library-3-0\" rel=\"nofollow ugc\">Give it a try\u003C\u002Fa>, share feedback, report bugs, and \u003Cstrong>help the developer\u003C\u002Fstrong> to deliver it promptly!\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Categorize by Anything!\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Unlimited \u003Cstrong>categories & tags\u003C\u002Fstrong> for media items\u003C\u002Fli>\n\u003Cli>Unlimited \u003Cstrong>custom taxonomies:\u003C\u002Fstrong> create in a few clicks\u003C\u002Fli>\n\u003Cli>Unlimited \u003Cstrong>third-party taxonomies:\u003C\u002Fstrong> assign to the media library\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Configurable Filters\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Show \u002F hide\u003C\u002Fstrong> data, author, taxonomy filters\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Per taxonomy\u003C\u002Fstrong> filters\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configurable outcome\u003C\u002Fstrong> of the filtering: include \u002F exclude child categories\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Enhanced Media Library\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Show captions:\u003C\u002Fstrong> title, filename, or caption field for each media item\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bulk selection:\u003C\u002Fstrong> no special mode anymore, faster editing\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Drag’n’Drop re-order\u003C\u002Fstrong> right in the media library\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Infinite scroll\u003C\u002Fstrong> and manageable loads per page options\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Dynamic Galleries \u002F Playlists\u003C\u002Fh3>\n\u003Cp>Additional parameters for the [gallery] and [playlist] shortcodes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>media_category\u003C\u002Fcode> or any other taxonomy\u003C\u002Fli>\n\u003Cli>\u003Ccode>monthnum\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>year\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>limit\u003C\u002Fcode> of media items to show\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>MIME Types Management\u003C\u002Fh3>\n\u003Cp>Add or remove file types, allow or disallow uploading. The plugin incorporates a file type into media filters if you wish.\u003C\u002Fp>\n\u003Ch3>Feels Native to WordPress\u003C\u002Fh3>\n\u003Cp>We spent hours to make Enhanced Media Library operates as though it were native WordPress functionality. All plugin features are incorporated into WordPress UI seamlessly.\u003C\u002Fp>\n\u003Ch3>Developer-Friendly\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Core hooks just work\u003C\u002Fstrong> for media taxonomies and media items\u003C\u002Fli>\n\u003Cli>\u003Cstrong>All taxonomies supported:\u003C\u002Fstrong> custom and code-registered\u003C\u002Fli>\n\u003Cli>\u003Cstrong>REST API supported\u003C\u002Fstrong> out of the box\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No custom tables\u003C\u002Fstrong> in the database\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Deactivation makes no harm to data:\u003C\u002Fstrong> all media items and taxonomies remain after deactivation\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Export \u002F Import \u002F Restore Plugin Settings\u003C\u002Fh3>\n\u003Cp>If you need to move your media library to another website you should export and import WordPress content with WordPress built-in export\u002Fimport. But to make the Enhanced Media Library work on the new site with the same settings you are provided with the export\u002Fimport feature.\u003C\u002Fp>\n\u003Ch3>Multisite compatible\u003C\u002Fh3>\n\u003Cp>Network activate the plugin and choose which options will be available to your admins. In the PRO version, the license key should be activated once for the whole network.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.wpuxsolutions.com\u002Fplugins\u002Fenhanced-media-library\" rel=\"nofollow ugc\">More about the basic version on wpUXsolutions.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Enhanced Media Library PRO\u003C\u002Fh3>\n\u003Cp>Additional comfort and even more convenient way to organize WordPress media library:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Unlimited & Super-Fast\u003C\u002Fstrong> Bulk Edit\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User-friendly\u003C\u002Fstrong> dynamic galleries \u002F playlists: all options set with dropdowns and checkboxes, no “coding”\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Advanced search:\u003C\u002Fstrong> filter media items by just typing the first letters of its name in the search field\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Auto-Categorize\u003C\u002Fstrong> for post media items\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.wpuxsolutions.com\u002Fplugins\u002Fenhanced-media-library-pro\" rel=\"nofollow ugc\">More about the premium version on wpUXsolutions.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Support is free for both versions of the plugin. “PRO”-users do not have priority. We do our best to respond in 24 hours if not sooner.\u003C\u002Fp>\n\u003Ch3>Compatible with the Plugins:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadvanced-custom-fields\u002F\" rel=\"ugc\">Advanced Custom Fields\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">WooCommerce\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffoogallery\u002F\" rel=\"ugc\">FooGallery\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fdocuments\u002Fenhanced-media-library\u002Fhow-to-create-a-dynamic-foogallery\" rel=\"nofollow ugc\">How to use?\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fanything-order-by-terms\u002F\" rel=\"ugc\">Anything Order by Terms\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsearch-filter\u002F\" rel=\"ugc\">Search & Filter\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdocument-gallery\u002F\" rel=\"ugc\">Document Gallery\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjetpack\u002F\" rel=\"ugc\">Jetpack Carousel\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjetpack\u002F\" rel=\"ugc\">Jetpack Tiled Galleries\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsimple-lightbox\u002F\" rel=\"ugc\">Simple Lightbox\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjustified-gallery\u002F\" rel=\"ugc\">Justified Gallery\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmeow-gallery\u002F\" rel=\"ugc\">Meow Gallery\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmeow-lightbox\u002F\" rel=\"ugc\">Meow Lightbox\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fml-slider\u002F\" rel=\"ugc\">MetaSlider\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fresponsive-lightbox\u002F\" rel=\"ugc\">Responsive Lightbox & Gallery\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftiny-compress-images\u002F\" rel=\"ugc\">Compress JPEG & PNG Images\u003C\u002Fa> (TinyPNG)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please let us know if you find any issue with the plugins from the list above or others.\u003C\u002Fp>\n\u003Ch3>Incompatibility\u003C\u002Fh3>\n\u003Cp>Please notice that you use Enhanced Media Library with other plugins that add media categories, media folders, or manage MIME Types at your own risk. We cannot guarantee their compatibility because of the different approaches to the same functionality. We do not recommend using other media library (folder) plugin at the same time with the Enhanced Media Library. Please choose the one you prefer.\u003C\u002Fp>\n\u003Ch3>Useful Links\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fplugins\u002Fenhanced-media-library\" rel=\"nofollow ugc\">Basic version: more details\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpuxsolutions.com\u002Fplugins\u002Fenhanced-media-library-pro\" rel=\"nofollow ugc\">PRO version: more details\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.wpuxsolutions.com\u002Fdocuments\u002Fenhanced-media-library\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.wpuxsolutions.com\u002Fdocuments\u002Fenhanced-media-library\u002Ffaqs\" rel=\"nofollow ugc\">FAQs\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","This plugin would be handy for those who need to manage a lot of media files.",70000,2634348,86,297,"2024-07-15T14:07:00.000Z","6.5.8","6.0",[121,122,123,124,125],"media-categories","media-folders","media-library","media-tags","mime-types","https:\u002F\u002FwpUXsolutions.com\u002Fplugins\u002Fenhanced-media-library","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fenhanced-media-library.2.9.4.zip",91,1,"2024-04-15 00:00:00",{"slug":132,"name":133,"version":134,"author":135,"author_profile":136,"description":137,"short_description":138,"active_installs":113,"downloaded":139,"rating":45,"num_ratings":140,"last_updated":141,"tested_up_to":48,"requires_at_least":142,"requires_php":73,"tags":143,"homepage":147,"download_link":148,"security_score":149,"vuln_count":150,"unpatched_count":13,"last_vuln_date":151,"fetched_at":25},"media-library-assistant","Media Library Assistant","3.34","David Lingren","https:\u002F\u002Fprofiles.wordpress.org\u002Fdglingren\u002F","\u003Cp>The Media Library Assistant provides several enhancements for managing the Media Library, including:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Complete support for ALL taxonomies\u003C\u002Fstrong>, including the standard Categories and Tags, your custom taxonomies and the Assistant’s pre-defined Att. Categories and Att. Tags. You can add taxonomy columns to the Media\u002FAssistant listing, filter on any taxonomy, assign terms and list the attachments for a term.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>The \u003Cstrong>Media\u002FAssistant admin screen\u003C\u002Fstrong> displays more attachment information such as parent information, file URL and image metadata. Provides many more listing columns (more than 20) to choose from. You can also add columns to display custom field values.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Provides \u003Cstrong>additional view filters\u003C\u002Fstrong> for MIME types and taxonomies, and features to compose custom views of your own.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Inline \u003Cstrong>“Bulk Edit”\u003C\u002Fstrong> and \u003Cstrong>“Quick Edit”\u003C\u002Fstrong> areas; update author, parent and custom fields, add, remove or replace taxonomy terms for several attachments at once. Works on the Media\u002FAdd New screen as well.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Works with the popular \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcodepress-admin-columns\u002F\" rel=\"ugc\">Admin Columns\u003C\u002Fa> plugin for even more Media\u002FAssistant screen customization.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>IPTC\u003C\u002Fstrong>, \u003Cstrong>EXIF (including GPS)\u003C\u002Fstrong>, \u003Cstrong>XMP\u003C\u002Fstrong> and \u003Cstrong>PDF\u003C\u002Fstrong> metadata can be assigned to standard WordPress fields, taxonomy terms and custom fields. You can update all existing attachments from the Settings page IPTC\u002FEXIF tab, groups of existing attachments with a Bulk Action or one existing attachment from the Edit Media\u002FEdit Single Item screen. \u003Cstrong>Twelve hooks\u003C\u002Fstrong> provided for complete mapping customization from your theme or plugin code. You can view and\u002For download this PDF document with more information: \u003Ca href=\"http:\u002F\u002Fdavidlingren.com\u002Fassets\u002FMLA-Metadata-Mapping.pdf\" rel=\"nofollow ugc\">Mapping File Metadata to WordPress Fields with Media Library Assistant\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Attachment metadata\u003C\u002Fstrong> such as file size, image dimensions and where-used information can be assigned to WordPress custom fields. You can then use the custom fields in your \u003Ccode>[mla_gallery]\u003C\u002Fcode> display and you can add custom fields as sortable, searchable columns in the Media\u002FAssistant submenu table. You can also \u003Cstrong>modify the WordPress \u003Ccode>_wp_attachment_metadata\u003C\u002Fcode> contents\u003C\u002Fstrong> to suit your needs.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Complete control over \u003Cstrong>Post MIME Types, File Upload extensions\u002FMIME Types and file type icon images\u003C\u002Fstrong>. Fifty four (54) additional upload types, 112 file type icon images and a searchable list of over 1,500 file extension\u002FMIME type associations.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Complete control over \u003Cstrong>Intermediate Image Sizes\u003C\u002Fstrong>, used by WordPress to generate and access intermediate image sizes for Media Library items.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>The \u003Cstrong>\u003Ccode>[mla_gallery]\u003C\u002Fcode> shortcode\u003C\u002Fstrong>, used in a post, page or custom post type to add a gallery of images and\u002For other Media Library items (such as PDF documents). MLA Gallery is a superset of the WordPress \u003Ccode>[gallery]\u003C\u002Fcode> shortcode; it is compatible with \u003Ccode>[gallery]\u003C\u002Fcode> and provides many enhancements. These include: 1) full query and display support for WordPress categories, tags, custom taxonomies and custom fields, 2) support for all post_mime_type values, not just images 3) media Library items need not be “attached” to the post, and 4) control over the styles, markup and content of each gallery using Style and Markup Templates. \u003Cstrong>Twenty-eight hooks\u003C\u002Fstrong> are provided for complete gallery customization from your theme or plugin code.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>The \u003Cstrong>\u003Ccode>[mla_tag_cloud]\u003C\u002Fcode> shortcode\u003C\u002Fstrong>, displays a “cloud” of the “most used” terms in your Media Library where the size of each term is determined by how many times that particular term has been assigned to Media Library items. \u003Cstrong>Twenty-five hooks\u003C\u002Fstrong> are provided for complete cloud customization from your theme or plugin code.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>The \u003Cstrong>\u003Ccode>[mla_term_list]\u003C\u002Fcode> shortcode\u003C\u002Fstrong>, displays hierarchical (and flat) taxonomy terms in list, dropdown control or checklist formats. \u003Cstrong>Twenty hooks\u003C\u002Fstrong> are provided for complete list customization from your theme or plugin code.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>The \u003Cstrong>\u003Ccode>[mla_custom_list]\u003C\u002Fcode> shortcode\u003C\u002Fstrong>, displays flat\u002Fcloud lists, dropdown controls and checkbox lists of custom field values. \u003Cstrong>Twenty-seven hooks\u003C\u002Fstrong> are provided for complete list customization from your theme or plugin code.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>The \u003Cstrong>\u003Ccode>[mla_archive_list]\u003C\u002Fcode> shortcode\u003C\u002Fstrong>, displays flat\u002Fcloud lists and dropdown controls of date-based values. \u003Cstrong>Twenty hooks\u003C\u002Fstrong> are provided for complete list customization from your theme or plugin code.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Powerful \u003Cstrong>Content Templates\u003C\u002Fstrong>, which let you compose a value from multiple data sources, mix literal text with data values, test for empty values and choose among two or more alternatives or suppress output entirely.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Support for \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwpml.org\u002F\" rel=\"nofollow ugc\">WPML\u003C\u002Fa>\u003C\u002Fstrong> and \u003Cstrong>Polylang\u003C\u002Fstrong> multi-language CMS plugins. MLA has earned a place on \u003Ca href=\"https:\u002F\u002Fwpml.org\u002Fplugin\u002Fmedia-library-assistant\u002F\" rel=\"nofollow ugc\">WPML’s List of Recommended Plugins\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Works with \u003Cstrong>Photonic Gallery, Justified Image Grid, Jetpack and other plugins\u003C\u002Fstrong>, so you can add slideshows, thumbnail strips and special effects to your \u003Ccode>[mla_gallery]\u003C\u002Fcode> galleries.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Works with \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Freal-media-library-lite\u002F\" rel=\"ugc\">WordPress Real Media Library: Media Library Folder & File Manager\u003C\u002Fa>\u003C\u002Fstrong> (Lite and Pro) to organize your files into folders, collections and galleries. This combination enhances both the Media\u002FAssistant admin submenu and the \u003Ccode>[mla_gallery]\u003C\u002Fcode> shortcode.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Works with \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcatfolders\u002F\" rel=\"ugc\">CatFolders – WP Media Folders\u003C\u002Fa>\u003C\u002Fstrong> (Lite and Pro) to categorize media files better and faster. This combination enhances both the Media\u002FAssistant admin submenu and the \u003Ccode>[mla_gallery]\u003C\u002Fcode> shortcode.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Enhanced Search Media box\u003C\u002Fstrong>. Search can be extended to the name\u002Fslug, ALT text and caption fields. The connector between search terms can be “and” or “or”. Search by attachment ID or Parent ID is supported, and you can search on keywords in the taxonomy terms assigned to Media Library items. Works in the Media Manager Modal Window, too.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Taxonomy and custom field support in the ATTACHMENT DETAILS pane of the Media Manager Modal Window and Media\u002FLibrary Grid view.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The Assistant is designed to work like the standard Media Library pages, so the learning curve is short and gentle. Contextual help is provided on every new screen to highlight new features.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>NOTE:\u003C\u002Fstrong> Complete documentation is included in the Documentation tab on the Settings\u002FMedia Library Assistant admin screen and the drop-down “Help” content in the admin screens. You can find a stand-alone version of the Documentation on my web site: \u003Ca href=\"http:\u002F\u002Fdavidlingren.com\u002Fassets\u002Fmla-doc.html\" rel=\"nofollow ugc\">Media Library Assistant Documentation\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>I do not solicit nor accept personal donations in support of the plugin.\u003C\u002Fstrong> WordPress and its global community means a lot to me and I am happy to give something back.\u003C\u002Fp>\n\u003Cp>If you find the Media Library Assistant plugin useful and would like to support a great cause, consider a \u003Ca href=\"http:\u002F\u002Fsecure.alsnetwork.org\u002Fgoto\u002FChateau_Seaview_Fund\" rel=\"nofollow ugc\">tax-deductible donation\u003C\u002Fa> to our \u003Ca href=\"http:\u002F\u002Fsecure.alsnetwork.org\u002Fgoto\u002FChateau_Seaview_Fund\" rel=\"nofollow ugc\">Chateau Seaview Fund\u003C\u002Fa> at the ALS Network. Every dollar of the fund goes to make the lives of people with ALS, their families and caregivers easier. Thank you!\u003C\u002Fp>\n\u003Ch3>Acknowledgements\u003C\u002Fh3>\n\u003Cp>Media Library Assistant includes many images drawn (with permission) from the \u003Ca href=\"http:\u002F\u002Fwww.softicons.com\u002Ffree-icons\u002Fsystem-icons\u002Fcrystal-project-icons-by-everaldo-coelho\" rel=\"nofollow ugc\">Crystal Project Icons\u003C\u002Fa>, created by \u003Ca href=\"http:\u002F\u002Fwww.everaldo.com\" rel=\"nofollow ugc\">Everaldo Coelho\u003C\u002Fa>, founder of \u003Ca href=\"http:\u002F\u002Fwww.yellowicon.com\" rel=\"nofollow ugc\">Yellowicon\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Many thanks\u003C\u002Fstrong> to Aurovrata Venet, Il’ya Karastel and Kristian Adolfsson for testing and advising on the multilingual support features!\u003C\u002Fp>\n\u003Ch4>The Example Plugins\u003C\u002Fh4>\n\u003Cp>The MLA example plugins have been developed to illustrate practical applications that use the hooks MLA provides to enhance the admin-mode screens and front-end content produced by the MLA shortcodes. Most of the examples are drawn from topics in the MLA Support Forum.\u003C\u002Fp>\n\u003Cp>The Documentation\u002FExample Plugins submenu lets you browse the list of MLA example plugins, install or update them in the Plugins\u002FInstalled Plugins area and see which examples you have already installed. To activate, deactivate or delete the plugins you must go to the Plugins\u002FInstalled Plugins admin submenu.\u003C\u002Fp>\n\u003Cp>The Example plugins submenu lists all of the MLA example plugins and identifies those already in the Installed Plugins area. In the submenu:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>the “Screen Options” dropdown area lets you choose which columns to display and how many items appear on each page\u003C\u002Fli>\n\u003Cli>the “Help” dropdown area gives you a brief explanation of the submenu content and functions\u003C\u002Fli>\n\u003Cli>the “Search Plugins” text box lets you filter the display to items containing one or more keywords or phrases\u003C\u002Fli>\n\u003Cli>bulk and rollover actions are provided to install or update example plugins\u003C\u002Fli>\n\u003Cli>the table can be sorted by any of the displayed columns\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Once you have installed an example plugin you can use the WordPress Plugins\u002FEditor submenu to view the source code and (with extreme caution) make small changes to the code. \u003Cstrong>Be very careful if you choose to modify the code!\u003C\u002Fstrong> Making changes to active plugins is not recommended. If your changes cause a fatal error, the plugin will be automatically deactivated. It is much safer to download the file(s) or use FTP access to your site to modify the code offline in a more robust HTML\u002FPHP editor.\u003C\u002Fp>\n\u003Cp>You can use the “Download” rollover action to download a plugin to your local system. Once you have made your modifications you can copy the plugin to a compressed file (ZIP archive) and then upload it to your server with the Plugins\u002FAdd New (Upload Plugin) admin submenu.\u003C\u002Fp>\n\u003Cp>If you do make changes to the example plugin code the best practice is to save the modified file(s) under a different name, so your changes won’t be lost in a future update. If you want to retain the file name, consider changing the version number, e.g. adding 100 to the MLA value, so you can more easily identify the plugins you have modified.\u003C\u002Fp>\n","Enhances the Media Library; powerful gallery and list shortcodes, full taxonomy support, IPTC\u002FEXIF\u002FXMP\u002FPDF processing, bulk\u002Fquick edit.",2567297,198,"2026-03-07T00:58:00.000Z","4.7",[144,145,146,123,20],"categories","images","media","http:\u002F\u002Fdavidlingren.com\u002F#two","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmedia-library-assistant.3.34.zip",76,26,"2026-03-04 16:31:21",{"attackSurface":153,"codeSignals":173,"taintFlows":187,"riskAssessment":188,"analyzedAt":198},{"hooks":154,"ajaxHandlers":169,"restRoutes":170,"shortcodes":171,"cronEvents":172,"entryPointCount":13,"unprotectedCount":13},[155,161,165],{"type":156,"name":157,"callback":158,"file":159,"line":160},"action","template_redirect","add_my_script","electric-studio-cross-linker.php",15,{"type":156,"name":162,"callback":163,"file":159,"line":164},"wp_print_footer_scripts","electric_studio_cross_linker",23,{"type":156,"name":166,"callback":167,"file":168,"line":29},"admin_menu","ES_tag_highlighter_admin_menu","php\\options.php",[],[],[],[],{"dangerousFunctions":174,"sqlUsage":175,"outputEscaping":177,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":186},[],{"prepared":29,"raw":13,"locations":176},[],{"escaped":13,"rawEcho":178,"locations":179},3,[180,183,184],{"file":159,"line":181,"context":182},66,"raw output",{"file":159,"line":32,"context":182},{"file":168,"line":185,"context":182},153,[],[],{"summary":189,"deductions":190},"The plugin \"electric-studio-cross-linker\" v1.0 demonstrates a strong security posture in several key areas.  It has no known vulnerabilities in its history, indicating a history of secure development or thorough auditing. The static analysis reveals a remarkably small attack surface with zero entry points, meaning there are no readily accessible points for external interaction through AJAX, REST API, shortcodes, or cron events. Furthermore, all detected SQL queries utilize prepared statements, which is a crucial defense against SQL injection. The absence of file operations and external HTTP requests also reduces potential attack vectors.\n\nHowever, the analysis does highlight significant areas of concern. The most critical finding is that 100% of the plugin's output is not properly escaped. This represents a severe risk for Cross-Site Scripting (XSS) vulnerabilities, where attackers could inject malicious scripts into the website through user-controlled input that is then displayed without sanitization. Additionally, the complete lack of nonce checks and capability checks on the identified (albeit zero) entry points means that even if new entry points were to be introduced, they would likely be unprotected. While the current attack surface is zero, the absence of these fundamental security mechanisms is a concerning oversight in the codebase's design.\n\nIn conclusion, while the plugin benefits from a lack of historical vulnerabilities and a minimal attack surface, the unescaped output is a critical flaw that exposes users to XSS attacks. The absence of nonce and capability checks, while not currently exploitable due to the zero attack surface, indicates a lack of robust security practices that could become a problem if the plugin evolves. The plugin is not inherently insecure due to its current footprint, but the unescaped output is a glaring vulnerability that requires immediate attention.",[191,194,196],{"reason":192,"points":193},"All output is unescaped",8,{"reason":195,"points":29},"No nonce checks implemented",{"reason":197,"points":29},"No capability checks implemented","2026-03-17T01:33:36.137Z",{"wat":200,"direct":207},{"assetPaths":201,"generatorPatterns":203,"scriptPaths":204,"versionParams":205},[202],"\u002Fwp-content\u002Fplugins\u002Felectric-studio-cross-linker\u002Fjs\u002Fhighlighter.js",[],[202],[206],"electric-studio-cross-linker\u002Fjs\u002Fhighlighter.js?ver=1.0",{"cssClasses":208,"htmlComments":209,"htmlAttributes":210,"restEndpoints":211,"jsGlobals":212,"shortcodeOutput":216},[],[],[],[],[213,214,215],"homeurl","titles","pluralForms",[]]