Snapshots & Resets
How the site goes back to your snapshot
The Snapshot
- Go live (and Take a new snapshot) copies every table with your site's table prefix to
{prefix}dmsnap_*tables in the same database, and the uploads folder towp-content/yetidm-snapshot. - Demo Maker's own tables (log, outbox, sandboxes and leads) are not part of the snapshot, so resets never delete them.
- Database views are not copied and are left as they are. The Site check tab lists any it finds.
How a Reset Works
- Fresh copies of the snapshot tables are built next to the live ones, then all of them are swapped in with one database statement. A reset that is cut off leaves the old site or the new one, never a mix.
- Only upload files that visitors added or changed are touched, so resets stay fast.
- Plain PHP and the WordPress database layer are used. No mysqldump, exec or shell access is needed, so it works on shared hosting.
- Your own login is kept, so a reset never logs you out. Visitors are logged out.
- Every reset also ends all private sandboxes.
Schedule
- Reset every: 30 minutes, 1 hour, 3 hours, 6 hours, 12 hours or daily.
- The reset job checks every 5 minutes whether a reset is due. Reset now on the Dashboard runs one straight away.
- WordPress only runs scheduled jobs when someone visits. For resets on time, ask your host to call the Server cron address on the Dashboard every 5 minutes. It looks like
https://demo.example.com/?yetidm_cron=KEY. You can make a new address on the Dashboard; the old one then stops working. - If WP-Cron is turned off on your site (DISABLE_WP_CRON), resets only happen through the server cron address.
Checks After Each Reset
- Pages to check after each reset: one path per line, such as
/or/shop/. Each is loaded after the reset. - If a page shows an error, an email goes to Email problems to. This is the only email the site sends for real.
- A reset that fails is tried again after one reset interval, so a lasting problem does not email you every few minutes.
Moving Sample Dates Forward
Use the yetidm_after_reset action, which runs after every reset once the snapshot is back. See Developers.