Go Back to Parent Doc

Settings

General settings

Network Admin → Demo → Settings → General

The General tab controls the core behaviour of every demo: how long sandboxes live, what happens when they expire, what role demo users get, and spam protection.

Demo lifetime

By default a demo lasts 30 minutes. You set the lifetime as a duration + measure pair — for example 2 hours3 days, or 1 week.

FieldDescription
Expiration durationThe number, e.g. 30
Expiration measureThe unit: minutes, hours, days, weeks, or months
Lifetime demosWhen enabled, demos never expire (overrides the duration)

Internally the duration and measure are converted to a lifespan in seconds (the default 1800 = 30 minutes). Supported measures convert as: minutes ×60, hours ×3,600, days ×86,400, weeks ×604,800, months ×2,592,000.

Individual demos can be marked as lifetime later from the Demos list, even if the global default expires.

Expiration action

Choose what the hourly purge job does when a demo expires:

ActionResult
Delete (default)Permanently removes the sandbox site, tables, and uploads
ArchiveArchives the site (kept but inaccessible)
DeactivateDeactivates the site

See The demo lifecycle for the full purge behaviour.

Demo user access

SettingDefaultDescription
Login roleeditorThe role the demo user is granted inside their sandbox. Choose administrator to give full admin access, or a lower role to limit it
Auto loginOnAutomatically logs the visitor into their new sandbox after creation
Redirect(empty)A path appended to the sandbox URL after creation — send users to a specific landing page inside the demo (e.g. /wp-admin/)
Enable resetOffLet’s demo users reset their sandbox back to the source site’s pristine state without changing their URL, login, or expiration

Even when the login role is administrator, you can still restrict which admin pages are reachable — see Restrictions.

Prevent new demos

Turn on Prevent clones to temporarily stop new demo registrations. While enabled, all request forms are hidden on the front end. This is useful during maintenance or when you need to pause signups.

Developers can toggle this programmatically with the tdemo_registration_disabled filter.

