Staging Environments

Each WordPress install at Kinsta can have its own free WordPress staging environment, completely separate from the live production site. This is great for testing new WordPress versions, plugins, code, and general development work. Create a dev site in minutes and share it with your team.

If you want to add additional staging environments, need a staging environment that more closely matches your live environment, or need to do resource-intensive site testing or development, check out our Premium Staging Environment add-on below.

Standard WordPress Staging Environment

Create WordPress Staging Environment

We’ve made creating a WordPress staging site as easy as possible. In MyKinsta, click on WordPress Sites in the left navigation. You’ll see a list of your sites/installs. Select the site you want to create a staging environment for, click on the Environment selector next to the site name, and select Create new environment from the dropdown menu.

Creating a new Kinsta staging environment in MyKinsta.
Creating a new Kinsta staging environment in MyKinsta.

In the Create new environment modal/pop-up that appears, select Standard environment and click the Continue button.

Choose to create a Standard Staging Environment.
Choose to create a Standard Staging Environment.

Next, you’ll be prompted to select the type of environment you want to create. There are three options.

  1. Clone an Existing Environment: This option allows you to clone an existing environment (live or any Premium Staging Environment) to the new Standard Staging Environment.
  2. Install new WordPress: This option installs a fully functional blank WordPress site, ready for you to use immediately.
  3. Empty environment (Without WordPress): This option installs all the necessary software to run a WordPress site (web server, PHP, MySQL, etc.) but does not install WordPress itself. This is a good option for users migrating to Kinsta with Duplicator or setting up a Bedrock/Trellis installation with a custom file structure.

Option 1 – Clone an Existing Environment

The Clone an existing environment option allows you to clone any existing environment (live or Premium Staging Environment) to the new Standard Staging Environment.

Clone an existing environment.
Clone an existing environment.
  • Environment name: Enter a name for the staging environment name; this must be between 3 and 12 characters long.
  • Environment to clone: Choose an existing environment to clone to the new Standard Staging Environment.

Option 2 – Install New WordPress

The Install new WordPress option includes several fields to customize your site. Here’s what you need to know about each field.

Install new WordPress in your staging environment.
Install new WordPress in your staging environment.
  • Environment name: Enter a name for the staging environment name; this must be between 3 and 12 characters long.
  • WordPress site title: This allows you to set the site title for your WordPress site. Depending on your theme, it will be visible to site visitors in the browser tab and other places. You can change the site title in WordPress settings after site creation.
  • WordPress admin username: You will use this to log in to your WordPress installation. You will be able to add additional users later on. We recommend choosing something other than “admin” for the username for maximum security.
  • WordPress admin password: You will use this password to log in to your installation. We automatically enforce strong passwords to protect users. You can use the generate new password option (reload icon) if you want a new one. Here’s how you can change your WordPress password later on.
  • WordPress admin email: WordPress uses the admin email address to send important notifications.
  • Select a language: Select the language you would like to use in WordPress. You don’t have to write content in the same language as your WordPress interface, so feel free to choose your native tongue, even if you are writing content in English.
  • Install WordPress multisite: Select this box if you would like to create a WordPress Multisite installation. Once selected, you may choose between a Subdomain or Subdirectory install.
  • Install WooCommerce: If you are creating an ecommerce website, WooCommerce is the most popular ecommerce plugin out there. Check this box to install it automatically.
  • Install Yoast SEO: Yoast SEO is the most popular SEO plugin for WordPress, with over 3 million installs and a 5 out of 5-star rating. Check this box to install it automatically.
  • Install Easy Digital Downloads: If you are creating a site to sell digital products, Easy Digital Downloads is a complete eCommerce solution for selling digital products. Check this box to install it automatically.

Option 3 – Empty Environment (Without WordPress)

The Empty environment option is helpful for users who need a blank environment for Duplicator migration or custom Bedrock/Trellis installation testing.

Create an empty new environment with no WordPress.
Create an empty new environment with no WordPress.
  • Environment name: Enter a name for the staging environment name; this must be between 3 and 12 characters long.

Creating the Standard Staging Environment

When you’re ready, click the Continue button.

Accessing Your Staging Environment

Creating the new environment may take a few minutes. When it’s ready, you can select the new Standard Staging Environment in the Environment selector dropdown next to the site name.

