Backup Dashboard Widget for MODX CMS.
The BackupMODX extra is a tiny dashboard widget. Just place the widget into your dashboard and click the "Backup" button whenever you need a quick backup of your site. You can select either to backup your database, files or both. After the backup is finished you can download the files as a zip-archive. Just click the "Remove Backup" button after your download is finished to remove the backup.
The extra will backup all files and folders inside your MODX installation and will also include the core-folder if placed outside the web-root.
The widget is tested in different hosting environments and it works for our needs. If you have any problems/errors while using this extra - please let us know. If you also know how to enhance the extra/code - please feel free to contribute to the GitHub Repository.
MODX Package Management
Install via package manager and add the BackupMODX widget to the dashboard.
Setting | Description | Default |
---|---|---|
backupmodx.cronDatabase | Whether or not to include the database in cron-backup. | Yes |
backupmodx.cronEnable | Enable cron backup. | No |
backupmodx.cronFiles | Whether or not to include MODX files in cron-backup. | Yes |
backupmodx.cronKey | Security key for cron scheduled backups. Can be any string. | |
backupmodx.cronMaxDatabase | Maximum stored backups of the database. | 5 |
backupmodx.cronMaxFiles | Maximum stored backups of files. | 5 |
backupmodx.cronNote | Optional description txt file added to the backup. | |
backupmodx.excludeFiles | Files to be excluded from the backup. Comma separated list. Regular expressions are possible. Example: \..* for file names, that start with a dot. |
|
backupmodx.excludeFolders | Folders to be excluded from the backup. Comma separated list. Path placeholder ({assets_path} , {base_path} , {core_path} ) are available. Example: {assets_path}uploads/ |
|
backupmodx.groups | Comma separated list of groups names, that will have access to the widget. | Administrator |
backupmodx.targetPath | The path to the folder to store the backups. Path placeholder ({assets_path} , {base_path} , {core_path} ) are available. Example: {core_path}backup/ |
{core_path}backup/ |
backupmodx.timelimit | Timelimit for the backup in seconds. | 120 |
Setup a cronJob for the Script located in
assets/components/backupmodx/cron.php
and append your cronkey as a key
parameter. If your provider does not support cronjobs you can also use an online
service like cron-job.org. The web cronjob looks like:
https://yourdomain.com/assets/components/backupmodx/cron.php?key=xyz123456789
The project is licensed under the GPLv2 license.
Translations of the package can be made for the Default Lexicon and the System Setting Lexicon