This Guide covers both Duplicator Lite & Pro*

User Guide

Management How to manage your Duplicator Pro plugin
Packages Package creation in the WordPress Administrator
Schedules Schedule setup and configuration Pro
Storage Storage setup and configuration Pro
Templates Create a profile for a package Pro
Tools Helpful Tools
Settings Plugin configuration and settings

*For step-by-step migration instructions refer to How to Move a WordPress Site

Plugin Management

Server Requirements

Requirements

  • WordPress 4.0+
  • PHP 5.2.17+ (5.3+ recommended)
  • MySQL 5.0+ (5.5+ recommended)
  • Zlib compression enabled
Note: Duplicator does work with other web servers such as IIS and databases such as MariaDB.
Plugin Installation

Overview:

Installing Duplicator Pro follows the same procedure as manually installing any other WordPress plugin. The only extra step you need to perform is to activate your license once you have installed and activated the plugin.

Step-By-Step:

  1. Download Duplicator Pro Plugin zip file to your desktop.
    - After purchase you will receive an email with a download link
    - You can also login to your SnapCreek Dashboard and download that latest version.
  2. Login to your WordPress Administrator and click "Plugins".
  3. Click the "Add New" button.
  4. Click the "Upload Plugin" button.
  5. Click the "Choose File" and select the Duplicator Pro zip file and click "Install Now".
  6. Click Activate to activate it.

Walk-through:

Installing Duplicator Professional

Click to load video
Plugin Licence Activation
Plugin activation is very simple, just follow these steps:
  1. Install and Activate the plugin
  2. Go to Duplicator Pro ❯ Settings ❯ Licensing ❯ Enter Your License Key
    - Your license key will be sent to you via email after you purchase OR login to your dashboard to view your keys
Plugin Overview

Overview:

The Duplicator Pro plugin is used to backup, migrate and ease the overall work-flow for working with WordPress sites. The plugin allows developers, designers, admins, and business owners to easily backup, restore and move a WordPress site from one location to another. The plugin consists of the following menu items or sections.

Menu Options
Menu Name Description
Packages The starting point for the plugin. This is where all packages are created and viewed.
Schedules Create and setup schedules backups to ran at various durations.
Storage Create storage endpoints to servers like Google Drive, Amazon Cloud, Dropbox and FTP.
Templates Create custom profiles of what your package should include or exclude such as directory/file paths. Include or excluded specific database tables as part of your backup.
Tools Various tools such as package logs and system cleanup.
Settings Global plugin settings used to help facilitate the use of the plugin.


Packages

Packages » All

Overview:

The "Packages » All" screen is the main interface for managing all the packages that have been created.
A Package consists of two core files which are named 'Installer' and 'Archive'. The Installer file is a plain php file that is used to help redeploy or install the Archive file, the two go hand in hand. The Archive file is a compressed zip file of all your WordPress files and a copy of your WordPress database.

The Archive file can be adjusted to include/exclude only directories/files or database specific tables from your WordPress site. These options can be in edited in the Packages » New: Step 1 Setup view found by click the 'Create New' button. Below is a list of all the options available on the packages screen.

Details:

Item Notes
Bulk Actions Delete: By checking each package line and clicking the 'Apply' button you can delete the package information. This will remove any of the local packages on the server including the physical installer and archive files. This will however not any of the packages that may have been stored to a cloud instance such as Google Drive, Dropbox, etc.
Create New This button will start the wizard for creating a new package and will take you to the Step 1 Setup screen.
Origin This value will display either 'Manual', 'Schedule' or 'ScheduleR'.
Manual: The indicates that the package was manually created using the 'Create New' button.
Schedule: The indicates that the package was created by a scheduled routine.
ScheduleR: The indicates that the package was created manually from schedules screen using the 'Run Now' action.
Created The time at which the package was created. This value represents the server time and is controlled by the WordPress Admin ❯ Settings ❯ General ❯ Timezone settings.
Size The size of the Archive.zip file. This value will vary based on if any filters have been enabled.
Name The name of the package. This can be any descriptive name you want.
Package Installer: This button will download the installer.php file. If a local storage option was not set then the button will be disabled.
Archive: This button will download the archive.zip file. If a local storage option was not set then the button will be disabled.
Storage: This button will show the remote storage endpoint links setup otherwise it will be disabled.
Details: This button will show the package details screen which contains all the details about the package.

