{"id":20381,"date":"2012-10-19T03:13:45","date_gmt":"2012-10-19T03:13:45","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/random-content\/"},"modified":"2026-03-23T15:15:10","modified_gmt":"2026-03-23T15:15:10","slug":"random-content","status":"publish","type":"plugin","link":"https:\/\/ug.wordpress.org\/plugins\/random-content\/","author":8565992,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.6.5","stable_tag":"1.6.5","tested":"6.9.4","requires":"5.0.1","requires_php":"","requires_plugins":null,"header_name":"Random Content","header_author":"Endo Creative","header_description":"","assets_banners_color":"79cb9c","last_updated":"2026-03-23 15:15:10","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.endocreative.com","header_plugin_uri":"https:\/\/www.randomcontentpro.com","header_author_uri":"https:\/\/www.endocreative.com","rating":4.8,"author_block_rating":0,"active_installs":3000,"downloads":56572,"num_ratings":33,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.3":{"tag":"0.3","author":"endocreative","date":"2013-11-09 18:20:13"},"0.4":{"tag":"0.4","author":"endocreative","date":"2014-07-13 15:05:42"},"1.0":{"tag":"1.0","author":"endocreative","date":"2014-11-04 03:41:48"},"1.1":{"tag":"1.1","author":"endocreative","date":"2015-01-12 14:38:36"},"1.2":{"tag":"1.2","author":"endocreative","date":"2015-01-31 00:57:18"},"1.3":{"tag":"1.3","author":"endocreative","date":"2016-07-28 06:09:03"},"1.3.1":{"tag":"1.3.1","author":"endocreative","date":"2016-08-04 17:54:41"},"1.3.2":{"tag":"1.3.2","author":"endocreative","date":"2019-03-14 03:49:45"},"1.4.0":{"tag":"1.4.0","author":"endocreative","date":"2021-03-31 16:09:18"},"1.4.1":{"tag":"1.4.1","author":"endocreative","date":"2023-05-16 22:37:02"},"1.5.0":{"tag":"1.5.0","author":"endocreative","date":"2026-02-05 16:27:34"},"1.6.0":{"tag":"1.6.0","author":"endocreative","date":"2026-02-11 19:10:32"},"1.6.1":{"tag":"1.6.1","author":"endocreative","date":"2026-02-12 03:05:03"},"1.6.2":{"tag":"1.6.2","author":"endocreative","date":"2026-02-12 15:46:02"},"1.6.3":{"tag":"1.6.3","author":"endocreative","date":"2026-02-23 21:52:11"},"1.6.4":{"tag":"1.6.4","author":"endocreative","date":"2026-03-11 04:34:24"},"1.6.5":{"tag":"1.6.5","author":"endocreative","date":"2026-03-23 15:15:10"},"5.0":{"tag":"5.0","author":"endocreative","date":"2013-01-02 00:08:10"},"6.0":{"tag":"6.0","author":"endocreative","date":"2013-11-09 17:54:05"}},"upgrade_notice":[],"ratings":{"1":1,"2":0,"3":0,"4":1,"5":31},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3454855,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3454855,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3454859,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3454859,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.3","0.4","1.0","1.1","1.2","1.3","1.3.1","1.3.2","1.4.0","1.4.1","1.5.0","1.6.0","1.6.1","1.6.2","1.6.3","1.6.4","1.6.5","5.0","6.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":2506850,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":2506850,"resolution":"2","location":"assets","locale":""}},"screenshots":{"1":"Adding the widget to a sidebar."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[242361,2487,25779,255678,1518],"plugin_category":[43,50],"plugin_contributors":[81420],"plugin_business_model":[],"class_list":["post-20381","plugin","type-plugin","status-publish","hentry","plugin_tags-content-rotation","plugin_tags-dynamic-content","plugin_tags-random-content","plugin_tags-rotating-content","plugin_tags-testimonials","plugin_category-customization","plugin_category-media","plugin_contributors-endocreative","plugin_committers-endocreative"],"banners":{"banner":"https:\/\/ps.w.org\/random-content\/assets\/banner-772x250.png?rev=3454859","banner_2x":"https:\/\/ps.w.org\/random-content\/assets\/banner-1544x500.png?rev=3454859","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/random-content\/assets\/icon-128x128.png?rev=3454855","icon_2x":"https:\/\/ps.w.org\/random-content\/assets\/icon-256x256.png?rev=3454855","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/random-content\/assets\/screenshot-1.png?rev=2506850","caption":"Adding the widget to a sidebar."},{"src":"https:\/\/ps.w.org\/random-content\/assets\/screenshot-2.png?rev=2506850","caption":""}],"raw_content":"<!--section=description-->\n<p><strong>Random Content<\/strong> 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.<\/p>\n\n<p>Every time a visitor loads the page, they see something different. That means higher engagement, more clicks, and a site that never feels stale.<\/p>\n\n<h4>What can you do with it?<\/h4>\n\n<ul>\n<li><strong>Rotate testimonials<\/strong> \u2014 Show a different customer quote on every page load<\/li>\n<li><strong>Randomize banners<\/strong> \u2014 Keep sidebar and header promotions fresh without manual updates<\/li>\n<li><strong>Cycle CTAs<\/strong> \u2014 Test different calls-to-action to see what gets clicks<\/li>\n<li><strong>Display tips or quotes<\/strong> \u2014 Add variety to any page, post, or widget area<\/li>\n<li><strong>Shuffle FAQs<\/strong> \u2014 Surface different questions each visit<\/li>\n<\/ul>\n\n<h4>Free features<\/h4>\n\n<ul>\n<li>Display random content anywhere with the <code>[random_content]<\/code> shortcode<\/li>\n<li>Use in posts, pages, sidebars, or widget areas<\/li>\n<li>Organize content into groups for separate rotation sets<\/li>\n<li>Control how many items display at once<\/li>\n<li>Full WordPress editor support \u2014 text, images, HTML, shortcodes, embeds<\/li>\n<li>Lightweight and fast with built-in caching<\/li>\n<li>No coding required<\/li>\n<\/ul>\n\n<h4>Getting started<\/h4>\n\n<ol>\n<li>Create entries under the Random Content post type<\/li>\n<li>Organize them into Groups (works like categories)<\/li>\n<li>Add <code>[random_content group_id=\"123\"]<\/code> wherever you want random content to appear<\/li>\n<\/ol>\n\n<p>That's it. Your content rotates automatically on every page load.<\/p>\n\n<h4>Need more control?<\/h4>\n\n<p><strong><a href=\"https:\/\/randomcontentpro.com\/\">Random Content Pro<\/a><\/strong> gives you complete control over what visitors see and when they see it:<\/p>\n\n<ul>\n<li><strong>Scheduling<\/strong> \u2014 Set start and end dates so content appears and disappears automatically. Run time-limited campaigns without touching your site.<\/li>\n<li><strong>Visitor targeting<\/strong> \u2014 Show different content based on user role, login status, UTM parameters, referrer, or page type.<\/li>\n<li><strong>Frequency controls<\/strong> \u2014 Prevent the same item from showing twice in a row. Set cooldown periods between displays.<\/li>\n<li><strong>Weighted selection<\/strong> \u2014 Assign weights (1\u201310) to each item. Higher weight = shown more often. Perfect for A\/B testing.<\/li>\n<li><strong>Display rules<\/strong> \u2014 Control visibility per group: logged-in only, specific roles, specific page types.<\/li>\n<li><strong>Fallback content<\/strong> \u2014 Define what shows when all items are filtered out. Never display an empty space.<\/li>\n<li><strong>Automatic updates<\/strong> \u2014 Get new features and fixes delivered directly to your WordPress dashboard.<\/li>\n<\/ul>\n\n<p><a href=\"https:\/\/randomcontentpro.com\/\">Learn more about Random Content Pro \u2192<\/a><\/p>\n\n<h4>Shortcode usage<\/h4>\n\n<p>Display a random item from all entries:\n    [random_content]<\/p>\n\n<p>Display from a specific group:\n    [random_content group_id=\"64\"]<\/p>\n\n<p>Display multiple items at once:\n    [random_content group_id=\"13\" num_posts=\"3\"]<\/p>\n\n<p>Load content via AJAX (useful for sites with page caching):\n    [random_content group_id=\"64\" ajax=\"yes\"]<\/p>\n\n<h4>Widget usage<\/h4>\n\n<p>Navigate to Appearance \u2192 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.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>random-content<\/code> folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin through the Plugins menu in WordPress<\/li>\n<li>Go to Random Content \u2192 Add New to create your first entry<\/li>\n<li>Organize entries into Groups under Random Content \u2192 Groups<\/li>\n<li>Place the <code>[random_content]<\/code> shortcode in any post, page, or widget<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20group%20entries%20together%3F\"><h3>How do I group entries together?<\/h3><\/dt>\n<dd><p>Create a Group under Random Content \u2192 Groups, then assign entries to that group. It works just like post categories.<\/p><\/dd>\n<dt id=\"how%20do%20i%20find%20the%20group%20id%3F\"><h3>How do I find the group ID?<\/h3><\/dt>\n<dd><p>Go to Random Content \u2192 Groups in your WordPress admin. The ID is listed in the table.<\/p><\/dd>\n<dt id=\"can%20i%20show%20more%20than%20one%20item%20at%20a%20time%3F\"><h3>Can I show more than one item at a time?<\/h3><\/dt>\n<dd><p>Yes. Use the <code>num_posts<\/code> parameter: <code>[random_content group_id=\"13\" num_posts=\"3\"]<\/code>. In the widget, enter a number in the \"Number of Posts\" field.<\/p><\/dd>\n<dt id=\"can%20i%20schedule%20content%20to%20appear%20at%20specific%20times%3F\"><h3>Can I schedule content to appear at specific times?<\/h3><\/dt>\n<dd><p>Scheduling is available in <a href=\"https:\/\/randomcontentpro.com\/\">Random Content Pro<\/a>. Set start and end dates for any content item, and it will appear and disappear automatically.<\/p><\/dd>\n<dt id=\"can%20i%20show%20different%20content%20to%20logged-in%20vs.%20logged-out%20users%3F\"><h3>Can I show different content to logged-in vs. logged-out users?<\/h3><\/dt>\n<dd><p>Yes \u2014 with <a href=\"https:\/\/randomcontentpro.com\/\">Random Content Pro<\/a>. Pro adds visitor targeting based on user role, login status, UTM parameters, referrer domain, and page type.<\/p><\/dd>\n<dt id=\"can%20i%20control%20how%20often%20a%20specific%20item%20is%20shown%3F\"><h3>Can I control how often a specific item is shown?<\/h3><\/dt>\n<dd><p><a href=\"https:\/\/randomcontentpro.com\/\">Random Content Pro<\/a> includes weighted selection (assign weights 1\u201310 to each item) and frequency controls (prevent the same item from showing consecutively).<\/p><\/dd>\n<dt id=\"what%20does%20the%20ajax%20parameter%20do%3F\"><h3>What does the ajax parameter do?<\/h3><\/dt>\n<dd><p>By default, content is rendered server-side with the page for the best performance. If your site uses full-page caching (e.g., WP Super Cache, W3 Total Cache, or a CDN), the random content may get cached and stop rotating. Add <code>ajax=\"yes\"<\/code> to load content dynamically after the page loads, bypassing the cache: <code>[random_content group_id=\"64\" ajax=\"yes\"]<\/code>.<\/p><\/dd>\n<dt id=\"will%20this%20slow%20down%20my%20site%3F\"><h3>Will this slow down my site?<\/h3><\/dt>\n<dd><p>No. Random Content uses efficient PHP randomization and built-in transient caching. No extra database queries on the front end beyond what's needed.<\/p><\/dd>\n<dt id=\"does%20random%20content%20pro%20require%20the%20free%20version%3F\"><h3>Does Random Content Pro require the free version?<\/h3><\/dt>\n<dd><p>No. Random Content Pro is a standalone plugin that includes everything from the free version plus all Pro features. If you have the free version installed, deactivate it before activating Pro.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.6.5<\/h4>\n\n<ul>\n<li>Fixed compatibility issue with Elementor and other page builders where editor content would not display<\/li>\n<\/ul>\n\n<h4>1.6.4<\/h4>\n\n<ul>\n<li>Fixed multiple posts displaying in chronological order instead of random order<\/li>\n<\/ul>\n\n<h4>1.6.3<\/h4>\n\n<ul>\n<li>Fix bug for memory exhaustion from infinite recursion<\/li>\n<\/ul>\n\n<h4>1.6.2<\/h4>\n\n<ul>\n<li>Restored server-side rendering as default for better performance<\/li>\n<li>AJAX loading is now opt-in via ajax=\"yes\" shortcode parameter<\/li>\n<li>JavaScript and REST API requests only load when AJAX mode is active<\/li>\n<\/ul>\n\n<h4>1.6.1<\/h4>\n\n<ul>\n<li>Fixed AJAX content loading on sites without pretty permalinks<\/li>\n<\/ul>\n\n<h4>1.6.0<\/h4>\n\n<ul>\n<li>Added AJAX-based content loading via REST API for full compatibility with page caching<\/li>\n<li>Front-end JavaScript loads random content dynamically with noscript fallback<\/li>\n<li>Updated Plugin URI to randomcontentpro.com<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Replaced ORDER BY RAND() with efficient PHP randomization<\/li>\n<li>Added transient caching<\/li>\n<li>Added multiple code improvements<\/li>\n<\/ul>\n\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Ensure compatibility with latest WP version<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Add support for block editor<\/li>\n<li>Update widget settings<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Update tested to version<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Fix shortcode output so that multiple posts will display<\/li>\n<\/ul>\n\n<h4>1.3<\/h4>\n\n<ul>\n<li>Add rc_content filter for extending the plugin output in both the shortcode and the widget<\/li>\n<li>Add content filter to widget output to allow for oembed support<\/li>\n<\/ul>\n\n<h4>1.2<\/h4>\n\n<ul>\n<li>Add localization files for translation support<\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>Add num_posts parameter to old version of shortcode for backwards compatibility<\/li>\n<\/ul>\n\n<h4>1.0<\/h4>\n\n<ul>\n<li>Update shortcode to [random_content] to help prevent conflicts with other plugins<\/li>\n<li>Added a num_posts paramenter to the shortcode so that more than one post can show at a time<\/li>\n<li>Added the ability to not choose a group in a widget, even if a group exists<\/li>\n<li>Added the ability to control the number of posts that show in the widget<\/li>\n<li>Rebuilt the plugin using OOP principles based on the WordPress plugin boilerplate<\/li>\n<li>Added plugin banner graphic<\/li>\n<li>Updated screenshot image<\/li>\n<\/ul>\n\n<h4>0.4<\/h4>\n\n<ul>\n<li>Update input text syntax in widget<\/li>\n<\/ul>\n\n<h4>0.3<\/h4>\n\n<ul>\n<li>Add shortcode functionality.<\/li>\n<li>Reset post data after widget query.<\/li>\n<\/ul>\n\n<h4>0.1<\/h4>\n\n<ul>\n<li>First released into the wild.<\/li>\n<\/ul>","raw_excerpt":"Display random content anywhere on your WordPress site. Rotate testimonials, banners, CTAs, and more with a simple shortcode or widget.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/20381","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=20381"}],"author":[{"embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/endocreative"}],"wp:attachment":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=20381"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=20381"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=20381"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=20381"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=20381"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=20381"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}