[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fgjDXvmBr7CC2tZpaEngRfLlZPEpOnx5m_2uCcONms5c":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":14,"last_updated":15,"tested_up_to":16,"requires_at_least":6,"requires_php":17,"tags":18,"homepage":21,"download_link":22,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26,"vulnerabilities":27,"developer":28,"crawl_stats":25,"alternatives":36,"analysis":139,"fingerprints":179},"indesign-random-quotes","InDesign Random Quotes","1.0","InDesign Media","https:\u002F\u002Fprofiles.wordpress.org\u002Findesignmedia\u002F","\u003Cp>IMPORTANT UPDATE NOTE: For all users who are currently using this plugin, after updating you should view plugin description to get shortcode.\u003C\u002Fp>\n\u003Cp>c3 Random Quotes displays a random quote each time your site is loaded.\u003Cbr \u002F>\nYou create and maintain the list of quotes in a same plugin page.\u003Cbr \u002F>\nQuotes are selected and most popular from around the globe.\u003Cbr \u002F>\nIt’s easily installed and just use shortcode to display it randomly.\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Easy user install and display just by shortcode.\u003C\u002Fli>\n\u003C\u002Ful>\n","A simple shortcode to display random quotes on your WordPress site.",10,2521,100,4,"2020-12-16T17:51:00.000Z","5.6.0","7.3",[19,20],"quote","random","https:\u002F\u002Findesignmedia.net","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Findesign-random-quotes.zip",85,0,null,"2026-03-15T14:54:45.397Z",[],{"slug":29,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":31,"avg_security_score":32,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},"indesignmedia",2,20,93,30,89,"2026-04-04T15:32:50.011Z",[37,63,83,103,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":58,"download_link":59,"security_score":60,"vuln_count":30,"unpatched_count":24,"last_vuln_date":61,"fetched_at":62},"easy-quotes","Easy Quotes","1.3.7","Jürgen Müller","https:\u002F\u002Fprofiles.wordpress.org\u002Fjuergen74\u002F","\u003Cp>Easy Quotes let you collect and display your favorite Quotes \u002F Reviews \u002F Testimonials or any other short snippet of Text you want to present on your site.\u003C\u002Fp>\n\u003Cp>Main Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Custom Post Type “Quotes” with Quick Edit and Bulk Actions\u003C\u002Fli>\n\u003Cli>Add Custom Meta: Author, Date and Rating with Stars\u003C\u002Fli>\n\u003Cli>Gutenberg Block “Easy Quotes” to present your Collection all over your Site. (Block-Widget\u002FPages\u002FPosts etc.)\u003C\u002Fli>\n\u003Cli>Show Random or Daily “Quotes” by Category or choose a Specific Quote.\u003C\u002Fli>\n\u003Cli>Option to rotate Quotes by Category\u003C\u002Fli>\n\u003Cli>Option to show Quotes as a List by Category\u003C\u002Fli>\n\u003Cli>Use Google Fonts and other typographic features to style your Quote.\u003C\u002Fli>\n\u003Cli>Built to blend into any style, but customizable with CSS to fit your needs.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Try my new Plugin\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Feasy-architect\u002F\" rel=\"ugc\">Easy Architect\u003C\u002Fa>\u003C\u002Fp>\n","Collect and show your favorite Quotes \u002F Reviews \u002F Testimonials or any other short snippet of Text.",700,14366,94,6,"2026-01-07T13:03:00.000Z","6.9.4","6.7","7.4",[54,55,56,20,57],"daily","lyrics","quotes","testimonials","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-quotes.1.3.7.zip",97,"2025-09-22 00:00:00","2026-03-15T15:16:48.613Z",{"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":48,"last_updated":74,"tested_up_to":75,"requires_at_least":76,"requires_php":58,"tags":77,"homepage":81,"download_link":82,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":62},"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,21239,86,"2016-09-29T02:57:00.000Z","4.6.30","2.8",[78,79,80],"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":84,"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":58,"tags":97,"homepage":101,"download_link":102,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":62},"simple-testimonials","Simple Testimonials","1.0.7","Kim","https:\u002F\u002Fprofiles.wordpress.org\u002Fpixelovely\u002F","\u003Cp>I created this plugin to make it easy peasy for my clients to manage all the nice things that \u003Cem>their\u003C\u002Fem> customers and clients said about them. They’ve loved it so much, I’ve decided to make it available to the world.\u003C\u002Fp>\n\u003Cp>When you install it, you will gain a new section in your wordpress admin where you can easily create and manage all your testimonials. It’s extremely similar to creating a new post or page. Just go to the testimonial section, click “Add new”, and follow the on-screen prompts. That’s it. When you’re done, you can get a random testimonial to display each time a page loads with the handy included widget, or the shortcode [testimonial]. Phew, easy peasy!\u003C\u002Fp>\n\u003Cp>This plugin is perfect for you if:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>You want to establish credibility on every page, not just a single testimonials page.\u003C\u002Fli>\n\u003Cli>You want to manage everything in one place, instead of having to update a separate testimonials page and various text widgets in your sidebars.\u003C\u002Fli>\n\u003Cli>You want a testimonial page that is auto-formatted, so everything looks uniform and clean, without you having to futz around with copy-pasting code.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Creating Testimonials\u003C\u002Fh3>\n\u003Cp>Create and customize your testimonials as you would a post or a page. Just click “Testimonials” in the left hand admin menu, and then click “Add New”.\u003C\u002Fp>\n\u003Cp>Enter the testimonial into the larger text area. Then in the slot labeled Attribution place the name, initials, or other more anonymous identifier (such as “happy customer from Atlanta”). You can also leave the attribution blank, if you prefer.\u003C\u002Fp>\n\u003Cp>Remember to save, and you’ve created your first testimonial!\u003C\u002Fp>\n\u003Ch3>Categorizing Testimonials\u003C\u002Fh3>\n\u003Cp>You can add your testimonials to categories of your choosing. While creating or editing a testimonial, find the box labelled “Testimonial Categories”. If this is your first time categorizing your testimonials, you’ll need to create some categories! Click the link “+Add New Category”, name your new category, and click the button “Add New Category”.\u003C\u002Fp>\n\u003Cp>Put a check next to any categories you want this testimonial to be included in. Save your changes!\u003C\u002Fp>\n\u003Ch3>Widgets\u003C\u002Fh3>\n\u003Cp>If you are using a \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FWidgetizing_Themes\" rel=\"nofollow ugc\">“widgetized”\u003C\u002Fa> theme – that is, one that allows you to drag widgets to a sidebar, footer, or other location – you can display any number of testimonials in the sidebar.\u003C\u002Fp>\n\u003Cp>Just find the widget named “Random Testimonial,” and drag it to your widget area of choice. By default, this widget will show one testimonial. You may open its panel and select another number from the dropdown.\u003C\u002Fp>\n\u003Cp>When using a widget, you may also enter a number of characters to limit how much of a testimonial to display. This will prevent extra-long testimonials from breaking your beautiful site design.\u003C\u002Fp>\n\u003Cp>Want to give people a link to view the rest of a shortened testimonial, or just to see more of the nice things people have said about you? Just paste the URL to your testimonial page into the last slot on the widget, labeled “Add a read more link”. A “read more” link will automatically appear at the bottom of the widget.\u003C\u002Fp>\n\u003Cp>Remember to save!\u003C\u002Fp>\n\u003Ch3>Shortcode\u003C\u002Fh3>\n\u003Cp>To add a testimonial anywhere at all, simply place this shortcode into a page or post: [testimonial]\u003C\u002Fp>\n\u003Cp>When the page displays, that little tag will be transformed into a beautiful testimonial, randomly chosen from your collection!\u003C\u002Fp>\n\u003Cp>By default, this tag will display a single random testimonial, but you can choose any number like this: [testimonial number=3] Just substitute your number for my 3 in this example.\u003C\u002Fp>\n\u003Cp>If you want to only show testimonials from a particular category of testimonials, add the name of the category like this: [testimonial category=featured] Just substitute the name of your testimonial category for the word “featured” in this example.\u003C\u002Fp>\n\u003Cp>You can even have your testimonials be picked out of more than one category! Use quotes around the list, and use commas to separate the names of all the categories you want to use. For example: [testimonial category=”Best of 2016, Best of 2015″]\u003C\u002Fp>\n\u003Cp>To create a page where all of your testimonials display at once, simply use the above shortcode, with the number set to 0. This will cause all of your testimonials to display at once. Their order will be random.\u003C\u002Fp>\n\u003Ch3>Styling\u003C\u002Fh3>\n\u003Cp>This plugin deliberately employs extremely minimal default styling, to make it fit in with any theme.\u003C\u002Fp>\n\u003Cp>If you are an advanced user and wish to apply your own CSS styles to the testimonials this plugin outputs, the plugin follows this structure:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cdiv class='pixelovely_testimonial'>\n\u003Cp>Testimonial\u003C\u002Fp>\n\u003Cspan class='pixelovely_testimonial_attribution'>- Attribution\u003C\u002Fspan>\n\u003C\u002Fdiv>\n\u003Cspan class='pixelovely_readmore'>\u003Ca href='http:\u002F\u002Fwww.yourlinkhere.com\u002F'>Read more\u003C\u002Fa>\u003Cspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Apply your CSS to div.pixelovely_testimonial, span.pixelovely_testimonial_attribution and span.pixelovely_readmore\u003C\u002Fp>\n","Easily manage testimonials and display them anywhere on your blog in seconds, via blocks, widgets or shortcodes.",300,23523,14,"2023-03-22T23:45:00.000Z","6.1.10","3.0.1",[98,99,100,57],"random-quote","random-testimonial","random-testimonials","http:\u002F\u002Fwww.pixelovely.com\u002Fresources\u002Fsimple-testimonials-wordpress-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-testimonials.1.0.7.zip",{"slug":104,"name":105,"version":106,"author":107,"author_profile":108,"description":109,"short_description":110,"active_installs":91,"downloaded":111,"rating":112,"num_ratings":48,"last_updated":113,"tested_up_to":50,"requires_at_least":114,"requires_php":52,"tags":115,"homepage":58,"download_link":118,"security_score":119,"vuln_count":14,"unpatched_count":30,"last_vuln_date":120,"fetched_at":62},"xv-random-quotes","XV Random Quotes","2.7.0","Xavi Ivars","https:\u002F\u002Fprofiles.wordpress.org\u002Fxavivars\u002F","\u003Cp>XV Random Quotes helps you collect and display random quotes everywhere on your WordPress site. Built with modern WordPress standards using Custom Post Types, Gutenberg blocks, and the REST API.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎯 Modern WordPress Integration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Custom Post Type\u003C\u002Fstrong> – Quotes are managed as native WordPress posts with full revision history\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Gutenberg Blocks\u003C\u002Fstrong> – Three dedicated blocks: Random Quote, Specific Quote, and List Quotes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>REST API\u003C\u002Fstrong> – Access quotes programmatically for headless WordPress and custom integrations\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Taxonomy Support\u003C\u002Fstrong> – Organize quotes with categories and authors (with URL support)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Block Editor\u003C\u002Fstrong> – Full support with dedicated meta boxes for quote content and source\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>✨ Key Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Multiple Display Methods\u003C\u002Fstrong> – Widgets, shortcodes, template tags, and Gutenberg blocks\u003C\u002Fli>\n\u003Cli>\u003Cstrong>AJAX-Powered Widgets\u003C\u002Fstrong> – Automatic quote rotation without page reload (configurable timer)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Category Filtering\u003C\u002Fstrong> – Display quotes from specific categories or all quotes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Author Management\u003C\u002Fstrong> – Track quote authors with optional URL links\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Flexible Ordering\u003C\u002Fstrong> – Random or sequential quote display\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Native Styling Toggle\u003C\u002Fstrong> – Use plugin’s default styling or your theme’s styles\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Complete Backward Compatibility\u003C\u002Fstrong> – All legacy shortcodes and template tags still work\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>📦 Display Options\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Gutenberg Blocks\u003C\u002Fstrong>:\n\u003Cul>\n\u003Cli>Random Quote Block – Display one or more random quotes\u003C\u002Fli>\n\u003Cli>Specific Quote Block – Show a particular quote by ID\u003C\u002Fli>\n\u003Cli>List Quotes Block – Paginated list of quotes with filtering\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Widgets\u003C\u002Fstrong>: Sidebar widget with AJAX refresh and category filtering\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcodes\u003C\u002Fstrong>: \u003Ccode>[stray-random]\u003C\u002Fcode>, \u003Ccode>[stray-id]\u003C\u002Fcode>, \u003Ccode>[stray-all]\u003C\u002Fcode> for posts and pages\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Template Tags\u003C\u002Fstrong>: \u003Ccode>stray_random_quote()\u003C\u002Fcode>, \u003Ccode>stray_a_quote()\u003C\u002Fcode> for theme integration\u003C\u002Fli>\n\u003Cli>\u003Cstrong>REST API\u003C\u002Fstrong>: \u003Ccode>\u002Fwp-json\u002Fxv-random-quotes\u002Fv1\u002Fquote\u002Frandom\u003C\u002Fcode> for custom integrations\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>🔄 Automatic Migration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Upgrading from v1.x? The plugin automatically detects the need of migrating your existing quotes to the new Custom Post Type system. The migration is always manual to prevent race conditions and duplicate imports. When the plugin is activated or updated, an admin notice prompts the user to start the migration via a button. The migration then processes quotes in batches via AJAX.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎨 Customization\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Customize HTML wrappers (before\u002Fafter quote, author, source)\u003C\u002Fli>\n\u003Cli>Control author and source link formatting\u003C\u002Fli>\n\u003Cli>AJAX loading messages and animations\u003C\u002Fli>\n\u003Cli>Native WordPress styling or custom CSS\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>See \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fxavivars\u002Fxv-random-quotes\u002Fblob\u002Fmain\u002FRELEASE_NOTES.md\" rel=\"nofollow ugc\">RELEASE_NOTES.md\u003C\u002Fa> for complete v2.0 features and migration guide.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>For main development of Stray Quotes, \u003Ca href=\"http:\u002F\u002Funalignedcode.wordpress.com\u002Fmy-wordpress-plugins\u002Fstray-random-quotes\u002F\" rel=\"nofollow ugc\">Ico\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>For Multi-widget functionality, \u003Ca href=\"http:\u002F\u002Fwp.gdragon.info\u002F2008\u002F07\u002F06\u002Fcreate-multi-instances-widget\u002F\" rel=\"nofollow ugc\">Millian’s tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>For help in developing user-end AJAX functionality, \u003Ca href=\"http:\u002F\u002Fwww.matrixagents.org\" rel=\"nofollow ugc\">AgentSmith\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>For search functionality and bugfixing, \u003Ca href=\"http:\u002F\u002Fwww.zeyalabs.ch\u002Fposts\u002F2010\u002Fstray-quotes-z\u002F\" rel=\"nofollow ugc\">Sergey Sirotkin\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Localization\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>German, thanks to Markus Griesbach\u003C\u002Fli>\n\u003Cli>Chinese, thanks to WGMking\u003C\u002Fli>\n\u003Cli>Croatian, thanks to \u003Ca href=\"http:\u002F\u002Fwww.atrium.hr\u002F\" rel=\"nofollow ugc\">Rajic\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Danish, thanks to \u003Ca href=\"http:\u002F\u002Fwordpress.blogos.dk\u002F\" rel=\"nofollow ugc\">Georg\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Actually, these translations are not updated to the latest version.\u003Cbr \u002F>\nI am looking for new localizers, all languages welcome!\u003C\u002Fp>\n\u003Cp>\u003Cem>Please note:\u003C\u002Fem> the best way to \u003Cstrong>submit new or updated translations\u003C\u002Fstrong> is to send me a direct link to the localization files in \u003Ca href=\"http:\u002F\u002Fxavi.ivars.me\u002Fcontacta\u002F\" rel=\"nofollow ugc\">the contact page\u003C\u002Fa> of my website. This way the files are made available to the users sooner, and without waiting for a new release.\u003C\u002Fp>\n\u003Cp>\u003Cem>Please note:\u003C\u002Fem> If you want to create a localized copy of XV Random Quotes, consider skipping the help page and translate the rest. This will save you quite some time. The help page has a lot of text.\u003C\u002Fp>\n\u003Ch3>Known Issues\u003C\u002Fh3>\n\u003Cp>None currently reported for v2.0. If you find an issue, please report it on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fxavivars\u002Fxv-random-quotes\u002Fissues\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n","Display and rotate quotes anywhere on your WordPress site. Fully integrated with WordPress Custom Post Types, Gutenberg blocks, and REST API.",8991,74,"2026-02-17T18:38:00.000Z","6.0",[116,117,56,20,80],"blocks","gutenberg","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fxv-random-quotes.2.7.0.zip",54,"2025-04-03 00:00:00",{"slug":122,"name":123,"version":124,"author":125,"author_profile":126,"description":127,"short_description":128,"active_installs":129,"downloaded":130,"rating":13,"num_ratings":48,"last_updated":131,"tested_up_to":132,"requires_at_least":96,"requires_php":58,"tags":133,"homepage":137,"download_link":138,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":62},"content-randomizer","Content Randomizer","1.2.3","Dominykas","https:\u002F\u002Fprofiles.wordpress.org\u002Fdominykasgel\u002F","\u003Cp>Content Randomizer plugin allows you to create sets of short texts, images or even video and to show them on any widgetized area. You can make sets of quotes, phrases, jokes and other short texts separate from the other website content. Content Randomizer plugin uses its own custom type posts for the full control over the website content. Same custom type posts are used to add images or videos (embedded).\u003C\u002Fp>\n\u003Cp>The plugin is user-friendly and easy to use. Just install the plugin and activate it. Now you’ll be able to create categories for random content, each category will represent an individual set of content. Create random content posts and assign them to the preferred category. Now when you have at least one content set you can go to the Widget Manager (Appearance \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Widgets) and add one of the two available Content Randomizer plugin widgets.\u003C\u002Fp>\n\u003Cp>The main Content Randomizer widget reacts only when you browse from one page to another on your website, it will change content every time on load or refresh action. Second widget available with Content Randomizer plugin shows random content as slides, so there is no need to browse to another page or refresh the current page to see all content that was assigned to the active content set. The active content set is determined by random content category selection in widget settings (just a simple dropdown).\u003C\u002Fp>\n\u003Cp>There are shortcodes available for more advanced users. You can use these shortcodes to render random content at any selected location of your website. We hope you will enjoy this plugin.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.elementous.com\u002Fdocumentation\u002F#color-filters-for-woocommerce\" rel=\"nofollow ugc\">Content Randomizer Documentation\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>We also have a public \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Felementous\u002Fcontent-randomizer\" rel=\"nofollow ugc\">GIT repository\u003C\u002Fa> for this plugin and you’re welcome to contribute your patch.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Display sets of random texts, images or videos\u003C\u002Fli>\n\u003Cli>Display sets of random content like a slideshow\u003C\u002Fli>\n\u003Cli>Set the date range to control when your random content will be displayed\u003C\u002Fli>\n\u003Cli>Categories to define random sets of content\u003C\u002Fli>\n\u003Cli>Widgets and shortcodes to display random content\u003C\u002Fli>\n\u003Cli>Ability to change randomizer permalinks\u003C\u002Fli>\n\u003C\u002Ful>\n","This plugin allows you to add texts, images, videos and display them in a random order or slideshow.",200,8358,"2018-01-21T13:57:00.000Z","4.9.29",[134,135,19,20,136],"featured","joke","text","https:\u002F\u002Fwww.elementous.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontent-randomizer.zip",{"attackSurface":140,"codeSignals":156,"taintFlows":167,"riskAssessment":168,"analyzedAt":178},{"hooks":141,"ajaxHandlers":148,"restRoutes":149,"shortcodes":150,"cronEvents":154,"entryPointCount":155,"unprotectedCount":24},[142],{"type":143,"name":144,"callback":145,"file":146,"line":147},"action","wp_enqueue_scripts","idquotes_scripts","idquotes.php",18,[],[],[151],{"tag":152,"callback":153,"file":146,"line":60},"id_popular_quotes","idquotes_shortcode",[],1,{"dangerousFunctions":157,"sqlUsage":158,"outputEscaping":160,"fileOperations":24,"externalRequests":24,"nonceChecks":24,"capabilityChecks":24,"bundledLibraries":166},[],{"prepared":24,"raw":24,"locations":159},[],{"escaped":24,"rawEcho":30,"locations":161},[162,165],{"file":146,"line":163,"context":164},92,"raw output",{"file":146,"line":32,"context":164},[],[],{"summary":169,"deductions":170},"The \"indesign-random-quotes\" plugin v1.0 demonstrates a generally good security posture in several key areas. The static analysis reveals no dangerous functions, no file operations, and no external HTTP requests, which are all positive indicators. Importantly, all SQL queries utilize prepared statements, mitigating the risk of SQL injection. There are also no recorded vulnerabilities in its history, suggesting a history of secure development or a lack of past scrutiny.\n\nHowever, there are significant areas of concern. The absence of nonce checks and capability checks across all entry points, including the single shortcode, is a major weakness. This means that any user, regardless of their WordPress role or permissions, can trigger the functionality associated with the shortcode. Furthermore, the analysis indicates that 100% of output is not properly escaped, posing a direct risk of Cross-Site Scripting (XSS) vulnerabilities. Any data displayed to users via this plugin's shortcode could be manipulated by an attacker.\n\nIn conclusion, while the plugin avoids common pitfalls like unescaped SQL and dangerous functions, the complete lack of input validation (nonces) and authorization checks, coupled with unescaped output, creates significant security risks. The absence of vulnerabilities in its history is a positive, but it doesn't negate the current flaws identified in the code analysis. The plugin needs immediate attention to address the XSS and potential authorization bypass issues.",[171,173,175],{"reason":172,"points":48},"Unescaped output detected",{"reason":174,"points":11},"Missing capability checks on entry points",{"reason":176,"points":177},"Missing nonce checks on entry points",7,"2026-03-16T23:37:09.210Z",{"wat":180,"direct":187},{"assetPaths":181,"generatorPatterns":183,"scriptPaths":184,"versionParams":185},[182],"\u002Fwp-content\u002Fplugins\u002Findesign-random-quotes\u002Fcss\u002Fstyle.css",[],[],[186],"indesign-random-quotes\u002Fcss\u002Fstyle.css?ver=",{"cssClasses":188,"htmlComments":192,"htmlAttributes":193,"restEndpoints":194,"jsGlobals":195,"shortcodeOutput":196},[189,190,191],"idquotes-warp","idquotes-quotes","idquotes-donner-name",[],[],[],[],[197,198,199],"\u003Cdiv class='idquotes-warp'>\u003Cdiv class='idquotes-quotes'>","\u003C\u002Fdiv>\u003Cdiv class='idquotes-donner-name'>","\u003C\u002Fdiv>\u003C\u002Fdiv>"]