[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fl9H2yh2T8g-VeB3CGP026TKFsh1baQ0pteVYW5LpzNQ":3,"$fxc73pElSp6K50UOE7xQFaU3V22P8BrBzPoKUwXDBNrE":207,"$f_c4rYNZ5M7vFIW9waQAsuNhVUsFtHVXj1Eoi8rBoyQk":212},{"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":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"discovery_status":30,"vulnerabilities":31,"developer":32,"crawl_stats":28,"alternatives":40,"analysis":147,"fingerprints":190},"random-content-shortcode","Random Content Shortcode","2.1.0","Nico","https:\u002F\u002Fprofiles.wordpress.org\u002Fnico23\u002F","\u003Cp>Check out the \u003Ca href=\"https:\u002F\u002Fnextgenthemes.com\u002Fplugins\u002Frandom-content-shortcode\u002F\" rel=\"nofollow ugc\">plugins page\u003C\u002Fa> to see it in action.\u003C\u002Fp>\n\u003Cp>Simple Shortcode for displaying random content on your site. Just wrap the shortcode arround the lines of content you want one to be displayed at random.\u003C\u002Fp>\n\u003Cp>The following example will display one of the two videos or one of the two lines of text, empty lines will ignored.\u003C\u002Fp>\n\u003Cpre>[random_content]\n\nA line with some text in it.\n\n[arve url=\"https:\u002F\u002Fyoutu.be\u002Fb1rTZJxEnAQ\" title=\"A Video Embedded with ARVE\" maxwidth=\"350\"]\n\n\u003Cstrong>A bold line.\u003C\u002Fstrong>\n\n[arve url=\"https:\u002F\u002Fvimeo.com\u002F124400795\" title=\"A Video Embedded with ARVE\" maxwidth=\"400\"]\n\n[\u002Frandom_content]\u003C\u002Fpre>\n\u003Cp>By default the newline \u003Ccode>\\n\u003C\u002Fcode> character is used to separate content. You can also choose another separator, do this if you have problems with the default or like to have random content with multiple lines on one piece like this:\u003C\u002Fp>\n\u003Cpre>[random_content separator=\"|||\"]\nLorem ipsum dolor sit amet, consectetuer adipiscing elit.\n\nAenean commodo ligula eget dolor. Aenean massa.\n|||\nCum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.\n\nDonec quam felis, ultricies nec, pellentesque eu, pretium quis, sem.\n|||\nNulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate\n\nAenean commodo ligula eget dolor. Aenean massa.\n[\u002Frandom_content]\u003C\u002Fpre>\n\u003Cp>Or have a compact single line like this:\u003C\u002Fp>\n\u003Cpre>[random_content separator=\"#\"]One#Two#Three#Four[\u002Frandom_content]\u003C\u002Fpre>\n","Simple Shortcode for displaying random content on your site.",80,3662,100,1,"2018-02-05T14:01:00.000Z","5.0.0","4.5.0","5.6",[20,21,22,23],"random","random-content","random-video","shortcode","https:\u002F\u002Fnextgenthemes.com\u002Fplugins\u002Frandom-content-shortcode\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frandom-content-shortcode.zip",85,0,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":35,"avg_security_score":36,"avg_patch_time_days":37,"trust_score":38,"computed_at":39},"nico23",7,20590,91,30,88,"2026-05-20T05:16:26.282Z",[41,63,84,104,125],{"slug":21,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":50,"num_ratings":51,"last_updated":52,"tested_up_to":53,"requires_at_least":54,"requires_php":55,"tags":56,"homepage":61,"download_link":62,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"Random Content","1.6.5","Jeremy Green","https:\u002F\u002Fprofiles.wordpress.org\u002Fendocreative\u002F","\u003Cp>\u003Cstrong>Random Content\u003C\u002Fstrong> is the easiest way to keep your WordPress site feeling fresh and dynamic. Create content groups, add as many items as you want, and display a random selection anywhere on your site with a single shortcode or widget.\u003C\u002Fp>\n\u003Cp>Every time a visitor loads the page, they see something different. That means higher engagement, more clicks, and a site that never feels stale.\u003C\u002Fp>\n\u003Ch4>What can you do with it?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Rotate testimonials\u003C\u002Fstrong> — Show a different customer quote on every page load\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Randomize banners\u003C\u002Fstrong> — Keep sidebar and header promotions fresh without manual updates\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cycle CTAs\u003C\u002Fstrong> — Test different calls-to-action to see what gets clicks\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Display tips or quotes\u003C\u002Fstrong> — Add variety to any page, post, or widget area\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shuffle FAQs\u003C\u002Fstrong> — Surface different questions each visit\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Free features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Display random content anywhere with the \u003Ccode>[random_content]\u003C\u002Fcode> shortcode\u003C\u002Fli>\n\u003Cli>Use in posts, pages, sidebars, or widget areas\u003C\u002Fli>\n\u003Cli>Organize content into groups for separate rotation sets\u003C\u002Fli>\n\u003Cli>Control how many items display at once\u003C\u002Fli>\n\u003Cli>Full WordPress editor support — text, images, HTML, shortcodes, embeds\u003C\u002Fli>\n\u003Cli>Lightweight and fast with built-in caching\u003C\u002Fli>\n\u003Cli>No coding required\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Getting started\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Create entries under the Random Content post type\u003C\u002Fli>\n\u003Cli>Organize them into Groups (works like categories)\u003C\u002Fli>\n\u003Cli>Add \u003Ccode>[random_content group_id=\"123\"]\u003C\u002Fcode> wherever you want random content to appear\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>That’s it. Your content rotates automatically on every page load.\u003C\u002Fp>\n\u003Ch4>Need more control?\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Frandomcontentpro.com\u002F\" rel=\"nofollow ugc\">Random Content Pro\u003C\u002Fa>\u003C\u002Fstrong> gives you complete control over what visitors see and when they see it:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Scheduling\u003C\u002Fstrong> — Set start and end dates so content appears and disappears automatically. Run time-limited campaigns without touching your site.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Visitor targeting\u003C\u002Fstrong> — Show different content based on user role, login status, UTM parameters, referrer, or page type.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Frequency controls\u003C\u002Fstrong> — Prevent the same item from showing twice in a row. Set cooldown periods between displays.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Weighted selection\u003C\u002Fstrong> — Assign weights (1–10) to each item. Higher weight = shown more often. Perfect for A\u002FB testing.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Display rules\u003C\u002Fstrong> — Control visibility per group: logged-in only, specific roles, specific page types.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fallback content\u003C\u002Fstrong> — Define what shows when all items are filtered out. Never display an empty space.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic updates\u003C\u002Fstrong> — Get new features and fixes delivered directly to your WordPress dashboard.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Frandomcontentpro.com\u002F\" rel=\"nofollow ugc\">Learn more about Random Content Pro \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Shortcode usage\u003C\u002Fh4>\n\u003Cp>Display a random item from all entries:\u003Cbr \u002F>\n    [random_content]\u003C\u002Fp>\n\u003Cp>Display from a specific group:\u003Cbr \u002F>\n    [random_content group_id=”64″]\u003C\u002Fp>\n\u003Cp>Display multiple items at once:\u003Cbr \u002F>\n    [random_content group_id=”13″ num_posts=”3″]\u003C\u002Fp>\n\u003Cp>Load content via AJAX (useful for sites with page caching):\u003Cbr \u002F>\n    [random_content group_id=”64″ ajax=”yes”]\u003C\u002Fp>\n\u003Ch4>Widget usage\u003C\u002Fh4>\n\u003Cp>Navigate to Appearance \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Widgets, add the Random Content widget to any sidebar, and select a group from the dropdown. Leave the group empty to pull from all entries.\u003C\u002Fp>\n","Display random content anywhere on your WordPress site. Rotate testimonials, banners, CTAs, and more with a simple shortcode or widget.",3000,56572,98,34,"2026-03-23T15:15:00.000Z","6.9.4","5.0.1","",[57,58,21,59,60],"content-rotation","dynamic-content","rotating-content","testimonials","https:\u002F\u002Fwww.randomcontentpro.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frandom-content.1.6.5.zip",{"slug":64,"name":65,"version":66,"author":67,"author_profile":68,"description":69,"short_description":70,"active_installs":71,"downloaded":72,"rating":73,"num_ratings":74,"last_updated":75,"tested_up_to":76,"requires_at_least":77,"requires_php":55,"tags":78,"homepage":82,"download_link":83,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"easy-random-quotes","Easy Random Quotes","1.8","Kailey (trepmal)","https:\u002F\u002Fprofiles.wordpress.org\u002Ftrepmal\u002F","\u003Cp>Insert quotes and pull them randomly into your pages and posts (via shortcodes) or your template (via template tags).\u003Cbr \u002F>\nCan refer to quote IDs to use specific quotes. Also widget-enabled\u003C\u002Fp>\n","Insert quotes and pull them randomly into your pages and posts (via shortcodes) or your template (via template tags).",500,21316,86,6,"2016-09-29T02:57:00.000Z","4.6.30","2.8",[79,80,81],"random-quotes","shortcodes","widget","http:\u002F\u002Ftrepmal.com\u002Fplugins\u002Feasy-random-quotes\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-random-quotes.1.8.zip",{"slug":20,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":91,"downloaded":92,"rating":13,"num_ratings":93,"last_updated":94,"tested_up_to":95,"requires_at_least":96,"requires_php":18,"tags":97,"homepage":101,"download_link":102,"security_score":103,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"Random","1.3","Scribit","https:\u002F\u002Fprofiles.wordpress.org\u002Fscribit\u002F","\u003Cp>With Random plugin you can insert into your WordPress website one or more random contents coming from your posts.\u003Cbr \u002F>\nThe source contents can be pages, posts or custom post types.\u003Cbr \u002F>\nYou can display information in many different ways:\u003Cbr \u002F>\n* A list of post titles\u003Cbr \u002F>\n* One or more full contents or excerpts\u003Cbr \u002F>\n* Raw URLs to posts permalink\u003C\u002Fp>\n","Random, a great plugin designed to insert random contents, posts and other types, into your website. Enjoy its shortcodes!",300,7984,4,"2024-10-21T09:32:00.000Z","6.6.5","4.0",[98,20,21,99,100],"casual","random-post","random-posts","https:\u002F\u002Fwww.scribit.it\u002Fen\u002Fwordpress-plugins\u002Fget-random-contents\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frandom.1.3.zip",92,{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":13,"num_ratings":114,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":55,"tags":118,"homepage":123,"download_link":124,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"easy-populate-posts","Easy Populate Posts","4.4.5","Iulia Cazan","https:\u002F\u002Fprofiles.wordpress.org\u002Fiulia-cazan\u002F","\u003Cp>Populate the sites with random content (configurable type, with tags, meta, terms, images, publish date, status, parent, sticky, gutenberg template).\u003C\u002Fp>\n\u003Ch3>Hooks\u003C\u002Fh3>\n\u003Cp>\u003Ccode>spp_prepare_post_data\u003C\u002Fcode>, \u003Ccode>spp_after_post_inserted\u003C\u002Fcode>, \u003Ccode>spp_after_post_updated\u003C\u002Fcode>, \u003Ccode>spp_before_post_image_attached\u003C\u002Fcode>, \u003Ccode>spp_after_post_image_attached\u003C\u002Fcode>, \u003Ccode>spp_after_post_processed\u003C\u002Fcode>, \u003Ccode>spp_filter_remove_update_info\u003C\u002Fcode>, \u003Ccode>spp_filter_remove_donate_info\u003C\u002Fcode>, \u003Ccode>spp_filter_post_statuses\u003C\u002Fcode>, \u003Ccode>spp_filter_post_taxonomies\u003C\u002Fcode>, \u003Ccode>spp_filter_acf_fields\u003C\u002Fcode>, \u003Ccode>spp_filter_post_meta\u003C\u002Fcode>, \u003Ccode>spp_filter_name_elements\u003C\u002Fcode>, \u003Ccode>spp_max_options_tax\u003C\u002Fcode>, \u003Ccode>spp_max_options_meta\u003C\u002Fcode>, \u003Ccode>spp_meta_value\u003C\u002Fcode>, \u003Ccode>spp_max_fields\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\u003C\u002Fp>\n","Populate the sites with random content: title, type, terms, meta, images, status, date, parent, sticky, Gutenberg template, etc.",200,28025,10,"2026-04-11T10:15:00.000Z","7.0","4.8",[119,120,121,122,21],"content-generator","dummy-content","generate-content","populate-posts","https:\u002F\u002Fiuliacazan.ro\u002Feasy-populate-posts\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-populate-posts.4.4.5.zip",{"slug":126,"name":127,"version":128,"author":129,"author_profile":130,"description":131,"short_description":132,"active_installs":112,"downloaded":133,"rating":134,"num_ratings":74,"last_updated":135,"tested_up_to":136,"requires_at_least":137,"requires_php":55,"tags":138,"homepage":143,"download_link":144,"security_score":145,"vuln_count":14,"unpatched_count":14,"last_vuln_date":146,"fetched_at":29},"piwigopress","PiwigoPress","2.33","vpiwigo","https:\u002F\u002Fprofiles.wordpress.org\u002Fvpiwigo\u002F","\u003Cp>On the one hand, PiwigoPress is a WordPress \u003Cstrong>Sidebar Widget\u003C\u002Fstrong> that links\u003Cbr \u002F>\nyour blog to some public pictures of a Piwigo gallery.  Thus, a Piwigo\u003Cbr \u002F>\ngallery with several public pictures in it is a prerequisite to make it\u003Cbr \u002F>\nworking. But even if you don’t have one yet, you can nonetheless give this\u003Cbr \u002F>\nplugin a try by using the Official Piwigo \u003Ca href=\"http:\u002F\u002Fpiwigo.org\u002Fdemo\u002F\" title=\"The demonstration gallery\" rel=\"nofollow ugc\">demonstration gallery\u003C\u002Fa> before\u003Cbr \u002F>\nsetting up your own gallery.\u003C\u002Fp>\n\u003Cp>PiwigoPress generates several highly valuable links in sidebars of your\u003Cbr \u002F>\nWordPress blog, all of them being optional: a thumbnail linking to\u003Cbr \u002F>\nthe corresponding picture page, menus directing to all albums defined\u003Cbr \u002F>\nas public in the gallery, several additional links to most recent, most\u003Cbr \u002F>\nviewed, most commented pictures, and more.\u003C\u002Fp>\n\u003Cp>On the other hand, by using \u003Cstrong>a shortcode\u003C\u002Fstrong> [PiwigoPress …] you can add\u003Cbr \u002F>\nany public picture of a Piwigo gallery. Here again you should try even\u003Cbr \u002F>\nthough you don’t have yet your Piwigo Gallery. Have a look with\u003Cbr \u002F>\n[PiwigoPress id=72 url=’http:\u002F\u002Fpiwigo.org\u002Fdemo’] in a post or page.\u003C\u002Fp>\n\u003Cp>Above all, PiwigoPress provides a shortcode \u003Cstrong>generator\u003C\u002Fstrong>. Each time you\u003Cbr \u002F>\nadd some pictures to your gallery you will be able to add a post related\u003Cbr \u002F>\nto your last uploaded photos. So, your friends and family are going to\u003Cbr \u002F>\nlike your photos and Search Engines are going reference your gallery with\u003Cbr \u002F>\nthe refbacks provided by PiwigoPress.\u003C\u002Fp>\n\u003Cp>When you’ve finished testing and want to create you own gallery, go to the\u003Cbr \u002F>\nPiwigo \u003Ca href=\"http:\u002F\u002Fpiwigo.org\u002Fbasics\u002Fdownloads\" title=\"Piwigo download page\" rel=\"nofollow ugc\">download page\u003C\u002Fa>, where you’ll find all the links you might need.\u003C\u002Fp>\n\u003Cp>Try “NetInstall” first. If it fails, switch to the “Package” download and\u003Cbr \u002F>\nfollow the full installation procedure. When ready, if you are a bit lost,\u003Cbr \u002F>\njust try Photos add page sheets (Web form, Applications, FTP + Synchronization)\u003Cbr \u002F>\nin your Piwigo gallery administration page.\u003C\u002Fp>\n\u003Cp>Development of PiwigoPress is open to contributions, please use the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnorbusan\u002Fpiwigopress\" rel=\"nofollow ugc\">github page\u003C\u002Fa> for patches, bug reports, and issues.\u003C\u002Fp>\n\u003Ch3>Copyright\u002FLicense\u003C\u002Fh3>\n\u003Cp>PiwigoPress WordPress Plugin\u003C\u002Fp>\n\u003Cp>Copyright 2009-2012  VDigital\u003Cbr \u002F>\n  Copyright 2014-2024  Norbert Preining\u003C\u002Fp>\n\u003Cp>Contributions by\u003C\u002Fp>\n\u003Cp>Rüdiger Schulz 2015 (copyright transfered)\u003Cbr \u002F>\n  Anton Lavrov 2015\u003C\u002Fp>\n\u003Cp>Anton Lavrov’s contribution are under GPLv2+:\u003Cbr \u002F>\n  On Wed, 15 Jul 2015, Anton Lavrov wrote:\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>Hi Norbert,\u003C\u002Fp>\n\u003Cp>I hereby confirm that my contributions are under GPLv2 or higher.\u003C\u002Fp>\n\u003Cp>Please let me know if this is not exactly the wording you need.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>PiwigoPress is distributed under the terms of the GNU GPL version 2+\u003C\u002Fp>\n\u003Cp>This program is free software: you can redistribute it and\u002For modify\u003Cbr \u002F>\nit under the terms of the GNU General Public License as published by\u003Cbr \u002F>\nthe Free Software Foundation, either version 2 of the License, or\u003Cbr \u002F>\n(at your option) any later version.\u003C\u002Fp>\n\u003Cp>This program is distributed in the hope that it will be useful,\u003Cbr \u002F>\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\u003Cbr \u002F>\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\u003Cbr \u002F>\nGNU General Public License for more details.\u003C\u002Fp>\n\u003Cp>You should have received a copy of the GNU General Public License\u003Cbr \u002F>\nalong with this program.  If not, see if not, write to the Free Software\u003Cbr \u002F>\nFoundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA\u003C\u002Fp>\n","From any open API Piwigo gallery, swiftly include your photos in Posts\u002FPages and\u002For add randomized thumbnails and menus in your sidebar.",17893,74,"2024-10-21T07:11:00.000Z","4.9.29","2.8.4",[139,140,141,142,23],"galleries","gallery","pictures","randomize","http:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpiwigopress\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpiwigopress.zip",71,"2025-02-24 00:00:00",{"attackSurface":148,"codeSignals":173,"taintFlows":180,"riskAssessment":181,"analyzedAt":189},{"hooks":149,"ajaxHandlers":163,"restRoutes":164,"shortcodes":165,"cronEvents":171,"entryPointCount":172,"unprotectedCount":27},[150,156,159],{"type":151,"name":152,"callback":153,"file":154,"line":155},"action","init","anonymous","random-content-shortcode.php",33,{"type":151,"name":157,"callback":153,"file":154,"line":158},"wp_enqueue_scripts",36,{"type":160,"name":161,"callback":153,"file":154,"line":162},"filter","plugin_action_links_random-content-shortcode\u002Frandom-content-shortcode.php",39,[],[],[166,169],{"tag":167,"callback":153,"file":154,"line":168},"random_content",37,{"tag":21,"callback":153,"file":154,"line":170},38,[],2,{"dangerousFunctions":174,"sqlUsage":175,"outputEscaping":177,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":27,"bundledLibraries":179},[],{"prepared":27,"raw":27,"locations":176},[],{"escaped":27,"rawEcho":27,"locations":178},[],[],[],{"summary":182,"deductions":183},"The \"random-content-shortcode\" plugin version 2.1.0 exhibits a generally strong security posture based on the provided static analysis.  The absence of dangerous functions, SQL injection vulnerabilities (all queries use prepared statements), file operations, external HTTP requests, and proper output escaping are significant strengths.  Furthermore, the plugin has no recorded vulnerabilities in its history, indicating a good track record.\n\nHowever, there are some areas of concern that prevent a perfect score. The most notable is the complete absence of nonce checks and capability checks across its entry points (shortcodes). While the static analysis reports zero unprotected entry points, this is likely due to a misinterpretation or lack of specific checks for shortcodes in the analysis tool. In practice, shortcodes can be a significant attack vector if not properly secured. The plugin also lacks any recorded taint analysis, which, while not necessarily a flaw in itself, means there's no explicit data on how user-supplied data might be handled and whether it could be a source of vulnerabilities.\n\nIn conclusion, \"random-content-shortcode\" v2.1.0 demonstrates good coding practices in preventing common vulnerabilities like SQL injection and XSS. Its clean vulnerability history is reassuring. The primary weakness lies in the apparent lack of security checks (nonces and capabilities) on its shortcode entry points, which, if exploited, could lead to security issues. While the attack surface is small, the lack of authentication on these entry points is a notable oversight.",[184,187],{"reason":185,"points":186},"Missing nonce checks on shortcodes",15,{"reason":188,"points":186},"Missing capability checks on shortcodes","2026-03-16T21:22:25.664Z",{"wat":191,"direct":198},{"assetPaths":192,"generatorPatterns":194,"scriptPaths":195,"versionParams":197},[193],"\u002Fwp-content\u002Fplugins\u002Frandom-content-shortcode\u002Frandom-content-shortcode.js",[],[196],"random-content-shortcode\u002Frandom-content-shortcode.js",[],{"cssClasses":199,"htmlComments":201,"htmlAttributes":202,"restEndpoints":203,"jsGlobals":204,"shortcodeOutput":205},[200],"random-content-piece",[],[],[],[],[206],"\u003Cscript type=\"text\u002Fhtml\" class=\"random-content-shortcode\">",{"error":208,"url":209,"statusCode":210,"statusMessage":211,"message":211},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Frandom-content-shortcode\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":27,"versions":213},[]]