Notices:
Build Cancelled: The build was actively cancelled by clicking the 'Stop Build' button shown only when a build is in progress.
Error Processing: The build process failed or was unable to complete successfully. Clicking the link will take you to the Package Details screen where you can view the package build log under the 'General' ❯ Files
Storage Error: This indicates that at least one of the remote storage transferrs failed. If a package has multiple remote endpoint locations and one of the endpoints fail, but the others succeed then the one that failed should show in red and indicate that it failed.
Footer Packages: Shows the number of packages that have been made. This value will also show packages that may have errors.
Total Size: The size of all the packages combined on your server disk.
Server Time: The current time on your server this is controlled by WordPress Admin ❯ Settings ❯ General ❯ Timezone settings.


Packages » New - Step 1: Setup

Overview:

The package setup screen allows you to prepare where the package will be stored and which files and database tables will be placed in the archive file. The setup screen has several sections all of which will be covered below.

Requirements:

The System requirements section must pass for the Duplicator to work properly. If this section shows fail you will not be able to continue with the setup until it shows as passing. There are currently 4 main sections PHP Support, Permissions, Server Support and Installation Files. Clicking on each link will open a description for what actions you can perform to get the requirement to pass.

General:

The following options are not grouped to any section and will apply to the entire package.
Item Description
Apply Template An optional template configuration that can be applied to this package setup. An [Unassigned] template will retain the settings from the last scan/build. Templates can be created from the Templates menu.
Name A name to help identify the package. By default the value from the last package creation is loaded as the default name.
Notes Click the notes button to expand and add additional notes about the package.

Storage:

The storage section allows you to pick from any of the storage locations that have been created such as the local server, Dropbox, Google Drive, Amazon and FTP. If a storage endpoint does not exist in the list then click the 'Add Storage' link in the right corner to add one.

When creating a package choose each location by checking the checkbox. For each location you check the package and installer file will be stored on that location. The main storage title will have the number of actively checked endpoints. To proceed to the 'Scan Step' at least one storage point must be checked. The table below covers the various options for the Storage section.

Item Description
Name A descriptive name that defines the endpoint. For remote locations the line will show a cloud icon. For locations that are on the local servers hard drive it will show a server icon.
Type This defines the endpoint type such as Local, Google Drive, Dropbox, FTP and others.
Location This defines the location where they are stored, some values will be click-able while others will not.

Archive:

The archive.zip file is what contains all your files and a copy of your database via a generated SQL file. By default when the archive file is created all files and directories from your WordPress root path and all the tables in the WordPress database are selected. In order to customize your archive file you can exclude files and database tables.

Excluding items is handy if you don't want to continually create large archive files and only need to select specific items. However if you do exclude specific items please be aware that you will have to manually move those items immediately after package installation. The table below covers all the options for the Archive section.
Item Description
FILES TAB
Enable File
Filters
File filters allow you to ignore directories/files and file extensions. When creating a package only include the data you want and need. This helps to improve the overall archive build time and keep your backups simple and clean. The checkbox allows you to keep all the settings or temporarily ignore them. If any type of file filter (directory, extension, file) is enabled the Archive title will show the following icons .
Directories Add the full path to the directories that should be excluded from being archived. Add a semicolon to separate each path. For example if you want to ignore your uploads path and the WordPress cache then the path(s) might look like this:
//public_html/mysite.com/wp-content/uploads;
//public_html/mysite.com/wp-content/cache;
Extensions File extentions allow you to exclude all files with a specific extention. For example if you wanted to ignore all zip, tar and log files then you would add:
zip;tar;log
Please note that you only need to the extension name and not the '.' separator. Use the links on the right to quickly add common extensions.
Files Add the full path to the file(s) that should be excluded from the archived file. Add a semicolon to separate each path. For example if you want to ignore the readme.html file in your root, a specific file in your uploads folder and all error.log files in the entire site then the path(s) might look like this:
//public_html/mysite.com/readme.html;
//public_html/mysite.com/wp-content/uploads/large_movie.mov;
error.log;
Use filenames without paths to filter same-named files across multiple directories, this can be useful for debug and log files. Note: pattern expressions are currently not supported (i.e. error.*)
DATABASE TAB
Build Mode PHP: This mode uses PHP to build the database.sql script which contains a full copy of your database minus any excluded files. This particular mode is very resource intensive and is much slower on larger databases.

Mysqldump: This is the preferred mode and should be used if the option is supported on your server. It uses less server resources and is much faster for larger databases. Please contact your server admin or hosting provider to enable both shell_exec and mysqldump for this option to work with in your site.
Enable Table
Filters
Table filters allow you to ignore certain tables from a database. When creating a package only include the data you want and need. This helps to improve the overall archive build time and keep your backups simple and clean.

When a table is checked it will be excluded from the generated database file. If any type of table is enabled the Archive title will show the following icon indicating that a database filter has been applied.