Select the standard staging environment.
Select the standard staging environment.

Each environment has a color-coded circle by its name: green for Live, black for Standard Staging, and orange for Premium Staging. You will then have a separate control panel with connection information, DNS, backups, tools, and plugins for your staging environment.

To quickly visit your staging site, go to the Domains tab in your staging environment and click on the Open URL link. You can also quickly get to your staging site’s WordPress admin by clicking on the Open WordPress admin link.

URL Structure and Domain

The default URL structure of your Standard Staging Environment follows this format:

https://stg-sitename-environmentname.kinsta.cloud

If you have an older staging site, your URL may look like one of these:

  • https://staging-sitename-environmentname.kinsta.cloud
  • https://staging-sitename.kinsta.cloud
  • https://staging-sitename.kinsta.com

You can also add a custom domain to your staging site if you prefer to use a custom domain.

Additional Notes

If you have SSL enabled on your live site and clone the site to staging, SSL will also be enabled on your staging site.

You can launch phpMyAdmin from right within MyKinsta. On the Info tab, click on the Open phpMyAdmin link. The URL structure for phpMyAdmin staging follows this format:

https://mysqleditor-stg-sitename-environmentname.kinsta.cloud

Delete and Refresh Staging Environment

If you need to remove your staging site, go to WordPress Sitessitename and switch to the staging environment. Scroll to the bottom of the page and click the Delete environment button.

In the modal/pop-up that appears, confirm you understand what will be deleted, type the site name followed by a dash and the word “staging” (SITENAME-environmentname) in the field provided, then click the Delete environment button.

Delete a staging environment in MyKinsta.
Delete a staging environment in MyKinsta.

To refresh your staging environment, delete it, create a new one, and choose Option 1 – Clone an Existing Environment. This newly cloned staging environment will contain the most recent version of your production database and files for testing.

Alternatively, you can restore a backup from your production site to staging. The benefit of this method is that if you’ve added a custom domain, it won’t be deleted, and you won’t need to add it each time you refresh staging.

Push Staging to Live

To overwrite your live site’s database or files; or overwrite the entire site with your staging site, you can utilize the push staging to live feature.

Restore a WordPress Backup to Staging

You can also restore your WordPress site from a backup directly to your existing staging environment. Check out how to restore a WordPress backup to staging. Note: All staging backups will remain intact when restoring a live backup to staging.

Restart Staging Environment

In certain situations, we may stop a staging environment as part of a server troubleshooting process. If you notice your staging environment has been stopped and you see a 501 not implemented, a 502 error, or a 521 error when visiting your site, you can restart the staging environment in MyKinsta by going to your site’s Info page and clicking Start Staging Environment.

Restart your staging environment in MyKinsta.
Restart your staging environment in MyKinsta.

If you cannot restart your staging environment or don’t see the button in MyKinsta, please open a new chat with our Support team for further assistance.

Important Notes

When you use the staging environment, there are several important things to be aware of.

1. Page Cache Settings for Staging Sites

Because staging environments are for development purposes, debugging, and testing, Kinsta’s full-page caching and OPcache are disabled by default. If you run website speed tests, you will see higher than average load times since the pages aren’t being served from cache. If you want to enable caching on a staging site, click on the Enable cache button on the Tools page of your site’s staging environment. When caching is enabled on a staging site, the Clear cache button will be enabled and can be used to clear the cache.

Enable caching for a staging environment.
Enable caching for a staging environment.

2. Staging Environment Credentials

If the staging environment is a clone of your production site, your WordPress admin login credentials will be the same for both your live and staging sites unless you change them after creating your staging environment.

3. SEO

By default, indexing is turned off for Staging sites, so they don’t harm the SEO on your live/production site. This is done with the combination of a WordPress setting and an HTTP header that we automatically add.

You can see the WordPress setting by going to Settings > Reading in your staging site’s WordPress dashboard. The option to discourage search engines from indexing the site is checked beside Search Engine Visibility.

Search engine indexing disabled on staging site.
Search engine indexing disabled on staging site.

Kinsta temporary URLs and staging URLs also have a robot-restricting X-Robots-Tag: noindex, nofollow, nosnippet, noarchive HTTP header, meaning the temporary URLs won’t be indexed by the search engines. These headers cannot be removed from Kinsta temporary URLs or staging URLs. If you need these headers removed from the staging site, you’ll need to add a custom domain to it.

