[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fYHIho02ebmNJiEAKFPmWHFONlLm8p6VvPsfZQsDVHko":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":14,"requires_at_least":14,"requires_php":15,"tags":16,"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":35,"analysis":139,"fingerprints":244},"vk-plugin-beta-tester","VK Plugin Beta Tester","0.2.9","Vektor,Inc.","https:\u002F\u002Fprofiles.wordpress.org\u002Fvektor-inc\u002F","\u003Cp>This plugin aids with beta testing WordPress plugins hosted on \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002F\" rel=\"ugc\">wordpress.org\u003C\u002Fa>. After activation of this plugin, you can choose the plugins to show a beta notification at the setting page. Then, WordPress will notify you of new beta versions of selected plugins, not just new stable versions, and you’ll be able to upgrade to these beta versions with just one click within WordPress.\u003Cbr \u002F>\nMake sure to make frequent backups while you beta test plugins, and make sure to report bugs. Thanks for helping test plugins!\u003C\u002Fp>\n","VK Plugin Beta Tester is derived from \"Plugin Beta Tester\" WordPress Plugin, created by mitcho (Michael Yoshitaka Erlewine) Copyright 2013.",10,1535,0,"","5.6.0",[17,18,19,20],"advanced","beta","plugins","testing","https:\u002F\u002Fgithub.com\u002Fvektor-inc\u002Fvk-plugin-beta-tester","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvk-plugin-beta-tester.0.2.9.zip",100,null,"2026-03-15T10:48:56.248Z",[],{"slug":28,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":31,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},"vektor-inc",8,241310,96,126,76,"2026-04-05T09:23:36.870Z",[36,56,79,97,114],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":51,"tags":52,"homepage":53,"download_link":54,"security_score":23,"vuln_count":13,"unpatched_count":13,"last_vuln_date":24,"fetched_at":55},"wordpress-beta-tester","WordPress Beta Tester","4.0.0","Andy Fragen","https:\u002F\u002Fprofiles.wordpress.org\u002Fafragen\u002F","\u003Cp>This plugin provides an easy way to get involved with beta testing WordPress.\u003C\u002Fp>\n\u003Cp>Once installed it will enable you to upgrade your website to the latest Nightly, Beta, or Release Candidate at the click of a button using the built in upgrader.\u003C\u002Fp>\n\u003Cp>By default once enabled it switches your website onto the point release update channel.\u003C\u002Fp>\n\u003Cp>For the more adventurous there is the option to switch to the bleeding edge (trunk) of development.\u003C\u002Fp>\n\u003Cp>Don’t forget to backup before you start!\u003C\u002Fp>\n\u003Cp>Please enable auto-updates for this plugin to ensure future changes are properly handled with core updates.\u003C\u002Fp>\n\u003Ch3>Extra Settings\u003C\u002Fh3>\n\u003Cp>There is a setting to \u003Cstrong>Skip successful autoupdate emails\u003C\u002Fstrong>.  It functions to disable sending emails to the admin user for successful autoupdates. Only emails indicating failures of the autoupdate process are sent.\u003C\u002Fp>\n\u003Cp>There is a setting to \u003Cstrong>Skip bundled plugins and themes\u003C\u002Fstrong>. It functions to disable the installation of any plugins or themes that are bundled with the Core update.\u003C\u002Fp>\n\u003Cp>PRs are welcome on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafragen\u002Fwordpress-beta-tester\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n","Allows you to easily upgrade for testing the next versions of WordPress.",2000,539789,80,47,"2025-11-07T15:26:00.000Z","6.9.4","4.9","5.6",[17,18,20],"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwordpress-beta-tester\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwordpress-beta-tester.4.0.0.zip","2026-03-15T15:16:48.613Z",{"slug":57,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":64,"downloaded":65,"rating":23,"num_ratings":66,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":14,"tags":70,"homepage":76,"download_link":77,"security_score":78,"vuln_count":13,"unpatched_count":13,"last_vuln_date":24,"fetched_at":55},"responsive-posts-widget","Responsive Posts Widget","1.0.3","Mahabub Hasan","https:\u002F\u002Fprofiles.wordpress.org\u002Fmahabub-hasan\u002F","\u003Cp>Responsive Posts Widget is advanced version of the WordPress Recent Responsive Posts  widget allowing increased customization to display recent posts from category,Order by,time limit you define.\u003Cbr \u002F>\nOutput will depend on your settings, and you may define to set post title,post title url, post date, featured image ,post excerpt and read more,post author,post comments.\u003Cbr \u002F>\nIf you set to display title, than you will be able to define how many characters to print.\u003Cbr \u002F>\nIf you set to display featured image, than you will be able to define image width and height in px.\u003Cbr \u002F>\nIf you set to display excerpt, than you will be able to define how many characters to print and also you may add custom read more text.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>You can create custom titles\u003C\u002Fli>\n\u003Cli>You can create titles url\u003C\u002Fli>\n\u003Cli>You can create titles & content limit\u003C\u002Fli>\n\u003Cli>You can set how many posts you wish to display  \u003C\u002Fli>\n\u003Cli>You can select any category \u003C\u002Fli>\n\u003Cli>You can choose from predefined image sizes,or set custom width and height\u003C\u002Fli>\n\u003Cli>You can choose to define the featured image\u003C\u002Fli>\n\u003Cli>You can run as many instances of the widget that you want to!\u003C\u002Fli>\n\u003Cli>You can order your posts randomly   \u003C\u002Fli>\n\u003Cli>You can order your posts time\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Easy to configure CSS\u003Cbr \u002F>\nYou can check demo on following pages.\u003Cbr \u002F>\nhttp:\u002F\u002Fplugin.bdwebteam.com\u002Fresponsive-posts-widget\u002F\u003C\u002Fp>\n\u003Cp>Credits\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Author URI: http:\u002F\u002Fbdwebteam.com\u003C\u002Fli>\n\u003Cli>Support Email: m.manik01@gmail.com\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Recommended WordPress Plugins\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fservice-boxes-widgets-text-icon\u002F\" rel=\"ugc\">Service Boxes Widgets Text Icon\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbdwebteam-recent-post-tabs-widget\u002F\" rel=\"ugc\">bdwebteam recent post tabs widget\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Implement\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Go to the wp admin Widget page.\u003C\u002Fli>\n\u003Cli>Drag and drop “Responsive Posts Widget” into active sidebar.\u003C\u002Fli>\n\u003C\u002Fol>\n","Adds a widget that shows the most recent posts of your site with excerpt, featured image, date by sorting & ordering feature",60,5370,2,"2015-10-19T09:15:00.000Z","4.2.39","1.0.1",[71,72,73,74,75],"advanced-recent-posts","advanced-recent-posts-widget","category","post-plugins","posts","http:\u002F\u002Fplugin.bdwebteam.com\u002Fresponsive-posts-widget","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fresponsive-posts-widget.1.0.3.zip",85,{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":11,"downloaded":87,"rating":23,"num_ratings":88,"last_updated":89,"tested_up_to":90,"requires_at_least":91,"requires_php":14,"tags":92,"homepage":95,"download_link":96,"security_score":78,"vuln_count":13,"unpatched_count":13,"last_vuln_date":24,"fetched_at":55},"stage-wp-plugin-manager","Stage WP Plugin Manager","1.0","Andrés Villarreal","https:\u002F\u002Fprofiles.wordpress.org\u002Fandrezrv\u002F","\u003Cp>If you develop in a local machine, at some point you’ll have some active plugins there that you don’t need in the servers that you’re deploying to. Sure, you can deactivate them in your local machine before deploying, or after deploying in the remote ones, but you’re gonna need them again to be active if you want to perform local work in the future, specially when you update your local database from a remote one. On such kind of scenarios, the whole process of manually activating and deactivating plugins for each stage can be really frustrating, sometimes even taking a lot of your time.\u003C\u002Fp>\n\u003Cp>Stage WP Plugin Manager is meant to solve that problem in an quick and elegant way, by doing an automatic “fake”  activation of the plugins you select for each stage: every plugin you attach to a stage will be immediatly treated as an active plugin on that stage, no matter what its previous status was, or its current status on the other stages. Since the list of active plugins is just filtered instead of rewritten, you can restore the previous status of a plugin by detaching it, and go back to your original setup by deactivating Stage WP Plugin Manager.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Please read the following instructions very carefully.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Getting Started\u003C\u002Fh4>\n\u003Cp>Stage WP Plugin Manager works on some assumptions about your workflow:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>You have a constant named \u003Ccode>WP_STAGE\u003C\u002Fcode> defined in your WordPress configuration file (often \u003Ccode>wp-config.php\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>The value of \u003Ccode>WP_STAGE\u003C\u002Fcode> is one of the supported stages. The default supported stages are \u003Ccode>local\u003C\u002Fcode>, \u003Ccode>staging\u003C\u002Fcode> and \u003Ccode>production\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>The value of \u003Ccode>WP_STAGE\u003C\u002Fcode> is different in each of your stages.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Some developers prefer to keep different configuration files for each one of their stages, or change the values of their constants based on some evaluation. For example, you could have something like this in your \u003Ccode>wp-config.php\u003C\u002Fcode> file:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>if ( file_exists( dirname( __FILE__ ) . '\u002Flocal-config.php' ) ) {\n    define( 'WP_STAGE', 'local' );\n} elseif ( file_exists( dirname( __FILE__ ) . '\u002Fstaging-config.php' ) ) {\n    define( 'WP_STAGE', 'staging' );\n} else {\n    define( 'WP_STAGE', 'production' );\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>If you follow this example, note that \u003Ccode>local-config.php\u003C\u002Fcode> should not be included in your deployments to staging and production, and both \u003Ccode>local-config.php\u003C\u002Fcode> and \u003Ccode>staging-config.php\u003C\u002Fcode> should not exist in your production stage.\u003C\u002Fp>\n\u003Ch4>Attach & Detach\u003C\u002Fh4>\n\u003Cp>Once you have installed this plugin, you will notice that a new link appears under each active plugin of the list, which reads “Attach to [your-stage] stage”. By clicking that link, you are setting a plugin to be always active in the stage you’re working at, and not active on the other stages (unless you attach the plugin to the other stages too).\u003C\u002Fp>\n\u003Cp>In case you want to remove a plugin from the list of active plugins for a stage, you just need to click the “Detach from [your-stage] stage”.\u003C\u002Fp>\n\u003Cp>Additionally, you can make bulk selections of plugins to be attached or detached for each stage by going to \u003Cem>Plugins > Stage Management\u003C\u002Fem>.\u003C\u002Fp>\n\u003Ch4>Add & Extend Functionality\u003C\u002Fh4>\n\u003Cp>Stage WP Plugin Manager allows you to extend its functionality by offering hooks for filters and actions.\u003C\u002Fp>\n\u003Cp>For example, you can add your custom stages or even remove the default ones by hooking in the \u003Ccode>stage_wp_plugin_manager_stages\u003C\u002Fcode> filter, having something like this in your plugin:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>function add_stages( $stages ) {\n    $stages[] = 'other';\n    return $stages;\n}\nadd_filter( 'stage_wp_plugin_manager_stages', 'add_stages' );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Additionally, you can give a nicer name to your new stage by hooking in the \u003Ccode>stage_wp_plugin_manager_stages_txt\u003C\u002Fcode> filter:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>function add_stages_txt( $stages_txt ) {\n    $stages_txt['other'] = __( 'Other stage' );\n    return $stages_txt;\n}\nadd_filter( 'stage_wp_plugin_manager_stages_txt', 'add_stages_txt' );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Here’s the complete list of actions and filters that Stage WP Plugin Manager offers:\u003C\u002Fp>\n\u003Cp>Action hooks\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_before_init\u003C\u002Fcode>: Perform some process before Stage WP Plugin Manager initializes.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_init\u003C\u002Fcode>: Perform some process after Stage WP Plugin Manager initializes.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Filter hooks\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_stages\u003C\u002Fcode>: Modifiy the current supported stages.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_default_stage\u003C\u002Fcode>: Modify the default stage.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_managed_plugins\u003C\u002Fcode>: Modify the list of plugins managed by Stage WP Plugin Manager.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_stage_plugins\u003C\u002Fcode>: Modify the list of plugins attached to the current stage.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_non_stage_plugins\u003C\u002Fcode>: Modify the list of managed plugins that are not attached to the current stage.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_nonce_key\u003C\u002Fcode>: Modify the nonce key used for data validation.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_help_description\u003C\u002Fcode>: Modify contents of “Description” help tab.\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_help_getting_started\u003C\u002Fcode>: Modify contents of “Getting Started” help tab\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_help_attach_detach\u003C\u002Fcode>: Modify contents of “Attach & Detach Plugins” help tab\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_help_add_extend\u003C\u002Fcode>: Modify contents of “Adding Stages & Extending” help tab\u003C\u002Fli>\n\u003Cli>\u003Ccode>stage_wp_plugin_manager_help_credits\u003C\u002Fcode>: Modify contents of “Credits” help tab\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>WordPress MultiSite Compatibility\u003C\u002Fh4>\n\u003Cp>If you’re using MultiSite and set this plugin to network activated, you can use it to attach plugins to stages on a sitewide basis 🙂\u003C\u002Fp>\n\u003Ch4>Improve Your Workflow\u003C\u002Fh4>\n\u003Cp>This plugin was originally meant as a complement for \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fandrezrv\u002Fwordpress-bareboner\" rel=\"nofollow ugc\">WP Bareboner\u003C\u002Fa>, an advanced Git model repo, and \u003Ca href=\"http:\u002F\u002Fgithub.com\u002Fandrezrv\u002Fstage-wp\" rel=\"nofollow ugc\">Stage WP\u003C\u002Fa>, a deployment tool based in Capistrano. The three projects work really well separated, but their real power can only be seen by using them together.\u003C\u002Fp>\n\u003Ch4>Contribute\u003C\u002Fh4>\n\u003Cp>You can make suggestions and submit your own modifications to this plugin on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fandrezrv\u002Fstage-wp-plugin-manager\" rel=\"nofollow ugc\">Github\u003C\u002Fa>.\u003C\u002Fp>\n","Gives you the option to determine which plugins must be automatically activated either on local, staging or productions stages.",2812,3,"2014-12-07T02:50:00.000Z","4.0.38","3.0",[93,19,94,20],"manager","stage","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fstage-wp-plugin-manager\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fstage-wp-plugin-manager.1.0.zip",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":13,"downloaded":105,"rating":13,"num_ratings":13,"last_updated":106,"tested_up_to":107,"requires_at_least":91,"requires_php":14,"tags":108,"homepage":112,"download_link":113,"security_score":78,"vuln_count":13,"unpatched_count":13,"last_vuln_date":24,"fetched_at":55},"beta-flags","Beta Flags … now with A\u002FB Testing!","1.3.0","Charles Jaimet","https:\u002F\u002Fprofiles.wordpress.org\u002Fcmjaimet\u002F","\u003Cp>Beta Flags allow developers to manage the release of new features. Instead of having code execute as soon as it is deployed to the production environment. You can now wrap it in a beta flag conditional and activate it from the back end.\u003C\u002Fp>\n\u003Cp>A\u002FB Testing works very similarly, except that instead of turning a code block on or off, they allow you to turn it on 50% of the time. This uses a slight variant on the URL used to display a post or term page, which can then be tracked in an analytics service (e.g. Adobe Omniture, Google 360).\u003C\u002Fp>\n\u003Ch3>The Basics of Beta Flags\u003C\u002Fh3>\n\u003Cp>To create a new beta flag, open the configuration JSON file. A copy of this file is provided with this plugin and is stored at \u003Ccode>data\u002Fbeta-flags.json\u003C\u002Fcode>. You may prefer to create a copy in the root of your theme, the same folder that contains functions.php (\u003Ccode>[theme]\u002Fbeta-flags.json\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Cp>The JSON file follows the format below:\u003Cbr \u002F>\n    \u003Ccode>{\u003Cbr \u002F>\n    \"flags\": {\u003Cbr \u002F>\n        \"sidebar_web\": {\u003Cbr \u002F>\n            \"title\": \"Beta Flags IN THEME\",\u003Cbr \u002F>\n            \"description\": \"Add a sidebar to the post page\",\u003Cbr \u002F>\n            \"author\": \"Charles Jaimet\"\u003Cbr \u002F>\n        },\u003Cbr \u002F>\n        \"library_admin\": {\u003Cbr \u002F>\n            \"title\": \"Beta Flags QA: Plugin Admin Test\",\u003Cbr \u002F>\n            \"description\": \"For Beta Flag testing in admin interface\",\u003Cbr \u002F>\n            \"author\": \"Charles Jaimet\"\u003Cbr \u002F>\n        }\u003Cbr \u002F>\n    }\u003Cbr \u002F>\n}\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Each flag is defined by a key (e.g. sidebar_web, library_admin), representing an object with a title, description, and author. The key must be unique, and is used throughout to identify the given flag.\u003C\u002Fp>\n\u003Cp>Once you have activated the plugin (there are no special instructions for this), navigate to Tools > Beta Flags in the admin interface (\u003Ccode>\u002Fwp-admin\u002Ftools.php?page=beta-flags\u003C\u002Fcode>). Here you will find the flags from your JSON file if you have created it correctly.\u003C\u002Fp>\n\u003Cp>A note about JSON, the easiest mistake to make is to put a comma after the last element in an array or object. This will break the JSON but is easy enough to fix when you know what to look for. Kinda like forgetting a semi-colon in PHP. Stupid semi-colons…\u003C\u002Fp>\n\u003Cp>When you first load the plugin, and any time after you update the JSON file, you should return to this admin screen. New flags are disabled by default, and can only be enabled here. Check the box in the Enabled column beside each flag you want to turn on. Click Save Changes when done.\u003C\u002Fp>\n\u003Cp>In your theme or other plugins, you can use these beta flag keys to control feature execution by wrapping a conditional around the relevant code. Try to group your wrapped code into a single function, method, or class to avoid littering your theme with beta flag conditionals.\u003C\u002Fp>\n\u003Cp>The public function \u003Ccode>beta_flag_enabled( $key )\u003C\u002Fcode> will return a true|false value if the beta flag is enabled.\u003C\u002Fp>\n\u003Cp>Some examples:\u003Cbr \u002F>\n    \u003Ccode>if ( beta_flag_enabled( 'sidebar_web' ) ) {\u003Cbr \u002F>\n    get_sidebar();\u003Cbr \u002F>\n}\u003C\u002Fcode>\u003Cbr \u002F>\n    \u003Ccode>if ( beta_flag_enabled( 'new_design' ) ) {\u003Cbr \u002F>\n    wp_register_style( 'my_styles', '\u002Fassets\u002Fmy_styles.css', array(), '1.0.0', false );\u003Cbr \u002F>\n    wp_enqueue_style( 'my_styles' );\u003Cbr \u002F>\n}\u003C\u002Fcode>\u003Cbr \u002F>\n    \u003Ccode>if ( beta_flag_enabled( 'popup_offer' ) ) {\u003Cbr \u002F>\n    new PopupOffer( '10% Off', 0.1 );\u003Cbr \u002F>\n}\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>I suggest using beta flag keys that make sense and convey their purpose. Adding a version number never hurt, either. There is no character limit, so go nuts.\u003Cbr \u002F>\n    \u003Ccode>if ( beta_flag_enabled( 'revised_sticky_video_for_youtube_widgets_v.1.0.5' ) ) {\u003Cbr \u002F>\n    get_sidebar();\u003Cbr \u002F>\n}\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch3>A\u002FB Testing\u003C\u002Fh3>\n\u003Cp>Now you have your beta flags and you’ve embedded them in your code. The feature works as expected and you have it running on production. Is it better than what it replaced?\u003C\u002Fp>\n\u003Cp>Enter A\u002FB testing.\u003C\u002Fp>\n\u003Cp>Check the A\u002FB Test box beside the flag you want to test in the admin interface (see screen shot below), and check the “Enable beta testing” box at the bottom of the flag list, then click “Save Changes”.\u003C\u002Fp>\n\u003Cp>Go to your website and refresh a few times. You will start to see some term and post links appearing with \u003Ccode>?ab=1\u003C\u002Fcode> appended to their URLs. (e.g. \u003Ccode>http:\u002F\u002Flocal.wordpress.test\u002Fhello-world\u002F?ab=1\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Cp>When a visitor follows one of these links they will see your page with the beta flag disabled. When they follow the normal URL without the query string (e.g. \u003Ccode>http:\u002F\u002Flocal.wordpress.test\u002Fhello-world\u002F\u003C\u002Fcode>) they will see the page with the beta flag enabled.\u003C\u002Fp>\n\u003Cp>The query string is randomly appended 50% of time, so two visitors may follow the same link in the sidebar or menu, and one will get the flag turned on and one will get it turned off.\u003C\u002Fp>\n\u003Cp>Because the URL matches the state of the beta flag, you will be able to see in your analytics service which experience visitors engaged with more. Implementing an effective A\u002FB testing campaign is outside the scope of a README file but there are plenty of good reference books and sites.\u003C\u002Fp>\n\u003Cp>As long as the “Enable beta testing” box is checked, post and term URLs on your site will get this query string treatment. Only beta flags that have the A\u002FB Test box checked will be affected. Those with it unchecked will be controlled strictly by their Enabled box. Note also that checking A\u002FB Test on a flag that is disabled will have no effect. Off is off.\u003C\u002Fp>\n","Thanks to: James Williams, whose plugin inspired this one (https:\u002F\u002Fgithub.com\u002Fjamesrwilliams\u002Ffeature-flags)",1123,"2018-11-02T13:34:00.000Z","4.9.29",[109,98,110,111],"ab-testing","developers","feature-flags","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbeta-flags\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeta-flags.zip",{"slug":115,"name":116,"version":117,"author":118,"author_profile":119,"description":120,"short_description":121,"active_installs":122,"downloaded":123,"rating":31,"num_ratings":124,"last_updated":125,"tested_up_to":49,"requires_at_least":126,"requires_php":127,"tags":128,"homepage":134,"download_link":135,"security_score":136,"vuln_count":137,"unpatched_count":13,"last_vuln_date":138,"fetched_at":55},"wp-reset","WP Reset","2.06","WebFactory","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebfactory\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpreset.com\u002F\" rel=\"nofollow ugc\">WP Reset\u003C\u002Fa> quickly resets the site’s database to the default installation values without modifying any files. It deletes all customizations and content, or just chosen parts like theme settings. WordPress Reset is fast and safe to use thanks to the built-in snapshots which provide 1-click restore functionality. It has multiple fail-safe mechanisms so you can never accidentally lose data. WP Reset is extremely helpful for plugin and theme developers. It \u003Cstrong>speeds up testing & debugging\u003C\u002Fstrong> by providing a quick way to reset settings and re-test code. It’s the only WP development tool for non-developers that enables advanced reset.\u003C\u002Fp>\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\u002FqMnkCW2PFoI?version=3&rel=0&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\u003Cp>For support please use the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fwp-reset\" rel=\"ugc\">official forum\u003C\u002Fa>, and if you need more information visit \u003Ca href=\"https:\u002F\u002Fwpreset.com\u002F\" rel=\"nofollow ugc\">wpreset.com\u003C\u002Fa> and be sure to check out the \u003Ca href=\"https:\u002F\u002Fwpreset.com\u002F\" rel=\"nofollow ugc\">roadmap\u003C\u002Fa> for the list of upcoming features.\u003C\u002Fp>\n\u003Cp>Access WP Reset admin page via the “Tools” menu.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Please read carefully before proceeding to understand what WP Reset does, and remember to always create a snapshot\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Resetting will delete:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>all posts, pages, custom post types, comments, media entries, users\u003C\u002Fli>\n\u003Cli>all default WP database tables\u003C\u002Fli>\n\u003Cli>all custom database tables that have the same prefix table prefix as the one defined in \u003Cem>wp-config.php\u003C\u002Fem> and used by default tables\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Resetting will not delete or modify:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>media files – they remain in the \u003Cem>wp-uploads\u003C\u002Fem> folder untouched but will no longer be listed under Media in admin\u003C\u002Fli>\n\u003Cli>no files are touched; plugins, themes, uploads – everything stays\u003C\u002Fli>\n\u003Cli>site title, WordPress address, site address, site language and search engine visibility settings\u003C\u002Fli>\n\u003Cli>currently logged in user will be restored with the current username and password\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>What happens when I click the Reset button?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>remember to always create a snapshot first or a full backup\u003C\u002Fli>\n\u003Cli>you will have to confirm the action one more time because there is NO UNDO\u003C\u002Fli>\n\u003Cli>everything will be reset; see bullets above for details\u003C\u002Fli>\n\u003Cli>site title, WordPress address, site address, site language, search engine visibility settings as well as the current user will be restored\u003C\u002Fli>\n\u003Cli>you will be logged out, automatically logged in and taken to the admin dashboard\u003C\u002Fli>\n\u003Cli>WP Reset plugin will be reactivated if that option is chosen in the post-reset options\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Undoing a reset\u003C\u002Fh4>\n\u003Cp>Before doing a reset, create a snapshot. The button is located right next to the reset button and it takes less than 10 seconds to create a snapshot. After reset is done, if you need to undo it simply restore the snapshot and that’s it.\u003C\u002Fp>\n\u003Ch4>WP-CLI support\u003C\u002Fh4>\n\u003Cp>WP Reset comes with full WP-CLI support. Help on our WP-CLI commands is available via \u003Cem>wp help reset\u003C\u002Fem>. By default the commands have to be confirmed but you can use the \u003Ccode>--yes\u003C\u002Fcode> option to skip confirmation. Instead of the active user, the first user with admin privileges found in the database will be restored after reset. Please be careful when using WP Reset with WP-CLI – as with using the GUI always make a snapshot or backup first.\u003C\u002Fp>\n\u003Cp>Currently supported WP-CLI commands:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>wp reset reset\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp reset version\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp reset delete\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wp reset snapshots\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Database Snapshots\u003C\u002Fh4>\n\u003Cp>Database snapshot is a copy of all WP database tables, standard and custom ones, saved in the currently used database (as set by \u003Cem>wp-config.php\u003C\u002Fem>). Files are not saved or included in snapshots in any way.\u003Cbr \u002F>\nSnapshots are primarily a development tool. Although they can be used for backups (and downloaded as gzipped SQL dumps), we suggest finding a more suitable tool for doing backups of live sites. Use snapshots to find out what changes a plugin made to your database – what custom tables were created, modified, deleted or what changes were made to site’s settings. Or use it to quickly restore the development environment after testing database related changes.\u003Cbr \u002F>\nRestoring a snapshot does not affect other snapshots, or WP Reset settings. Snapshots can be compared to current database tables, restored (by overwriting current tables), exported ad gzipped SQL dumps, or deleted. Creating a snapshot on an average WordPress installation takes 1-2 seconds.\u003C\u002Fp>\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\u002FxBfMmS12vMY?version=3&rel=0&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>Multisite (WP-MU) Support\u003C\u002Fh4>\n\u003Cp>WP Reset has yet to be completely tested with multisite! Please be careful when using it with multisite enabled. We don’t recommend to resetting the main site. Sub-sites should be OK. We’re working on making WP Reset fully compatible with WP-MU. Till then please be careful. Thank you for understanding.\u003C\u002Fp>\n\u003Ch4>Partial Reset Tools\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Delete transients – deletes all transient related database entries. Including expired and non-expired transients, and orphaned timeout entries.\u003C\u002Fli>\n\u003Cli>Delete uploads – delete all files and folder in the \u002Fuploads\u002F folder.\u003C\u002Fli>\n\u003Cli>Delete plugins – deletes all plugins except WP Reset which remains active.\u003C\u002Fli>\n\u003Cli>Reset theme options – resets all options for all themes that use the WP theme mods API.\u003C\u002Fli>\n\u003Cli>Delete themes – deletes all themes.\u003C\u002Fli>\n\u003Cli>Empty or delete custom tables – empties (truncates) or deletes (drops) all custom database tables.\u003C\u002Fli>\n\u003Cli>Delete .htaccess file – deletes the .htaccess file. If you need to edit .htaccess without FTP use our free \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-htaccess-editor\u002F\" rel=\"ugc\">WP Htaccess Editor\u003C\u002Fa> plugin.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>GDPR compatibility\u003C\u002Fh4>\n\u003Cp>We are not lawyers. Please do not take any of the following as legal advice.\u003Cbr \u002F>\nWP Reset does not track, collect or process any user data on the front end. Nothing is logged or pushed to any 3rd parties. We also don’t use any 3rd party services or CDNs. All actions are performed in the admin and started exclusively on users’ request. If you opt to activate your PRO license in the plugin, some data will be shared with WebFactory Ltd; that’s clearly noted below the license activation form. Based on that, we feel it’s GDPR compatible, but again, please, don’t take this as legal advice.\u003C\u002Fp>\n\u003Ch4>Friends who helped us translate WP Reset\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>French – \u003Ca href=\"https:\u002F\u002Fwww.infrenchtranslation.com\u002F\" rel=\"nofollow ugc\">Jeff Inho\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you’re having problems with SSL or HTTPS try our free \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-force-ssl\u002F\" rel=\"ugc\">WP Force SSL\u003C\u002Fa> plugin. It’s a great plugin to enable SSL or install SSL.\u003C\u002Fp>\n","WP Reset resets the entire site or selected parts using advanced reset options to default values. 100% safe to use with built-in restore function.",300000,9815290,994,"2026-01-06T20:10:00.000Z","4.0","5.2",[129,130,131,132,133],"advanced-wordpress-reset","reset","reset-database","reset-wordpress","wordpress-reset","https:\u002F\u002Fwpreset.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-reset.2.06.zip",91,6,"2025-10-06 00:00:00",{"attackSurface":140,"codeSignals":192,"taintFlows":232,"riskAssessment":233,"analyzedAt":243},{"hooks":141,"ajaxHandlers":184,"restRoutes":189,"shortcodes":190,"cronEvents":191,"entryPointCount":154,"unprotectedCount":154},[142,148,151,156,160,166,169,173,177,180],{"type":143,"name":144,"callback":145,"file":146,"line":147},"action","admin_enqueue_scripts","admin_common_css","inc\\vk-admin\\package\\class-vk-admin.php",23,{"type":143,"name":149,"callback":145,"file":146,"line":150},"customize_register",24,{"type":143,"name":152,"callback":153,"priority":154,"file":146,"line":155},"wp_dashboard_setup","dashboard_widget",1,25,{"type":143,"name":157,"callback":158,"file":146,"line":159},"admin_footer","load_rest_api_js",209,{"type":161,"name":162,"callback":163,"priority":11,"file":164,"line":165},"filter","plugin_row_meta","meta_filter","vk-plugin-beta-tester.php",27,{"type":161,"name":162,"callback":167,"priority":11,"file":164,"line":168},"add_update_link_to_plugins_row",29,{"type":143,"name":170,"callback":171,"file":164,"line":172},"pre_current_active_plugins","register_messages",32,{"type":161,"name":174,"callback":175,"priority":11,"file":164,"line":176},"http_response","http_filter",35,{"type":143,"name":157,"callback":178,"file":164,"line":179},"insert_update_check_javascript",37,{"type":143,"name":181,"callback":182,"priority":11,"file":164,"line":183},"admin_menu","add_main_setting",41,[185],{"action":186,"nopriv":187,"callback":186,"hasNonce":187,"hasCapCheck":187,"file":164,"line":188},"check_update_manually",false,39,[],[],[],{"dangerousFunctions":193,"sqlUsage":198,"outputEscaping":200,"fileOperations":13,"externalRequests":13,"nonceChecks":154,"capabilityChecks":13,"bundledLibraries":231},[194],{"fn":195,"file":164,"line":196,"context":197},"unserialize",64,"$wpapi_response   = unserialize( $response['body'] );",{"prepared":13,"raw":13,"locations":199},[],{"escaped":201,"rawEcho":202,"locations":203},7,13,[204,207,209,211,213,215,217,219,221,223,225,227,229],{"file":146,"line":205,"context":206},378,"raw output",{"file":146,"line":208,"context":206},380,{"file":146,"line":210,"context":206},409,{"file":146,"line":212,"context":206},413,{"file":146,"line":214,"context":206},415,{"file":146,"line":216,"context":206},419,{"file":146,"line":218,"context":206},426,{"file":146,"line":220,"context":206},428,{"file":146,"line":222,"context":206},438,{"file":164,"line":224,"context":206},155,{"file":164,"line":226,"context":206},264,{"file":164,"line":228,"context":206},334,{"file":164,"line":230,"context":206},336,[],[],{"summary":234,"deductions":235},"The vk-plugin-beta-tester plugin v0.2.9 exhibits a mixed security posture. While it demonstrates good practices by utilizing prepared statements for all SQL queries and having no known historical vulnerabilities, several concerning factors exist. The plugin's attack surface is small but contains a significant weakness: one unprotected AJAX handler. This could allow unauthenticated users to trigger plugin functionality, potentially leading to unintended consequences depending on the handler's actions.\n\nFurthermore, the presence of the `unserialize` function, a known dangerous function, alongside the unprotected AJAX handler, raises concerns. If the data being unserialized originates from user input, it could be exploited for unserialize vulnerabilities. Although no critical or high-severity taint flows were detected in the static analysis, the combination of these elements warrants careful consideration. The lack of historical vulnerabilities is a positive sign, suggesting a potentially well-maintained codebase, but it does not negate the risks identified in the current static analysis.",[236,238,240],{"reason":237,"points":29},"Unprotected AJAX handler",{"reason":239,"points":201},"Use of dangerous function: unserialize",{"reason":241,"points":242},"Low percentage of properly escaped output",5,"2026-03-16T23:13:32.448Z",{"wat":245,"direct":256},{"assetPaths":246,"generatorPatterns":248,"scriptPaths":249,"versionParams":252},[247],"\u002Fwp-content\u002Fplugins\u002Fvk-plugin-beta-tester\u002Finc\u002Fvk-admin\u002Fcss\u002Fvk-admin-style.css",[],[250,251],"\u002Fwp-content\u002Fplugins\u002Fvk-plugin-beta-tester\u002Finc\u002Fvk-admin\u002Fjs\u002Fvk-admin-common.js","\u002Fwp-content\u002Fplugins\u002Fvk-plugin-beta-tester\u002Fjs\u002Fvk-plugin-beta-tester.js",[253,254,255],"vk-plugin-beta-tester\u002Finc\u002Fvk-admin\u002Fcss\u002Fvk-admin-style.css?ver=","vk-plugin-beta-tester\u002Finc\u002Fvk-admin\u002Fjs\u002Fvk-admin-common.js?ver=","vk-plugin-beta-tester\u002Fjs\u002Fvk-plugin-beta-tester.js?ver=",{"cssClasses":257,"htmlComments":259,"htmlAttributes":261,"restEndpoints":262,"jsGlobals":263,"shortcodeOutput":265},[258],"vk-beta-tester-setting",[260],"\u003C!-- vk-plugin-beta-tester.php -->",[],[],[264],"vk_plugin_beta_tester_vars",[]]