Compatibility
Mode
This is an advanced database back-wards compatibility feature that should ONLY be used if having problems installing packages and you have no option to update the mysql server version. If the database server version is lower than the version where the package was built then these options "might" help generate a script that is more compliant with the older database server. It is recommended to try each option separately starting with mysql40.

How to use Compatibility Mode
  1. MySQL Dump must be enabled. See Settings ❯ Packages Tab ❯ Use mysqldump radio button ❯ Save
  2. Packages ❯ Create New ❯ Open Archive Section ❯ Database Tab ❯ Compatibility Mode
  3. Read "full overview" link to understand options that may pertain to your setup
  4. Check the compatibility option(s) that apply to your setup and try to create the package
  5. On the scan screen you will see a notice that one of the compatibility modes have been checked
  6. Run the installer.php and check the install-log.txt for any deploy errors that may occur
Since we do not recommend this approach we don't offer support for working with and using these settings. The time involved with trying to find the right combination and determine if the data will even be stable is beyond our support for the product. We have partners who can help you work through these issues. For additional developer help consider Tilden Tasks from our partners page.

Installer:

The installer file is what is used to help redeploy or install the archive file. The installer section of the package setup has several optional options for the installer. These values are all optional on this screen and not required.

SETUP
The setup section allows for how the installer will behave when you initially browse to it.
Item Description
Password Protection Enabling this option will allow for basic password protection on the installer. Before running the installer the password saved in this value must be entered before proceeding with an install. This password is a general deterrent and should not be substituted for properly keeping your files secure.
Skip System Scan By default every time the installer is opened it will run a simple scan on the server environment. If the scan check passes then enabling this option automatically take you to step one of the installer and will skip the system scan screen.

INPUTS
All values in this section are optional. The installer can have these fields pre-filled at install time. If you would like to have the installer pre-filled with these values then enter them here. All of these values are covered in detail in the Installer section of this guide.

Packages » New - Step 2: Scan

Overview:

The system scan step helps to ensure the build process runs smoothly. The scan step can help determine potential issues that might occur during the build phase and even the install process. The more ' Warn' checks that are found the higher the potential for running into issues during the build and install phases. Getting all the scan checks to show ' Good' will help ensure a clean build and install process, however continuing with a 'Warn' status is still possible.

Details:

The scan report covers server settings, archive files and database tables. Scan checks are not required to pass, however they can cause issues on some systems if they are not addressed. If you receive a 'Warn' status on any of the items; then open the specific link and read the suggestions.

It is OK to try and build a package even if you have a 'Warn' status. If you are able to build a package with a 'Warn' status then you can ignore the warning. However if you have issue during the build or install process you may want to work with your hosting provider to try and address the warning.

The Build Mode section covers the different ways in which the files and database can be archived. The modes can be adjusted via Duplicator Pro ❯ Settings ❯ Packages Tab ❯ Database & Archive Engine
Item Description
Archive ZipArchive: This setting uses core PHP code to zip up all of the requested files. While this setting is much more common place on most hosting providers it can be more resource intensive and it some cases slower than shell_exec.

Shell_exec: This setting is recommend if your server supports the setting. Shell_exec uses PHP to call out to your server system zip command which can be faster and less resource intensive on some servers.
Database PHP: This setting uses core PHP code to build the database script. While this setting is supported on all servers it is more resource intensive and it some cases slower than mysqldump.

Mysqldump: This setting is recommend if your server supports the setting. mysqldump uses PHP to call out to your server system mysqldump command which is faster and less resource intensive.

Packages » New - Step 3: Build

Overview:

The build step is the last step of the package creation process and is displayed directly in the Packages screen. When a package is building you will need to wait for it to complete before attempting another. If a scheduled package is queued up at the same time as a manual package then it will stay in a pending state until the first one completes.

Details:

The different states that the build process may be in at any given time are shown below:
Item Description
Building
Package
When a package is building a indeterminate progress bar with show along with a message saying 'Building Package %50'. The percentage will slowly change as the package is being processed. You can click the button at anytime to stop the current build.

Depending on your server environment the build process can take several minutes. It is very rare (depending on the size) but the process may take upto an hour. The package process however should not take hours. If the process takes much longer than 60 minutes then in most cases the process may be stuck.

When the package is done building the progress bar will go away and on the very left hand side of the row will be a color indicating the state of the build which are:
Running: The package is currently building or transferring to a remote storage location
Success: The package has been successfully built
Error: An error occurred during the package build process
Transferring
Package
Once a build has successfully run the plugin will start the process of transferring the archive and installer files to all the specified remote storage endpoint locations that were selected with this build. The message will change to 'Transferring Package %50' with a current sub status message of the remote endpoint location that it is working on.