reCAPTCHA {#recaptcha}

Protect your demo forms from bots by adding Google reCAPTCHA. Enter both keys to activate it:

FieldDescription
Site keyYour reCAPTCHA site key
Secret keyYour reCAPTCHA secret key
LanguageOptional language code for the widget

Once both keys are present, the reCAPTCHA script is loaded and the widget is added to every demo request form automatically. You can also force it on a specific form with the captcha shortcode attribute — see Displaying demo buttons.

Logging

Enable Log to write TryDemo debug details (site cloning steps, timings, and errors) to the plugin log. Keep it on while setting up or debugging, and turn it off in normal operation. Log output is also surfaced under Settings → System Info.

← Back to docs


Notifications

Network Admin → Demo → Settings → Notifications

TryDemo sends two emails: a welcome/activation email to the visitor who requested the demo, and an optional notification email to your team. The Notifications tab has a sub-tab for each.

Demo User Notification

Sub-tab: Demo User Notification

This is the email the visitor receives after requesting a demo. It typically confirms their account, links them into their sandbox, and includes their login credentials.

FieldDefaultDescription
TemplatedefaultThe letter template used to wrap the email body
From nameMain site nameSender name
From emailSite admin emailSender address
Subject“Activate your personal demo website”Email subject line
Body(see below)The email content; supports HTML and placeholders

The default body welcomes the user, includes a Confirm your account button linking to {demo_url}, and shows their {login} and {password}.

Admin Notification

Sub-tab: Admin Notification

An optional email to your team whenever a new demo is created.

FieldDefaultDescription
Disable admin noticesOffTurn off admin notification emails entirely
TemplatedefaultLetter template
From name / From emailMain site name / admin emailSender identity
To emailSite admin emailWhere the notification is sent
Subject“Demo website created”Email subject
Body(see below)The notification content

The default body announces “One more demo created on {site_title}!” and shows who created it via {login}.

Placeholders

Use these tokens anywhere in an email body or subject — TryDemo replaces them when the email is sent.

PlaceholderReplaced with
{email}The requester’s email address
{login}The demo account login
{password}The demo account password
{demo_url}The activation / sandbox URL
{site_title}The site title
{demo_lifetime}Demo lifetime in hours
{demo_lifetime_days}Demo lifetime in whole days
{demo_duration_value}The numeric lifetime (e.g. 30)
{demo_duration_period}The lifetime unit (e.g. minutes)

Not every placeholder makes sense in every email — for example, {password} belongs in the user email, not the admin notification. The admin editor lists the tokens it supports ({site_title}{email}{login}).

Example body

<h1>Welcome to your demo!</h1>
<p>Your private demo of Our Product is ready. It stays live for
{demo_duration_value} {demo_duration_period}.</p>
<p><a href="{demo_url}"><b>Enter your demo</b></a></p>
<p>Login: {login}<br>Password: {password}</p>

Deliverability tips

  • Emails are only as reliable as your WordPress mail setup. If activation emails don’t arrive, install an SMTP plugin and check your sender domain’s SPF/DKIM records.
  • A low activation rate in Reports is often a deliverability problem, not a copy problem — verify emails are actually landing first.
  • Keep the From email on a domain you control so messages aren’t flagged as spoofed.

← Back to docs


Toolbar

Network Admin → Demo → Settings → Toolbar

The demo toolbar is a customizable bar shown on the front end of every demo site. It’s the perfect place to remind trial users they’re in a demo, show a countdown, and point them to checkout.

Enabling the toolbar

Turn on Show toolbar to display it across your demo sites. Once enabled, you can style it and add a call-to-action button.

SettingDefaultDescription
Show toolbarOffMaster switch for the front-end toolbar
Themedark-themeVisual theme for the bar (light/dark)
Background(empty)Custom background color (color picker)
Logo(empty)An image shown on the toolbar (media picker)

Call-to-action button

Drive trial users toward a purchase with a prominent button:

SettingDescription
Button textThe label, e.g. “Buy Now” or “Get the plugin”
Button URLWhere the button links — usually your checkout or pricing page
Button classOptional extra CSS class for custom styling

Pair the button with the {demo_lifetime}-style urgency of a countdown to nudge visitors before their sandbox expires.

Hiding the toolbar on specific demos

The Unpermitted field takes a comma-separated list of blog IDs where the toolbar should not appear. Enter the IDs of any demo (or source) sites you want to exclude, and TryDemo skips the toolbar there.

Example:

5, 9, 14

Tips

  • Keep the button copy action-oriented and specific — “Get TryDemo — from $29” beats “Learn more”.
  • Use the Background and Theme settings so the toolbar complements your product’s branding rather than clashing with the demo content.
  • Combine the toolbar with the [trydemo_is_demo] shortcode for in-content upgrade prompts that only appear inside sandboxes.

← Back to docs


MailChimp

Network Admin → Demo → Settings → MailChimp

Every demo request is a lead. The MailChimp integration automatically subscribes demo requesters to a MailChimp audience so you can follow up with nurture campaigns.

Connecting your account

SettingDefaultDescription
SubscribeOffMaster switch — subscribe demo requesters to MailChimp
API key(empty)Your MailChimp API key (includes the datacenter suffix, e.g. …-us21)
Send confirmationOffUse double opt-in — subscribers get a confirmation email and are added as pending until they confirm
Subscribe list(none)The target audience/list, chosen per source site

The datacenter (e.g. us21) is read from the part of your API key after the dash. If subscriptions silently fail, an invalid or truncated API key is the most common cause.

How it works

When a visitor requests a demo and a MailChimp subscription is enabled:

  1. TryDemo looks up the list configured for that demo’s source site.
  2. It adds the requester’s email to that list via the MailChimp API.
  3. The subscriber status is set to subscribed (single opt-in) or pending (double opt-in, when Send confirmation is on).

Because lists are configured per source site, you can route leads from different products into different audiences.

Getting your API key and list ID

  1. In MailChimp, go to Account → Extras → API keys and create a key.
  2. Paste it into the API key field here.
  3. Choose the destination audience under the Subscribe list for each source site.

Privacy

Only the email address is sent to MailChimp. Make sure your demo request form and privacy policy disclose that requesting a demo subscribes the visitor to your mailing list — and prefer double opt-in where required by your jurisdiction.

← Back to docs


Restrictions

Source site → Demo (single-site admin, not Network Admin)

Restrictions let you decide exactly which admin pages demo users can reach inside their sandbox. Unlike the other settings, restrictions are configured per source site, so each product can define its own safe demo experience.

Where to find it

Restrictions live on the individual source site’s admin menu, not the network admin:

  1. Switch to the source/template site’s dashboard (My Sites → [your template site] → Dashboard).
  2. Open the Demo menu → Demo Restrictions.

The Demo Restrictions menu is intentionally hidden inside demo sites — only the source site can define the rules.

What you can control

The restrictions screen shows the source site’s admin menu so you can allow or block pages individually:

ConceptWhat it does
Parent pagesTop-level admin menu items you permit or block
Child pagesSubmenu items you permit (allowed)
Disabled child pagesSubmenu items you explicitly block
BlacklistA freeform list of admin URIs to block (one per line)

When a demo user tries to open a blocked page, TryDemo prevents access. This lets you hand out administrator-level demos while still keeping sensitive or destructive screens off-limits.

Always-forbidden pages

Regardless of your configuration, TryDemo always blocks its own management screens inside demos:

  • trydemo (the network Demo screens)
  • trydemo-restrictions (this Restrictions screen)

And when the network hides the Plugins menu (see below), plugins.php is blocked too.

Developers can extend this list with the tdemo_forbidden_pages filter.

Hiding the Plugins menu

Whether the Plugins menu is hidden from demo users is driven by your multisite’s own setting:

Network Admin → Settings → Network Settings → Menu Settings → Plugins

If network administrators have not enabled the Plugins menu for site admins, TryDemo hides plugins.php inside demos automatically. This stops demo users from activating or deactivating plugins in their sandbox.

Blocking password & email changes

To prevent demo users from locking you (or themselves) out, block the profile pages that let them change the account password or email through the restrictions blacklist. Combined with a limited login role, this keeps sandboxes safe and disposable.

Recommended baseline

For most products, a good starting point is:

  • Allow the screens that showcase your product (your plugin’s settings, the editor, relevant post types).
  • Block plugins.phpthemes.php, user management, and the profile/password screens.
  • Keep TryDemo’s own screens blocked (automatic).

Then walk through a real demo yourself and block anything that feels risky.

← Back to docs

Shopping Cart
  • Your cart is empty.