4. Plugins

If you use social scheduling plugins such as CoSchedule or Social Networks Auto Poster, it is recommended that you deactivate these plugins on your staging site. Otherwise, they might start sharing to social networks using your staging URL, which will look something like: https://stg-sitename-environmentname.kinsta.cloud. This could then skew your analytics.

Some plugins, like the Jetpack plugin, will automatically run in staging mode on Kinsta staging environments. You will see a message: “You are running Jetpack on a staging server.” While in staging mode, your staging site will act like your production site in virtually all ways, except no data is passed up to WordPress.com, and you cannot disconnect the staging site (to prevent an issue that would lead to problems with your production site).

Plugins licensed by domain name may require a custom domain (instead of a Kinsta staging subdomain) to work properly. Note: once you’ve added a custom domain name to your staging site, you may need to update settings where you manage your plugin license or contact your plugin’s support team.

5. Make Note of Your Login URL

If you clone your site to staging and use a WordPress plugin that changes your default login URL, the custom part of the URL will get copied over to the staging site. Example: http://stg-sitename-environmentname.kinsta.cloud/yourcustomlogin

6. Staging Should Be Used For Development/Testing Only

The Standard Staging Environment only has 2 PHP workers, has no option to enable Kinsta’s CDN, and may go to sleep after 24 hours of inactivity. Accordingly, it should be used for development and testing only. Staging environments (Standard and Premium) aren’t designed to be used for live production sites, and there may be things that don’t function correctly. Kinsta is not responsible if you try to use a staging environment for a live site.

7. Disk Space Excluded From Plan Total

To give you as much space as possible, staging sites are excluded from our reporting when calculating your total disk space usage. Only live sites count against your disk space usage.

8. Cron Jobs

Server cron jobs from the live environment are not active in the staging environment (even if you clone your live site to staging), so the live site’s cron jobs won’t fire on the staging environment. Additionally, if you modify the crontab in your staging environment and push staging to your live environment, it will overwrite your live environment’s crontab.

9. Multisite

If you’re running a WordPress multisite network, it may or may not work with our staging environment, depending on how your multisite is set up.

  • If it’s a subdirectory multisite (example.com, example.com/subsite1, example.com/subsite2), it will work fine with our staging environment.
  • If it’s a subdomain multisite (example.com, subsite1.example.com, subsite2.example.com), it will work fine, provided the subsites don’t require HTTPS.
    • If it’s a subdomain multisite that requires HTTPS, you’ll need to add a custom domain with a wildcard SSL certificate to your staging site so the subdomains can be covered by an SSL certificate. This is because the SSL certificate provided for the default staging URL can only cover the staging subdomain (e.g. stg-sitename-environmentname.kinsta.cloud), so any additional subdomain level (e.g. subsite.stg-sitename-environmentname.kinsta.cloud) cannot be covered.
  • If it’s a domain-mapped multisite (loads different subsites at completely different domains, e.g. example.com, example1.com, example2.com), it won’t work without significant manual setup.
    • Option 1: Turn off domain mapping and go back to the standard subdirectory/subdomain setup. Do a search and replace in the database manually.
    • Option 2: Set up staging subdomains for each live domain, add all those to the staging site, and manually run a search and replace in the database.

10. Email

Staging environments have mail-sending (transactional email) enabled by default. If you make an order on the staging site, you will receive related emails from the staging site. If you do not wish to have transactional emails sent from your staging environment, you can use a plugin like Disable Emails to stop the site from sending emails.

11. Credentials

The database and SFTP/SSH credentials are the same for the live environment and any standard or premium staging environments. If you generate a new password, the new password is for all environments.

If you clone an existing environment when creating a staging environment, the WP Admin login details for the staging environment are the same as the cloned environment.

Premium Staging Environments

With Kinsta’s Premium Staging Environment add-on, you can add up to five Premium Staging Environments to your WordPress site. While a Standard Staging Environment will still work for most testing, using a Premium Staging Environment is ideal for resource-intensive site testing or development.

Each Premium Staging Environment has 12 CPUs, 8 GB of Memory, and the same number of PHP Workers you have for your live site (based on your plan). You can also turn on Kinsta CDN for a Premium Staging Environment. With a testing environment that closely matches your live environment, you can also perform website speed tests on your test site.