The transfer process will continue to work through each storage endpoint that was selected. For example if you choose Google, Dropbox and FTP then it will go through all 3 endpoints copying the files to each endpoint. If say Dropbox fails during the process it will still continue to process the other endpoints.

If an endpoints fails during the transfer phase then then the storage button will be shown as . Clicking the button will open a dialog that shows which transferrs worked and which ones failed. If they all where successful it will show as
Pending
Package
When multiple packages are set to build or attempt to start the build process at the same time, the plugin will check to see if there are any active builds. If another build is running the subsequent queued packages will be put into a pending state until the first package is done building and transferring all its data. Pending items can be cancelled before they are ran by clicking the button.

Packages » Step By Step

Overview:

This section will walk you through creating a package step-by-step. In these steps we will try to cover some general scenarios that may apply to your setup as well. If they don't feel free just skip the step.

  1. Start: Goto Duplicator Pro ❯ Packages ❯ click the 'Create New' button in the upper right corner.
  2. Step 1 Setup:
    1. Give the package a name
    2. Click the Notes button and add some notes
    3. Open the 'Storage' section and be sure that the 'Default' storage location is checked
    4. Open the 'Archive' section and check the 'Enable File Filters' checkbox
      1. Add to the 'File Extensions' input the value log this will exclude all log files with a log extention
      2. Add to the 'Files' input the value error_log this will exclude all files named error_log
      3. Add any additional files to exclude and be sure to enter the full path of the file such as //public_html/mysite.com/myfile.zip
    5. The installer section is optional and should be used for more advanced setups
    6. Click the Next Button & let the scanner run
  3. Step 2 Scan:
    When the scan is done check the status to make sure they are flagged as ' Good'. Then click the 'Build' button. If any status show a ' Warn' status its still OK to continue with the build. By clicking each one of the sections you can get more details about how to get the Warn status to go away.
  4. Step 3 Build:
    When the package starts building you will be taken to the Packages screen were a progress indicator will run until the package is complete. Once the package has completed building you can download or transfer the files or just leave them for later use.

Schedules Pro Only

Schedules » All

Overview:

The "Schedules » All" screen is the main interface for managing all schedules that have been created. Schedules are used to automatically create a package at a specific time. Schedules can be ran at any time and as frequently as needed. It is however recommend to space out and only run your a schedule when absolutely needed. Creating packages are expensive on your server resources and should be used with caution especially on shared budget hosts.

Schedules use predefined templates to run from. Templates allow you to choose which files and database tables you would like to make as part of your backup process. A schedule can also be tied to a storage endpoint and pushed upto the cloud as part of its runtime directive.

Details:

Item Notes
Name A short descriptive name for the schedule.
EXAMPLES:
"Weekly Full" ❯ A schedule to backup the entire site once a week.
"Bi-Weekly Full" ❯ A schedule to backup the entire site twice a week.
"DB-Daily 00:00" ❯ A schedule to backup only the database at 12am daily.
"DB-Daily 13:00" ❯ A schedule to backup only the database at 1pm daily.

QUICK LINKS:
Quick View: This will show additional summary in-line such as the summary and how many times it has been ran.
Edit: Takes you to the edit screen.
Delete: Will delete only the selected schedule.
Run Now: This will activate the package creation process for this schedule right now. Once clicked you will be taken to the package build process on the packages screen.
Storage Every storage location the schedule backup is stored or transferred to. This will be the storage name not the storage type. For example if your storage type is Dropbox but you named it 'My Dropbox' then 'My Dropbox' will show in this column.
Runs Next The next date time the schedule is scheduled to run.
Last Ran The last time the schedule was ran or actively initiated.
Active A schedule must be active for it to run. This will show if the schedule is currently active and ready to be ran.
Footer Total: Shows the number of schedules created.
Active: The number of active schedules.
Time: The current time on your server this is controlled by WordPress Admin ❯ Settings ❯ General ❯ Timezone settings.


Schedules » Add/Edit

Details:

