2. JAMIE SCHMID
• COMMUNITY EVANGELIST @SITELOCK
• FREELANCE DESIGNER AND DEVELOPER
• CONTENT ENTHUSIAST
• PROUD CAT MOM IN PORTLAND, OR
@JAMIESCHMID
@SITELOCK
3. WHAT IS A STAGING SITE?
A PRIVATE COPY OF YOUR SITE FOR
TESTING UPDATES, NEW FEATURES AND
CHANGES, QA CHECKS, ETC
STAGING LIVE
4. YOU KNOW YOU NEED TO KEEP
YOUR SITE UPDATED.
But making updates on your live site is scary
and dangerous. Things can and will break.
5. HOW DOES A STAGING SITE WORK?
STAGING LIVE
1. Make an exact duplicate of your live site
2. Run updates, test new plugins or themes, do QA
3. All good? Push those changes to the live site
6. 1. Changes can include both physical files
and database changes
2. Databases are hard to synch!
3. WordPress uses static URL’s and
serialized data
4. Images need both a database
entry, and a physical file
5. Etc, just trust me
WHY IT’S NOT THAT EASY:
7. 1. You need to make a replica of
your site.
2. You need to put it someplace so it
can run as a website
3. You need to get those
changes to your live site
WHAT IS REQUIRED?
9. AUDIT YOUR SITE
Caching? What is the size of your
site?
Any automations on the site:
auto emailers?
?! !
How busy is your site? Will you potentially be
overwriting orders, comments, a/b testing results
Are you using version control (git?)
Get familiar with your hosting! company, service
level, access.
10. WHAT ARE YOUR OPTIONS?
Hosting 1-Click Staging
Use a Plugin
Standalone Site: subdomain/subfolder
Local with a push to Staging/push to Live
Advanced Developer Workflow
11. HOSTING 1-CLICK-STAGING
The easiest & fastest solution!
The most expensive (in $) solution
Your host needs to offer it
PUSH TO LIVEPUSH TO LIVE
20. REPLICATING, MIGRATING,
SYNCHING CHANGES
Replicate: Perform the same changes you
did on Staging, to live
Migrate: An automated process that
overwrites files or database content
Synch: An advanced process that checks
for changes on both sides, and resolves
them into one
21. MIGRATE
May require URL, config, etc changes
Partial overwrites are more complex
Duplicator, Backup Buddy, All-in-One WP
Migration, UpdraftPlus
DesktopServer Direct Deploy
25. 1. Make a schedule for doing updates
2. Use a service to track updates
3. Make all updates on staging first
4. Never break live again!
A RECIPE FOR SUCCESS
28. How much time and
resources do you have
for maintenance?
What is your budget?
Remember: time saved
= $$ saved
How often will you check
for core, theme and plugin
updates? Often! Check for
outdated plugins.
How often will you
perform the updates?
Schedule them!
Who is performing the
updates? Assign them!
ASK YOURSELF:
29. ASK YOURSELF:
How many sites do you
have to manage?
Do you have multiple
people who need to
verify changes before
it can go live?
How technical is your
situation? Is your site in
version control?
How busy is your live site?
Popular ecommerce sites
may be continuously
processing tractions or
writing sessions.
31. ONE CLICK STAGING
1. Pick a host with one click staging, like
WP Engine
2. Confirm user rules: never update live,
never add new features to live, never
add new content to live
3. Create an updates schedule. Include
monitoring reports
4. Pull live to staging
5. Make changes
6. Push staging to live
32. DUPLICATION IN-SITE
1. Use the WP Staging plugin
2. Create a duplicate inside your live
WP install
3. Make your changes to the duplicate
4. Push to live
33. SUBDOMAIN STAGING
1. Create a subdomain on your main
site
2. Duplicate your site into it using the
WP All-In-One Migration plugin or
Updraft Plus Migrator
3. Make changes
4. Migrate to live with a migration
plugin OR replicate changes
manually on live
34. LOCAL STAGING SITE
1. Import an archive of your live site
using Duplicator
2. Install DesktopServer
3. Import live site archive to run site
locally
4. Make changes
5. Push to live using Direct Deploy OR
make changes manually to live
37. QUESTIONS?
SEE ME AFTER THIS OR AT THE AFTERPARTY!
OR ON TWITTER!
Full talk slides: tinyurl.com/staging-site-talk
Blog posts: https://www.sitelock.com/blog/?s=staging
These slides: tinyurl.com/staging-lightning-talk
@jamieschmid