Including the free Standard Staging Environment, this allows you to have a total of 6 environments for testing and development that are completely separate from your live site.

Add a Premium Staging Environment

In MyKinsta, click on WordPress Sites in the left navigation. You’ll see a list of your sites/installs. Select the site you want to create a Premium Staging Environment for, click on the Environment selector next to the site name, and select Create new environment from the dropdown menu.

Creating a new Kinsta staging environment in MyKinsta.
Creating a new Kinsta staging environment in MyKinsta.

The Premium Staging Environment add-on can be purchased for $20/month per environment (prorated). You can purchase up to 5 premium staging add-ons. Each Premium Staging Environment add-on is automatically prorated, and the subscription will appear on your next billing cycle.

In the Create new environment modal/pop-up that appears, select Premium environment and click the Continue button.

Choose to create a premium environment.
Choose to create a premium environment.

Next, you’ll be prompted to select the type of environment you want to create. There are three options:

  1. Clone an Existing Environment: This option allows you to clone an existing environment (live, Standard Staging, or other Premium Staging Environment) to the new Premium Staging Environment.
  2. Install new WordPress: This option installs a fully functional blank WordPress site, ready for you to use immediately.
  3. Empty environment (Without WordPress): This option installs all the necessary software to run a WordPress site (web server, PHP, MySQL, etc.) but does not install WordPress itself. This is a good option for users migrating to Kinsta with Duplicator or setting up a Bedrock/Trellis installation with a custom file structure.

Option 1 – Clone an Existing Environment

The Clone an existing environment option allows you to clone any existing environment (live, Standard Staging, or other Premium Staging Environment) to the new Premium Staging Environment.

Clone an existing environment.
Clone an existing environment.
  • Environment name: Enter a name for the staging environment name; this must be between 3 and 12 characters long.
  • Environment to clone: Choose an existing environment to clone to the new Premium Staging Environment.

Option 2 – Install New WordPress

The Install new WordPress option includes several fields to customize your site. Here’s what you need to know about each field.

Install new WordPress in your premium environment.
Install new WordPress in your premium environment.
  • Environment name: Enter a name for the staging environment name; this must be between 3 and 12 characters long.
  • WordPress site title: This allows you to set the site title for your WordPress site. Depending on your theme, it will be visible to site visitors in the browser tab and other places. You can change the site title in WordPress settings after site creation.
  • WordPress admin username: You will use this to log in to your WordPress installation. You will be able to add additional users later on. We recommend choosing something other than “admin” for the username for maximum security.
  • WordPress admin password: You will use this password to log in to your installation. We automatically enforce strong passwords to protect users. You can use the generate new password option (reload icon) if you want a new one. Here’s how you can change your WordPress password later on.
  • WordPress admin email: WordPress uses the admin email address to send important notifications.
  • Select a language: Select the language you would like to use WordPress in. You don’t have to write content in the same language as your WordPress interface, so feel free to choose your native tongue, even if you are writing content in English.
  • Install WordPress multisite: Select this box if you would like to create a WordPress Multisite installation. Once selected, you may choose between a Subdomain or Subdirectory install.
  • Install WooCommerce: If you are creating an ecommerce website, WooCommerce is the most popular ecommerce plugin out there. Check this box to install it automatically.
  • Install Yoast SEO: Yoast SEO is the most popular SEO plugin for WordPress, with over 3 million installs and a 5 out of 5-star rating. Check this box to install it automatically.
  • Install Easy Digital Downloads: If you are creating a site to sell digital products, Easy Digital Downloads is a complete eCommerce solution for selling digital products. Check this box to install it automatically.

Option 3 – Empty Environment (Without WordPress)

The Empty environment option is helpful for users who need a blank environment for Duplicator migration or custom Bedrock/Trellis installation testing.

Create an empty new environment with no WordPress.
Create an empty new environment with no WordPress.
  • Environment name: Enter a name for the staging environment name; this must be between 3 and 12 characters long.

Creating The Premium Staging Environment

When you’re ready, click the Continue button. Next, confirm the recurring subscription for your Premium Staging Environment and click the Create premium environment button.

Add the subscription for your premium environment.
Add the subscription for your premium environment.