The Add/Edit screen is used to add and edit existing schedules. You can easily copy an existing schedule by using the copy from drop-down in the upper right hand corner.
Item Notes
Name A short descriptive name for the schedule.
EXAMPLES:
"Weekly Full" ❯ A schedule to backup the entire site once a week.
"Bi-Weekly Full" ❯ A schedule to backup the entire site twice a week.
"DB-Daily 00:00" ❯ A schedule to backup only the database at 12am daily.
"DB-Daily 13:00" ❯ A schedule to backup only the database at 1pm daily.
Template Every schedule must be assigned to a template. Templates allow you to choose which files and database tables you would like to make as part of your backup process. The default template will be assigned by default.
Storage Choose at least one or more storage location(s) that your schedule will be stored at. This can be the local server or any number of storage locations such as Dropbox, Google Drive, FTP and others.
Repeats Daily ❯ This will run the schedule every X days. For example if you choose every 7 days then the schedule will run once per week.
Weekly ❯ Choose the days of the week Monday thru Sunday that you would like the schedule to run.
Monthly ❯ Choose which day of the month and the number of months you would like to run.

Start Time The time of day you would like this to run. All times are in 24 hour increments from 00:00 (12am) to 13:00 (1pm).
Activated A schedule must be active for it to run. This is an easy way to enable/disable a schedule without removing it.

Schedules » Step By Step
  1. Start: Goto Duplicator Pro ❯ Schedules ❯ click the 'Add New' button in the upper right corner.
  2. Copy From: This is an optional step that will allow you to copy from an existing schedule.
  3. Name: Give the schedule a descriptive name for example see Add/Edit section above.
  4. Template: Select an existing template or use the default
  5. Storage: Choose at least one storage location where the package and installer will be stored at.
  6. Repeats: Choose the frequency and duration for how often the schedule should run.
  7. Start Time: Choose the time of day you want the schedule to start on. Values are 00:00 (12am) to 23:00 (11pm).
  8. Activate: Choose if the schedule is active to run. Finally save the schedule and wait for the schedule timed.
  9. Run Now: This is an optional step that will you allow the schedule to be ran right now.

Storage Pro Only

Storage » Local Server

Overview:

The local server storage option allows for the package (installer/archive) to be stored at any physical path on your server that PHP has access to. In Duplicator Lite all data is stored to the wp-snapshots folder off the root of your WordPress site. With Pro the package data can be stored to a path that you designate. Otherwise it will be stored to a default location in the wp-content directory. This option can be handy if you need or want to specify the path for storing your package.

Settings:

Item Description
Name/Notes The storage name and optional notes about the local server path
Storage Folder The full path on the server where you would like the package (installer.php/archive.zip) stored. On Linux systems start with '/'. On Windows use drive letters. (e.g. /mypath or E:/mypath). Be sure that PHP has permissions to write to the path provided. If the path does not exist then Duplicator will try to create the path.
Filter Protection When checked this will exclude the 'Storage Folder' provided directly above and all of its content and sub-folders from being included in a package build. This setting is highly recommended and failure to check this option can lead to build failures.
Max Packages Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is recommended to keep this number low. Storing too many packages can lead to space allocation issues, especially if your limited for disk space.

Step-By-Step:

  1. Create New Storage Provider: Duplicator > Storage > Add New
  2. Add Name and Notes and select Type: Local Server
  3. Provide the full path on your local server to where the package will be stored
  4. Leave the Filter Protection check-box checked
  5. Enter the number of packages you want to persist for this storage location
Storage » Amazon S3
See this full online guide for a complete overview of setting up an Amazon S3 storage endpoint.

Storage » Dropbox

Overview:

Duplicator Pro can push your backups to the Dropbox cloud service. All packages are initially built on the local server and then pushed up to Dropbox using its API services.

Settings:

Item Description
Name/Notes The storage name and optional notes about the local server path
Authorization This process will validate your Dropbox account and allow for Duplicator to communicate with Dropbox. Once validated the name and email associated with the Dropbox account will be displayed in the 'Authorization' section. To cancel and remove the storage settings from Dropbox click the 'Cancel Authorization' button. This disassociates this storage provider with the Dropbox account.
Storage Folder This is the folder on the Dropbox servers where packages will be stored. This should be unique for each web-site using Duplicator.
Max Packages Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Connection Once your account as be 'Authorized' you can test the connection to make sure there are no interruptions. This can also be useful if you are experiencing issues with file uploads.

Step-By-Step:

  1. Create New Storage Provider: Duplicator > Storage > Add New
  2. Add Name and Notes and select Type: Dropbox
  3. Under Authorization: Click "Connect to Dropbox"
    • Step 1 Click Authorize Dropbox
    • This will open a new browser window/tab to dropbox.com
    • Click the "Allow" Button and wait for Success Message
    • Close the dropbox.com site window/tab and go back to Duplicators interface
    • Under Authorization Step 2: Click the Finalize button
    • Duplicator is now authorized to access the following Dropbox account
  4. Click the 'Test Dropbox Connection' button to validate data can be moved between systems.
  5. Finally Click the "Save Provider" button to save this Dropbox storage endpoint
