Title: Demo Reset &#8211; Robust Demo Website Automation
Author: Anjana Hemachandra
Published: <strong>12, Abril de 2025</strong>
Last modified: 26, Avientu de 2025

---

Guetar plugins

![](https://ps.w.org/demo-reset/assets/banner-772x250.png?rev=3271459)

![](https://ps.w.org/demo-reset/assets/icon-256x256.png?rev=3271459)

# Demo Reset – Robust Demo Website Automation

 By [Anjana Hemachandra](https://profiles.wordpress.org/anjanahema/)

[Download](https://downloads.wordpress.org/plugin/demo-reset.2.0.1.zip)

 * [Details](https://ast.wordpress.org/plugins/demo-reset/#description)
 * [Reviews](https://ast.wordpress.org/plugins/demo-reset/#reviews)
 *  [Installation](https://ast.wordpress.org/plugins/demo-reset/#installation)
 * [Development](https://ast.wordpress.org/plugins/demo-reset/#developers)

 [Support](https://wordpress.org/support/plugin/demo-reset/)

## Description

> **Build it  Freeze it  Let them play with it  Let it to Auto Reset via Server 
> Cron.**

A lightweight plugin built to deliver robust, set-and-forget Demo Automation.

### Philosophy

Your WordPress product can be a Theme, Plugin, or Specially Developed Website. Why
limit your customers to frontend-only demos? With Demo Reset Free plugin, they can
experience it as an Editor, Author, Subscriber, or any user—without risking permanent
changes or security. This is the ultimate set-and-forget automation solution for
Demo Websites.

Stay ahead of your competitors by earning your customers’ trust and confidence with
fully accessible Demo Websites on your own servers.

At Ministry of Plugins we believe, it is our duty to develop WordPress technologies
to double your sales.

**EXPLORE THE LIVE DEMO: [Demo Website link…](https://free-plugin-demo.demoresetpro.com/)**

### Concept

Simply install the Demo Reset free plugin or Demo Reset Pro plugin on your WordPress
website and create a Reset Point to put the site in the Frozen State (Demo Mode).
This allows you to let your customers to interact with the website without any risk
of permanent changes. With each automatic or manual reset, all customer changes 
will be removed, restoring the website to its original state. In short; Now your
website is ready for Demo purposes.

See the Concept Diagram: [Image link…](https://ps.w.org/demo-reset/assets/screenshot-1.png)

### Use Cases of Demo Reset plugin

#### Demo for sales purposes:

Having a Demo Website as part of your sales funnel can significantly boost customer
conversions for website developers, theme developers, and plugin developers. It 
allows potential customers to experience the product firsthand and increasing their
confidence of making a purchase. With each manual or automatic reset cycle, the 
Demo Reset plugin will keep the WordPress website in its original state by removing
all temporary changes made by customers.

#### Demo for presentation purposes:

For website developers, converting a newly developed WordPress website into a Demo
Site is an excellent strategy for presenting its features and functions to stakeholders.
After the presentation, the developer can easily reset the website to its original
state, erasing any temporary changes. This ensures that the website remains clean
and professional. The Demo Reset plugin can be turned off once the presentation 
is complete.

#### Demo for training purposes:

Training the staff and stakeholders on a newly developed WordPress website is more
effective when using the website in Demo state. This approach allows trainees to
interact with the website and explore its features without the risk of making permanent
changes. After the training session, the developer can reset the website to its 
original state, removing any temporary modifications. This method ensures the site
remains pristine and always ready for future use. The Demo Reset plugin can be turned
off as needed.

See the Use Cases Diagram: [Image link…](https://ps.w.org/demo-reset/assets/screenshot-2.png)

### Demo Reset Free Plugin

#### Demo Reset Free Plugin – Quick Introduction

[YouTube video link…](https://youtu.be/c4Oml--aRwY?si=eTOn6esPHbyJsjQH)

#### Features of Free Plugin:

 * Able to create multiple Reset Points.
 * Manual Demo Reset execution capability.
 * Demo Reset Cycle automation via a regular URL.
 * Demo Reset Cycle automation via a RESTful URL.
 * The entire Database will reset to the chosen Reset Point.
 * All logged-in users will be logged out during the Reset process.
 * Displays the Demo Reset Status (THAWED state or FROZEN state) on the WP Admin
   Bar.
 * Media files uploading and deleting is restricted in the FROZEN state. (Images,
   PDFs etc.)
 * Plugins, Themes are WP Core auto updates are restricted, but can update manually
   in the THAWED state.
 * Capable of deploying Demo Websites only for Non-admin users. Because all admins
   can deactivate the Demo Reset plugin or delete Reset Points.
 * Displays the Demo Users’ login details, Live Demo status, and Reset Timer on 
   the Info Bar.

#### THAWED state of Free Plugin:

 * Changes made by admins or other users will remain on the website.
 * Permalink Settings page is accessible.
 * All the auto-updates are suspended.
 * Admins can install WP Core, Plugin & Theme updates.
 * Admins can install or delete Plugins & Themes.
 * Admins and users can upload new images or files.
 * Admins and users can delete/trash existing uploaded images or files.
 * Only admins can access the Demo Reset Admin Menu.
 * Only admins can change Demo Reset settings.
 * Admins must add at least one Reset Point to activate the FROZEN state (Demo Mode).

#### FROZEN state of Free Plugin:

 * Changes made by admins or other users will be reset in every Reset Cycle.
 * Permalink Settings page is restricted.
 * All the auto-updates are suspended.
 * Installation of WP Core, Plugin & Theme updates is suspended.
 * Installation, activation, deactivation or deletion of Plugins & Themes are suspended.
 * New images or files uploading is suspended.
 * Deletion of already existing uploaded images or files is suspended.
 * Logged-in users will automatically be logged out during the reset process.
 * Only admins can access the Demo Reset Admin Menu.
 * Only admins can change Demo Reset settings.
 * Admins can add multiple Reset Points.
 * Admins should delete all Reset Points to get back to the THAWED state.

#### Setting a WordPress website to FROZEN state (Valid for Free & Pro)

[YouTube video link…](https://youtu.be/Q-ES0ey_0kg?si=bP2tWv1m_OCVa654)

#### Setting an Active Reset Point for Auto Reset (Valid for Free & Pro)

[YouTube video link…](https://youtu.be/rbw3ffD7jOM?si=V8se27ZzqLPqqfk5)

#### Setting Reset Runner URL to run Auto Reset (Valid for Free & Pro)

[YouTube video link…](https://youtu.be/S4qRo6vgyAY?si=QNq6TKHmyjYn54Kk)

#### Setting Reset Runner REST URL to run Auto Reset (Valid for Free & Pro)

[YouTube video link…](https://youtu.be/GIJi1zxjGMU?si=5cdp3el-QTREWKrK)

#### Setting a WordPress website back to THAWED state (Valid for Free & Pro)

[YouTube video link…](https://youtu.be/tq7wX74X2-s?si=yjEEqCpqG-Sm9xQG)

Demo Reset Documentation: [https://ministryofplugins.com/demo-reset-docs](https://ministryofplugins.com/demo-reset-docs)

### Demo Reset Pro Plugin

#### Demo Reset Pro – Quick Introduction

[YouTube video link…](https://youtu.be/oicwILzz0Yo?si=3ulohkktYtP4crDF)

### Features of Pro Plugin:

 * Able to create multiple Reset Points.
 * Manual Demo Reset execution capability.
 * Demo Reset Cycle automation via a regular URL.
 * Demo Reset Cycle automation via a RESTful URL.
 * Demo Reset Cycle automation via server Cron Jobs directly.
 * The entire Database and Media Library can be reset to the selected Reset Point.
 * Offers options to avoid forceful log out on logged-in users during the Reset 
   process.
 * Displays the Demo Reset Status (THAWED state or FROZEN state) on the WP Admin
   Bar.
 * THAWED State Website Isolation capability to prevent unnecessary changes to the
   website.
 * Capable of allowing users to upload new media files and trash already uploaded
   files in the FROZEN state. (Images, PDFs etc.)
 * There will be no accumulation of abandoned files in the uploads directory because
   the Media Library will reset with every reset run.
 * Plugins, Themes are WP Core auto updates are restricted, but can update manually
   in the THAWED state.
 * Able to deploy Demo Websites for both Admin and Non-admin users. Only Admin who
   activate the Demo Reset plugin can access its setup features.
 * Displays the Demo Reset Countdown Timer showing the time remaining for the next
   Reset.
 * Shows the customizable Promo Bar at the top of the Demo Website on both admin
   and public sides.
 * Options to display the Promo Bar on the admin side, public side, both, or hide
   it entirely.
 * Features your Logo and Brand Name on the Promo Bar, linking your Business Website
   to the Demo site.
 * Highlights your Special Offers or Promotions on the Promo Bar, linking your Landing
   Page to the Demo site.
 * Capable of providing your Phone Number and Email Address for Demo users as Promo
   Bar Tools.
 * Includes your Help Articles for Demo users as a Promo Bar tool.
 * Able to add Extra Links for Demo users as a Promo Bar tool.
 * Capable of sending an email notification at the end of each Reset Cycle.

Demo Reset Documentation: [https://ministryofplugins.com/demo-reset-docs](https://ministryofplugins.com/demo-reset-docs)

## Screenshots

 * [[
 * Concept Diagram
 * [[
 * Use Cases Diagram
 * [[
 * Public View of a Demo Website – FROZEN state (Demo Mode)
 * [[
 * Login Page of a Demo Website – Frozen State (Demo Mode)
 * [[
 * Demo Editor Account – Frozen State (Demo Mode)
 * [[
 * Demo Customer Account – Frozen State (Demo Mode)
 * [[
 * Demo Reset Dashboard – THAWED state (Non-Demo mode)
 * [[
 * Add New Reset Point
 * [[
 * Reset Points – THAWED state (Non-Demo mode)
 * [[
 * Reset Runners
 * [[
 * Settings – THAWED state (Non-Demo mode)
 * [[
 * Demo Reset Dashboard – FROZEN state (Demo Mode)
 * [[
 * Reset Points – FROZEN state (Demo Mode)
 * [[
 * Edit Reset Point – FROZEN state (Demo Mode)
 * [[
 * Delete Reset Point – FROZEN state (Demo Mode)
 * [[
 * Reset to a Reset Point – FROZEN state (Demo Mode)
 * [[
 * Settings – FROZEN state (Demo Mode)
 * [[
 * Info Bar Settings Page – Top Part
 * [[
 * Info Bar Settings Page – Bottom Part
 * [[
 * Philosophy and Concept
 * [[
 * Use Cases of Demo Reset Plugin
 * [[
 * Pro Plugin vs Free Plugin
 * [[
 * THAWED state vs FROZEN state
 * [[
 * Help Resources
 * [[
 * Hooks and Constants
 * [[
 * WP Dashboard – FROZEN state (Demo Mode)
 * [[
 * WP Dashboard – THAWED state (Non-Demo mode)
 * [[
 * Demo Reset Pro Dashboard – FROZEN state (Demo Mode)

## Installation

### Requirements

 * PHP version 7.4.0 or greater.
 * WordPress 5.6.0 or greater.
 * The website should not be a WordPress multisite.
 * If both the Demo Reset Free and Pro plugins are installed on the same website,
   neither will activate until one is uninstalled.

### Installation

 * Method 1: Install and activate the Demo Reset plugin via the WordPress Plugin
   Installer.
 * Method 2: Download the Demo Reset plugin zip, extract it, and upload its contents
   to the wp-content/plugins/ directory. Then, activate the plugin from the Plugins
   page in the WordPress Admin area.

### Notes

 * For the purpose of a Demo Website, it is crucial that all permanent changes to
   the Website are made intentionally and consciously. Therefore, auto-updates will
   be paused by the Demo Reset plugin. In THAWED state (Non-Demo mode), you can 
   manually update Plugins, Themes, and WordPress Core.

## FAQ

### How to set a WordPress website to FROZEN state? (Valid for both Free & Pro plugins)

 * To put the website into FROZEN state (Demo Mode), please add at least one Reset
   Point.
 * **Important:** We highly recommend backing up your website files and database
   before switching your website to the FROZEN state (Demo Mode).
 * **Important:** If you plan to use the Reset Runner REST URL or Reset Runner URL
   to trigger the Reset, please ensure the website Permalink Structure is set to
   anything other than “Plain” before adding first Reset Point.

### How to set an Active Reset Point for Auto Reset? (Valid for both Free & Pro plugins)

 * On the Demo Reset Settings page, under Auto Reset Settings, select a Reset Point
   as the Active Reset Point from the dropdown and save your changes.
 * **Note:** This is the Reset Point to which the website will reset via Reset Runners.

### How to set the Reset Runner URL to run Auto Reset? (Valid for both Free & Pro plugins)

 * Before generating Reset Runners for Reset execution, please ensure the Active
   Reset Point is set. The Active Reset Point is the Reset Point to which the website
   will be reset.
 * Ensure the Permalink Structure under WordPress Permalink Settings is set to something
   other than Plain. This must be done when the website is in the THAWED state.
 * Navigate to the Reset Runners page under the Demo Reset admin menu. Check the
   Generate Reset Runner URL checkbox, fill in the Action Confirmation field, and
   click the Generate URL button. The Reset Runner URL will be generated.
 * Test the Reset Runner URL by entering it into your browser. Upon success, the
   page will display the success message. Also, check the Demo Reset Dashboard page
   on the website for the Reset entry.
 * The Reset Runner URL can be triggered using a Unix Cron Scheduler, Zapier Automation(
   Zap), web browser, or any compatible client to reset the website.
 * **Note:** The Reset Runner URL should always be kept secret.
 * **Note:** Security plugins, firewall plugins, custom codes, server-side firewalls,
   and CDN services like Cloudflare may block Reset Runner URL calls; ensure they
   are properly bypassed.
 * **Note:** The Reset will log out all users from the website if successful, unless
   the Pro plugin is used.
 * **Important:** Triggering the Reset Runner URL with Unix Cron through cPanel 
   is the best trigger option with consistent trigger intervals. Watch the complete
   video tutorial on YouTube. [https://youtu.be/S4qRo6vgyAY?si=QNq6TKHmyjYn54Kk](https://youtu.be/S4qRo6vgyAY?si=QNq6TKHmyjYn54Kk)

### How to set the Reset Runner REST URL to run Auto Reset? (Valid for both Free & Pro plugins)

 * Before generating Reset Runners for Reset execution, please ensure the Active
   Reset Point is set. The Active Reset Point is the Reset Point to which the website
   will be reset.
 * Ensure the Permalink Structure under WordPress Permalink Settings is set to something
   other than Plain. This must be done when the website is in the THAWED state.
 * Navigate to the Reset Runners page under the Demo Reset admin menu. Check the
   Generate Reset Runner REST URL checkbox, fill in the Action Confirmation field,
   and click the Generate URL button. The Reset Runner REST URL will be generated.
 * Test the Reset Runner REST URL by entering it into your browser. Upon success,
   you will receive message: “ok” JSON response. Also, check the Demo Reset Dashboard
   page on the website for the Reset entry.
 * The Reset Runner REST URL can be triggered using any external RESTful source,
   such as Cron-job.org, Zapier, or any compatible client, to reset the website.
 * **Note:** The Reset Runner REST URL should always be kept secret.
 * **Note:** Security plugins, firewall plugins, custom codes, server-side firewalls,
   and CDN services like Cloudflare may block Reset Runner REST URL calls; ensure
   they are properly bypassed.
 * **Note:** The Reset will log out all users from the website if successful, unless
   the Pro plugin is used.
 * **Important:** Using Cron-job.org to trigger the Reset Runner REST URL is a good
   option for monitoring but not for consistent trigger intervals. Watch the complete
   video tutorial on YouTube. [https://youtu.be/GIJi1zxjGMU?si=5cdp3el-QTREWKrK](https://youtu.be/GIJi1zxjGMU?si=5cdp3el-QTREWKrK)

### How to set a WordPress website back to THAWED state? (Valid for both Free & Pro plugins)

 * To put the website back into THAWED state (Exit the Demo Mode), please remove
   all Reset Points.

### Why is it always advised to try the Demo Reset Free version before having the Pro version?

 * Both URL-based Reset Runner systems are available in the Free Plugin version 
   and Pro version. Therefore, we strongly advise you to use the Free version to
   determine which Reset Runner system and external trigger source works best for
   your WordPress website. Different websites have different internal and external
   setups, firewalls, and CDNs (Content Delivery Networks) that may block external
   triggers.

### What makes WordPress Cron unsuitable for triggering a website reset?

 * WordPress cron is a pseudo-cron system that triggers when a page is loaded. Therefore,
   it is unreliable for triggering a robust (consistent) Website Reset Process without
   running into numerous issues. For this reason, the trigger must come from outside
   the WordPress system. Demo Reset provides highly secure reset trigger mechanisms
   via Reset Runners to address this problem.

### Are Reset Runners safe?

 * Yes, they are created with a unique randomly generated 15-character token, making
   them highly secure. Once created, a Reset Runner should always be kept confidential.

### Do caching plugins prevent URL-based Reset Runners from working?

 * Caching plugins prevent the proper execution of URL-based Reset Runners, so you
   must turn off caching on your demo website or disable the caching plugin. Also,
   be aware of server-level caching mechanisms; if they prevent Reset Runners from
   executing, please disable them. Based on our current testing, CDN caching (Cloudflare
   caching) does not block Reset Runners unless restricted by CDN firewalls.

## Reviews

![](https://secure.gravatar.com/avatar/1e0616296c4d26d92cb64457f967d9ac34aae2b2b1980e1fcf56af41183c5739?
s=60&d=retro&r=g)

### 󠀁[Looking Forward to the Future of This Plugin](https://wordpress.org/support/topic/looking-forward-to-the-future-of-this-plugin/)󠁿

 [Sarankumar](https://profiles.wordpress.org/sarankumar/) 14, Mayu de 2025 1 reply

We’re excited to see the development and upcoming feature updates of this plugin.
Wishing you great success with the Pro version as well!

 [ Read all 1 review ](https://wordpress.org/support/plugin/demo-reset/reviews/)

## Contributors & Developers

“Demo Reset – Robust Demo Website Automation” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ Anjana Hemachandra ](https://profiles.wordpress.org/anjanahema/)

[Translate “Demo Reset – Robust Demo Website Automation” into your language.](https://translate.wordpress.org/projects/wp-plugins/demo-reset)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/demo-reset/), check
out the [SVN repository](https://plugins.svn.wordpress.org/demo-reset/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/demo-reset/) by 
[RSS](https://plugins.trac.wordpress.org/log/demo-reset/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

2.0.1 – 26/12/2025

 * Tested on WordPress 6.9.
 * The plugin code has been improved to meet the latest Plugin Check standards.
 * Added: The correct Plugin URI has been added.
 * Changed: The for loop for the Demo User username input fields has been removed
   from demo-reset-save-info-bar-template.php and moved to class-demo-reset-info-
   bar-page.php.
 * Removed: Unnecessary sections of code have been removed from the class-demo-reset-
   info-bar-page.php file.

2.0.0 – 12/10/2025 (A Major Release)

 * Added: A new UI element called the Info Bar has been introduced, located at the
   very top of the demo website.
 * Added: The Info Bar includes sub-elements called Demo User Details, Demo Status,
   and Next Reset Time.
 * Added: A dedicated Info Bar Settings page has been added to the plugin’s admin
   menu.
 * Added: New action hook demo_reset_info_bar_custom_css allows custom styling of
   the Info Bar.
 * Added: New filter hook demo_reset_reset_gap_tolerance allows redefining the reset
   gap tolerance in seconds.
 * Added: Constant DEMO_RESET_DEMO_USERNAMES_NUMBER introduced to control the number
   of usernames displayed on the Info Bar.
 * Added: Constant DEMO_RESET_RUNNER_FOR_TIMER added as a requirement for the Next
   Reset Time functionality.
 * Added: New filter hook demo_reset_allowed_upload_caps introduced to enable restricted
   Demo User upload capabilities.
 * Added: Demo User Restrictions setting added to hide Account Management heading,
   New Password section, Log Out Everywhere Else button, and Application Passwords
   section.
 * Added: Back to Default Settings functionality has been introduced on the Settings
   page.
 * Added: A new Hooks & Constants tab has been introduced on the Concept and Help
   page, providing implementation details and usage instructions.
 * Added: Demo Website link added to the readme.txt file.
 * Added: New and updated screenshots have been added to showcase all plugin functionalities.
 * Added: Placeholder CSS, JavaScript, and markup files have been enqueued and added
   for the common area.
 * Changed: Unnecessary update checks after resets are now prevented.
 * Changed: Stability of options transfer during resets has been improved.
 * Changed: Admin Bar notices have been improved to better inform non-admin users(
   Editors, Authors, etc.) about the Demo Mode and Reset process.
 * Changed: Help text on the Reset Runners page has been revised with additional
   notes about the effect of caching plugins on demo automation.
 * Changed: Text under Concept, Pro Plugin vs Free Plugin, and THAWED vs FROZEN 
   State tabs has been revised for improved clarity.
 * Changed: Quick Introduction videos have been added to Help Resources, replacing
   the Demo Reset Free and Pro Plugin interface videos.
 * Changed: Help Resources styling has been refined for better readability.
 * Changed: Short Description and Description sections in the readme.txt file have
   been improved.
 * Changed: Quick Introduction videos have been added to the readme.txt file, replacing
   the Demo Reset Free and Pro Plugin interface videos.
 * Changed: Features of the Free Plugin section in the readme.txt file revised for
   clarity.
 * Changed: FAQ section in the readme.txt file updated with information on how caching
   plugins affect demo automation.

1.0.1 – 29/04/2025

 * Tested on WordPress 6.8.
 * The trigger has been fixed for the warning: Translation loading for the text 
   domain was triggered too early.

1.0.0 – 12/04/2025

 * Initial release.

## Commercial plugin

This plugin is free but offers additional paid commercial upgrades or support. [View support](https://ministryofplugins.com/support/)

## Meta

 *  Version **2.0.1**
 *  Last updated **4 meses ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.6 or higher **
 *  Tested up to **6.9.4**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/demo-reset/)
 * Tags
 * [demo](https://ast.wordpress.org/plugins/tags/demo/)[digital store](https://ast.wordpress.org/plugins/tags/digital-store/)
   [playground](https://ast.wordpress.org/plugins/tags/playground/)[sandbox](https://ast.wordpress.org/plugins/tags/sandbox/)
   [testing](https://ast.wordpress.org/plugins/tags/testing/)
 *  [Advanced View](https://ast.wordpress.org/plugins/demo-reset/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  1 5-star review     ](https://wordpress.org/support/plugin/demo-reset/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/demo-reset/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/demo-reset/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/demo-reset/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/demo-reset/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/demo-reset/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/demo-reset/reviews/)

## Contributors

 *   [ Anjana Hemachandra ](https://profiles.wordpress.org/anjanahema/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/demo-reset/)