Accessing Your Premium Staging Environment

Creating the new environment may take a few minutes. When it’s ready, you can select the new Premium Staging Environment in the Environment selector dropdown next to the site name.

Each environment has a color-coded circle by its name: green for Live, black for Standard Staging, and orange for Premium Staging. You will then have a separate control panel with your connection information, DNS, backups, tools, and plugins for your staging environment.

To quickly visit your staging site, go to the Domains tab in your staging environment and click on the Open URL link. You can also quickly get to your staging site’s WordPress admin by clicking on the Open WordPress admin link.

URL Structure and Domain

The default URL structure of your Premium Staging Environment follows this format:

https://env-sitename-environmentname.kinsta.cloud

You can also add a custom domain to your staging site if you prefer to use a custom domain.

Push From Premium Staging to Another Environment

Any staging environment can be pushed to any other staging environment or can be pushed to your live environment.

Choosing an environment to push to.
Choosing an environment to push to.

With the Selective Push feature, you have granular control over what to push from your staging environment to another environment. Specifically, you can push:

  • only your files,
  • only your database,
  • or both.

For more details, see our guide on how to Push From Staging To Live. The process is the same; you’ll just need to choose which environment to push to from your Premium Staging Environment.

Remove a Premium Staging Environment

Once you’re through with your testing or development, you can remove the Premium Staging Environment and subscription in MyKinsta. The Premium Staging Environment add-on will be billed for only the time it is active. Cancel the add-on by deleting the Premium Staging Environment to stop additional billing.

In MyKinsta, click on WordPress Sites in the left navigation. You’ll see a list of your sites/installs. Select the site from which you want to remove the Premium Staging Environment, click on the Environment selector next to the site name, and select the environment from the dropdown menu.

Select the premium environment you want to remove.
Select the premium environment you want to remove.

Scroll to the bottom of the page and click the Delete environment button.

In the modal/pop-up that appears, confirm you understand what will be deleted, type the site name followed by a dash and the environment name (SITENAME-EnvironmentName) in the field provided, then click the Delete environment button.

Confirm deletion of the premium environment.
Confirm deletion of the premium environment.

Once the Premium Staging Environment has been deleted, the add-on subscription will automatically be removed from Company > My Plan in MyKinsta.

FAQ

What is prorating?

When we prorate a service like the Premium Staging Environment add-on, it means you will be charged based on how long the service was in use for that monthly billing cycle.

Proration Example

You have a new feature to roll out on your site and want to test it with the full power of your plan. You create a Premium Staging Environment, add the new feature, and test for 1 hour. Everything looks great, so you push the change to your live environment and delete the Premium Staging Environment.

  • 1 month of a Premium Staging Environment is $20.
  • Based on a 30-day month, this billing cycle has 720 hours total.
    30 * 24 = 720
  • Each hour of use is $0.03.
    $20 / 720 = $0.03
  • Your next invoice will include the $0.03 due for the 1 hour a Premium Staging Environment was added to your plan.
Proration Example

You purchase a Premium Staging Environment in the middle of your monthly billing cycle and use it through the end of that cycle. You will be charged for half a month of use (approximately $10, prorated to the second).

Can I change the name of a Premium Staging Environment?

Yes. Switch to the environment you want to rename and click the edit icon (pencil) in the Environment name field.

Rename a premium environment.
Rename a premium environment.

Enter the new name and click the Rename environment button.

Rename Premium Environment.
Rename Premium Environment.

This will change the name of the environment shown in the Environment selector but will not affect the kinsta.cloud domain generated during the initial environment creation.

Can I restore a backup to a staging environment?

Yes, but you have to create a Standard or Premium Staging Environment first. In the past, it was possible to create a staging environment automatically when restoring a backup. With the introduction of Premium Staging Environments, you’ll first need to create the staging environment before restoring a backup to it.

Who has access to Premium Staging Environments?

Site developers and site administrators have access to Premium Staging Environments that have been created but cannot create or delete a Premium Staging Environment. Only a company owner or company administrator can create or delete a Premium Staging Environment.

Does staging use up my disk space?

No. To give you as much space as possible, staging sites are excluded from our reporting when calculating your total disk space usage. Only live sites count against your disk space limit.

Push Staging To Live