Now when creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php) will be transferred to after it has been created.

Storage » Google Drive

Overview:

Duplicator Pro can push your backups to the Google Drive cloud service. All packages are initially built on the local server and then pushed up to Google Drive using its API services.

Settings:

Item Description
Name/Notes The storage name and optional notes about the local server path
Authorization This process will validate your Google Drive account and allow for Duplicator to communicate with Google Drive. Once validated the name and email associated with the Google Drive account will be displayed in the 'Authorization' section. To cancel and remove the storage settings from Google Drive click the 'Cancel Authorization' button. This disassociates this storage provider with the Google Drive account.
Storage Folder The folder on the Google Drive servers where packages will be stored. This should be unique for each web-site using Duplicator. If the directory path above is already in Google Drive before connecting then a duplicate folder name will be made in the same path. This is because the plugin only has rights to folders it creates.
Max Packages Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is highly recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Connection Once your account as be 'Authorized' you can test the connection to make sure there are no interruptions. This can also be useful if you are experiencing issues with file uploads.

Step-By-Step:

  1. Create New Storage Provider: Duplicator > Storage > Add New
  2. Add Name and Notes and select Type: Google Drive
  3. Under Authorization: Click "Connect to Google Drive"
    • Step 1: Click Authorize Google Drive
    • This will open a new browser window/tab to accounts.google.com
    • If you have multiple Google accounts then choose the account you would like to use
    • Click the 'Allow' button and copy the long code generated.
    • Step 2: Go back to Duplicators interface and paste the code into the input titled Step 2
    • Step 3: Click the 'Finalize Setup' button
    • Duplicator is now authorized to access the following Google Drive account
  4. Click the 'Test Google Drive Connection' button to validate data can be moved between systems.
  5. Finally Click the "Save Provider" button to save this Google Drive storage endpoint
Now when creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php) will be transferred to after it has been created.

Storage » FTP

Overview:

Duplicator Pro can push your backups to an FTP location. All packages are initially built on the local server and then pushed up to the FTP endpoint.

Settings:

Item Description
Name/Notes The storage name and optional notes about the local server path
CREDENTIALS
Server The FTP server name. Please see your FTP server documents for the correct server name
Port The FTP server port. Please see your FTP server documents for the correct server port
Username/Password The FTP username/password. Please see your FTP server documents for the correct username/password
SETTINGS
Storage Folder The folder on the FTP servers where packages will be stored. This should be unique for each web-site using Duplicator.
Max Packages Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is highly recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Timeout How long should Duplicator wait when trying to connect
SSL-FTP Should the connection attempt to use FTPS to connect to the server. This option needs to be supported and configured correctly on the FTP server before it will work correctly.
Passive Mode Should this connection use FTP passive mode.
Connection Validate that the credentials and settings entered above are working.

Step-By-Step:

  1. Create New Storage Provider: Duplicator > Storage > Add New
  2. Add Name and Notes and select Type: FTP
  3. Under Credentials: Enter in all the required FTP credentials
  4. Click the 'Test FTP Connection' button to validate data can be moved between systems.
  5. Finally Click the "Save Provider" button to save this Google Drive storage endpoint
  6. If the connection does not work initially its recommended to try the connection from a client side FTP client like: Filezilla, Cyberduck, CuteFTP or any program that specializes in connecting to an FTP server. Validate the settings and then try again.
Now when creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php) will be transferred to after it has been created.

Templates Pro Only

Templates » All

Overview:

The "Templates » All" screen is the main interface for managing all templates that have been created. Templates are used to profile out how a package will be built. Templates allow you to choose which files and database tables you would like to make as part of your backup process. It also allows for the installer to be pre-filled with the values of the template.

Use Cases:

  • Schedules: All schedules require templates to be used when running a schedule
  • Profiling: There may be instances where you only want the database or the database with specific tables. There may be an instances where you only need the database with a certain subset of files. There are many different combinations that can make up your package and with templates you can easily and quickly assign these profiles when you start a build.
Templates » Add/Edit

Overview:

The Add/Edit interface allows users to add and edit existing Templates. To quickly stub out existing templates use the "Copy From" action in the right hand corner of the screen.

Archive:

Item Notes
Name/Note A short descriptive name for the package template.
FILES This section will mirror the same file/folder filter settings that can be assigned to a package when it is created.
DATABASE This section will mirror the same database table filter settings that can be assigned to a package when it is created. The 'Compatibility Mode' option is not available as a template setting. It can only be used when creating a new package. Please see the FAQ for a full overview of using this feature.

Installer:

Item Notes
SETUP This section will mirror the same setup settings that can be assigned to the installer file setup process.
STEP 1/2 This section will mirror the same setup settings that can be assigned to an package installer file wizard setting when it is created.

Also see: Packages » New - Step 1: Setup
Templates » Step By Step

Create Template

  1. Start: Goto Duplicator Pro ❯ Templates ❯ click the 'Add New' button in the upper right corner
  2. Copy From: This is an optional step that will allow you to copy from an existing template
  3. FILES: Apply any file filters to exclude specific file/directories/extensions
  4. DATABASE: Apply any table filters that should not be included as part of the package
  5. INSTALLER: Apply the installer setup values you would like to be applied to the package
  6. Save: Save the template by clicking the 'Save Template' button.

Apply Template

  1. Start: Goto Duplicator Pro ❯ Packages ❯ click the 'Create New' button in the upper right corner
  2. Apply Template: The template you made in the step Create Template section above should be visible in the dropdown
  3. After selecting your template all of the values in the Archive and Installer section should reflect the values saved in the template
  4. To undo the applied template just select the [Unassigned] value and the package settings will default to its last created settings
Also see: Packages » New - Step 1: Setup
Also see: Schedules » Add/Edit

Tools

Tools » Logging

Overview:

The logging tab shows the various log files that Duplicator generates. There are currently two types of log files, the first is the trace log which is only available in Pro. The second is the package log which is available in both Pro and Lite. Below is a synopsis for each file.
  1. Trace Log: Pro The trace log file records all information that is going on at all times with the plugin. Since multiple requests can be executed by multiple users the trace log takes all communication from the plugin into consideration and logs that data. To further improve the full picture of all activity going on in PHP on the server (not just Duplicator Pro). There is an options in Settings ❯ General ❯ Debug labeled "Enhanced Tracing" screen. This option will also log all trace log activity to the PHP error log.
  2. Package Log: The package log is a log file that is generated for every package that is built. The log will show the progress and state of the package and will most errors/warnings that may happen during the creation of a package file.
The default log selected will be the trace log in Pro and in Lite it will be the last package log. There are currently two trace log files stored in your default store location. The active trace log and a running backup log which will be labeled *.log1. The running backup will be created once your primary trace log starts to get too large.

Each log file is represented as a link. Click on the link name and the log will be visible in the output window. To update the log click the refresh button or have it auto refresh every 10 seconds by enabling the 'Auto Refresh' option.

Tools » Diagnostics

Overview:

The diagnostics tab contains various sections that allow you to evaluate your servers setup. The various sections are each described below.

Stored Data:

This section allows users to delete all reserved installation files after a fresh install has taken place. Other options to clean up various build and Duplicator cache files are available. All options that are stored in the WordPress options table pertaining to Duplicator Pro are visible. With some options having the ability to be reset.

Server Settings:

This section contains various server settings that can be beneficial should you run into issues using the plugin. The settings are all organized into various categories. The section "PHP Information" is also a large sub-set of information produced by the phpinfo function.

Scan Validator:

This utility will help to find unreadable files and sys-links in your environment that can lead to issues during the scan process. The utility will also show how many files and directories you have in your system. This process may take several minutes to run. If there is a recursive loop on your system then the process has a built in check to stop after a large set of files and directories have been scanned. A message will show indicated that that a scan depth has been reached.
Tools » Data Pro Only

Overview:

The Data tab allows users to move settings from schedules, storage, templates and global settings of one installed instance of Duplicator Pro to another installed instance of Pro. This feature can come in handy if you you don't want to re-create the setup environment after you have installed the plugin. This feature will only work with Duplicator Pro settings.

Export/Import:

  • Export: The export section allows users to export all schedules, storage locations, templates and settings from this Duplicator Pro instance into a downloadable export file. The export file can then be used to import data settings from this instance of Duplicator Pro into another plugin instance of Duplicator Pro or the same instance if your need to restore from a previous date.

    After clicking the Export Data button the process will:
    • Export all schedules, storage and templates to a file for import into another Duplicator instance.
    • For security purposes, restrict access to this file and delete after use.
  • Import: The import section allows users to import settings from another Duplicator Pro plugin into another instance of Duplicator Pro. Schedule, storage and template data will be appended to current data, while existing settings will be replaced. Schedules depend on storage and templates so importing schedules will require that storage and templates be checked. The import process will:

    • Append schedules, storage and templates if those options are checked
    • Overwrite current settings data if the settings option is checked
    After the import is ran its import to review templates and local storages to ensure correct path values as the import will not convert them.