You have the option to push your WordPress staging environment to your live environment if you’re happy with the changes you’ve made and want them to be applied to your live site. Thanks to the Selective Push feature, you have granular control over what to push live.

In the past, pushing from staging to live was an all-or-nothing process, with the staging environment completely overwriting the live site during the push. With Selective Push, you can choose what to push from your staging environment to your live site. Specifically, you can now push:

  • only your files,
  • only your database,
  • or both.

Pushing from staging to live can be done in just a few clicks, but please read the notes below before proceeding. They contain essential information about the process.

Important Notes

  • We recommend using the Push to Live functionality with care, initiating it during low-traffic times, and having a developer handy just in case. If you need the assistance of a developer, there are several places where you can hire one.
  • We create a backup automatically so you can roll back as needed. Note: If your live site is an ecommerce or other dynamic and quickly-changing site, data could be lost between the time you push and when the backup is restored.
  • Environment settings (redirects, geolocation, PHP and Nginx configuration, etc.) are included in the push (even if only Files or Database is selected) and will completely overwrite the live site’s environment settings.
  • Once the push is complete, purge any built-in cache in your theme or plugins, clear your browser’s cache, and test your site to make sure it’s working as expected.
  • When pushing your database, if you check the Run Search & Replace option, your staging domain will automatically be replaced with your live site’s domain.
  • Selecting Files will push all files, including plugins, themes, and files inside wp-content/uploads.
  • Any hard-coded URLs in your theme or plugin code will need to be updated to the live site’s URL.
  • If password protection (.htpasswd) is active on your staging environment, this will not carry over to the live environment. If you need this set up on your live site, you’ll need to enable it on the live site.
  • When you use WooCommerce, MyKinsta does not differentiate between new customer orders and older ones when you push staging to live. When you initiate a push to live, MyKinsta copies over your staging site to the live site exactly as it is while overwriting files and the database. To work around this, you can export orders on the live site, push to live, and then re-import the orders/customers onto the live environment. You will want to discuss this task with your web developer. If you do not have one or aren’t sure, please check out our article on how to hire a WordPress developer
  • Double-check the staging site and resolve any errors before pushing to live.
  • Staging environments are intended for development and testing only. They are not designed to be used as live production sites, and there may be things that don’t function as expected. Kinsta is not responsible if you try to use a staging environment for a live site.
  • Pushing to live doesn’t affect the staging environment, and it will remain separate from the live site. After pushing to live, you can continue developing and testing changes in staging without affecting your live site until you push the changes to live again.
  • Pushing to live will not interfere with Kinsta’s CDN if it is running on your live site, but we do recommend clearing the CDN cache after the push (WordPress Sites > sitename > CDN > Clear CDN cache).
  • Push to live with caution if your site is a multisite network. Pushing the database may or may not work, depending on how the multisite is set up. If you do use selective push and push the database or database and files, the entire database content will be pushed to live and will affect all sites (the main site and subsites) in your multisite network.

Push Staging To Live With Selective Push

Follow the steps below to push your WordPress staging environment to live. The workflow for selective push allows you to choose what you will push from your staging site to your live site.

Step 1

Log in to MyKinsta, click on WordPress Sites, and click on the site you want to push to. Use the Environment selector next to the site name to select the staging environment you want to push from. If you’ve added a Premium Staging Environment, you will have more than one staging environment to choose from.

Change to a WordPress staging environment in MyKinsta.
Change to a WordPress staging environment in MyKinsta.

Step 2

Once you’re in the staging environment, click on the Environment actions menu and select Push to live from the dropdown menu.

Push Staging to Live in MyKinsta with Selective Push.
Push Staging to Live in MyKinsta with Selective Push.

Step 3

In the Push to Live pop-up/modal that appears, choose either Files, Database, or check both — depending on what you’d like to push to live. Type the site name to confirm and click the Push to Live button.

Use Selective Push to push files from staging to live.
Use Selective Push to push files from staging to live.

A few things to keep in mind are:

  • The time required for the process to complete depends on the size of your website.
  • MyKinsta will notify you when the process is completed.
  • Your website will experience a couple of seconds of downtime at the final stages of the process.
  • Environment settings (redirects, geolocation, PHP and Nginx configuration, etc.) are included in the push (even if only Files or Database is selected) and will completely overwrite the live site’s environment settings.

Use Cases and Example Workflows