Step By Step:

  1. Check Data: Be sure all your schedules, storages, templates, and settings data is setup to your liking
  2. Export: Navigate to Duplicator Pro ❯ Tools ❯ Data Tab and click the 'Export Data' button
  3. Save Export: Save the export.dup file to a safe location as it contains sensitive information
  4. Note location: Navigate to a different install unless your restoring a backup of a previous export
  5. Select File: Choose the *.dup file used from the 'Save Export' step
  6. Run Import: Click the 'Import Data' button and be sure to read all prompts
  7. Check Data: Validate that all data was updated and note the following:
    • Schedule, storage and template data will be appended to the current data sets, if data exists. No data on these sections will be overwritten
    • All Settings from the Duplicator Pro ❯ Settings menu including all tabs General, Packages, Schedules, Storage, Licensing will be overwritten

Settings

General

Overview:

The "Settings » General" screen is the main interface for managing all general settings for the plugin. There are currently two main sections "Plugin" and "Debug". The Plugin area controls settings related to the use and interaction of the plugin in the context of the WordPress enviroment. The Debug area is used to enable debug utilities.

Schedules use predefined templates to run from. Templates allow you to choose which files and database tables you would like to make as part of your backup process. A schedule can also be tied to a storage endpoint and pushed upto the cloud as part of its runtime directive.

Details:

Item Notes
PLUGIN AREA
Version The current version of this plugin
Uninstall Delete Plugin Settings: By default when the plugin is removed all settings for the plugin are still saved. If you would like to remove all setting such as those found in the settings page or items like schedules and storage location then check the checkbox and when the plugin is deleted it will also remove all settings data.

Delete Entire Storage Directory: By default when the plugin is removed all packages for the packages screen are still saved to disk. If you would like to remove all packages (installer.php and archive.zip files) then check the checkbox and when the plugin is deleted it will also remove all package files.

Custom Roles This enables integration with the User Role Editor Plugin. allowing Duplicator to have custom security roles.
DEBUG AREA
Trace Log
Pro Only
The trace log helps support better debug system issues. This setting should only be enabled if directed so by the snapcreek support team.
Package Debug Enable additional debug information on the packages screen.

Packages

Overview:

The "Settings » Packages" screen is the main interface for managing all package related settings for the plugin. This includes items such as the main "Packages" screen and how a package is built and the processing rules used to build the package.

Details:

Item Notes
VISUAL
Created Format This option controls the date format shown in the 'Created' column on the Packages screen. Use this option to display how the dates will be displayed
PROCESSING
Database
Script
Duplicator can build the sites database script in two ways. The preferred and recommend approach is to use mysqldump. However some systems do not support this method for building, therefore users can still rely on PHP code to create the correct database script.

MySQLDump: This is the recommend setting. On some setups users may have to provide a custom path to the mysqldump program. Add a custom path if the path to mysqldump is not properly detected or needs to be changed. In some cases you may have to contact your server admin or hosting provider for the correct path.

PHP Code: This option should be used if mysqldump is not accessible or causing issues in your environment. On some budget hosts you may have to set the Query Limit Size to a lower setting. A higher limit size will speed up the database build time, however it will use more memory. If your host has memory caps start off low.

Archive
Compression
Pro Only
This setting controls archive compression. Turning compression off can improve build stability and speed but packages will be larger. Can be toggled when using ZipArchive on a PHP 7+ system of Shell Exec Zip.
Archive
Engine
Pro Only
Duplicator can archive the sites files in two ways. The preferred and recommend approach is to use Shell Exec Zip or your system zip comman. However some systems do not support this method for building, therefore users can still rely on PHPs ZipArchive to create the correct database script.

Shell Exec Zip: This is the recommend setting. To get Shell Exec zip working ask your host to install the zip executable and make it accessible to PHP via the shell_exec command.

PHP ZipArchive : Use PHP code to zip up your files. For larger sites on budget hosts its recommended to use the 'Multi-Threaded' setting which processes the archive file in subsequent HTTP requests. If you have access to how long a PHP process is allowed to run then use the 'Single-Threaded' mode. This mode runs in the background without an interruptions and is faster than the 'Multi-Threaded' mode.

The buffer size only applies to 'Multi-Threaded' requests. The buffer indicates how large an archive will get before a close is registered with the ZipArchive call. Higher values are faster but can be more unstable based on the hosts max_execution_time.
Server Throttle
Pro Only
It is recommended to keep this setting off unless you receive a notice from your host. The setting is used to throttle and prevent resource complaints on budget hosts. The higher the value the slower the backup.
Max Build Time
Pro Only
Max build and storage time until package is auto-cancelled. Set to 0 for no limit.
ADVANCED OPTIONS