Below we’ve outlined some examples of when you might want to push just files, just the database, or both. Keep in mind the following when pushing staging to live:

  • Environment settings (redirects, geolocation, PHP and Nginx configuration, etc.) are included in the push (even if only Files or Database is selected) and will completely overwrite the live site’s environment settings.

Push Files Only

  • Changes made directly to theme files (including HTML, CSS, or PHP) that don’t save any data to the database.
  • Uploading a file that doesn’t need to be included in the WordPress Media Library.
  • If you have a custom plugin on your site and make changes to the files that do not affect the database (doesn’t save or alter data in the database).

Push Database Only

Note: Any changes to the live site’s database since the staging site was created will be lost, including but not limited to: comments, new content, purchases on ecommerce sites, sign-ups on membership sites, and forum posts.

  • Creating or editing a new post or page that doesn’t include any uploaded media (image, video, or other uploaded files).
  • Layout changes to a page or post made through a builder plugin.
  • Changing the Site Title or Tagline.

Push All

Note: Any changes to the live site’s database since the staging site was created will be lost, including but not limited to: comments, new content, purchases on ecommerce sites, sign-ups on membership sites, and forum posts.

  • Creating new content that includes uploaded media (image, video, or other uploaded files).
  • Changes to your theme made in both the Customizer and the theme files.
  • Installing and testing a new plugin or updated version of a plugin.

Frequently Asked Questions (FAQ)

Q: If I test a plugin on the staging environment and push only the files to live, will it create the corresponding database tables for the plugin?

If you install a plugin on your staging site that’s never been installed on the live site, pushing only the files from staging to live will not create the database tables for that plugin.

This also means that any settings you’ve configured in the plugin will not be pushed to live (unless the settings are saved in a file outside of the database, like in a JSON file, for instance).

Depending on how the plugin is coded, enabling (first disabling if necessary) the plugin on the live site may create the database structure.

Q: If I push only the files to live, does this mean the old database (in staging) will not overwrite the live one, and only the files will be overwritten?

Yes, when pushing only the files, this means that the database on the live site remains unchanged, and only files on the live site will be overwritten.

Q: Does this mean that I can work on design changes on my staging site and push those to live without losing any new subscribers or customers on my live site?

Yes, as long as your changes are made only to files (no changes made in the WordPress dashboard — including plugin, theme, or customizer settings), you can safely push those to live without pushing the database. When you push the changes to live, select Files and make sure Database is not selected.

Q: Can I use selective push to change my site’s PHP version?

Yes, you can use staging to test and push a new PHP version to your live environment, but it isn’t strictly necessary to push from staging to live to update your PHP version. Here’s a brief overview of how you would change the PHP version without pushing from staging to live:

  1. Create a staging site.
  2. Go to the staging site and change the PHP version on the staging site.
  3. If everything is okay and working as expected on the staging site (be sure to test your site thoroughly), switch the PHP version on the live site.

Q: I made CSS changes in the WordPress dashboard and pushed files. Why am I not seeing my changes, even after clearing all of the cache?

Depending on the type of change made and where that information is stored, you may need to push the database or make those changes manually on the live site. For instance, if you added or edited CSS in a block or widget in the WordPress dashboard, that would probably be saved to the database.

If you make changes to something in the WordPress dashboard, with the exception of changes made with the Theme Editor (Appearance > Theme Editor), that information is usually stored in the database.

Note: Any changes to the live site’s database since the staging site was created will be lost, including but not limited to: comments, new content, purchases on ecommerce sites, sign-ups on membership sites, and forum posts. In this case, we recommend making the same changes manually on the live site rather than pushing the database.

Q: How does selective push work with a multisite network?

If you use selective push to only push the files, it will work fine, regardless of the type of multisite network. If you push just the database or the database and files, it may or may not work, depending on how your multisite is set up:

  • If it’s a subdirectory multisite (example.com, example.com/subsite1, example.com/subsite2), push to live will work as expected.
  • If it’s a subdomain multisite (example.com, subsite1.example.com, subsite2.example.com), it will work fine, provided the subsites don’t require HTTPS.
  • If it’s a domain-mapped multisite (loads different subsites at completely different domains, e.g., example.com, example1.com, example2.com), it won’t work without significant manual setup.

 

Was this article helpful?