Backup and restore all your self-hosted WordPress content
Project description
py-wordpress-backup
A Python package for backing up and restoring a self-hosted WordPress installation, including the database and uploaded content.
The backup file will contain:
- Your database as a MySQL dump.
- An exact copy of your entire WordPress directory.
The restore process will:
- Extract the files into the correct location
- Update
wp-config.phpwith new settings (if needed) - Create the database if it doesn't exist
- Add the user and grant it access if it doesn't exist
- Restore the database
Credit
Credit for the original version of this goes to Cariad Eccleston.
TODO
- Unit tests.
- Handle
wp-config.phpbeing somewhere other than the default location.
Installation
pip install wpbackup2
Usage
To backup:
python3 -m wpbackup2 backup --wp-dir /www/wordpress --archive ~/backup.tar.gz
Note that the current release of py-wordpress-backup expected wp-config.php to exist within your WordPress directory, and will use it to read your database credentials to perform the backup. Keeping your wp-config.php file in this location might not be the best practice, and I'll likely handle this in a future update.
To restore using database admin credentials held in AWS Secrets Manager:
python3 -m wpbackup2
restore
--wp-dir /www/wordpress
--archive ~/backup.tar.gz
--admin-credentials-aws-secret-id AdminUserSecretID
--admin-credentials-aws-region eu-west-1
To restore with specified database admin credentials:
python3 -m wpbackup2
restore
--wp-dir /www/wordpress
--archive ~/backup.tar.gz
--admin-user admin
--admin-password trustno1
--new-site-url https://new.site.url
--new-site-host https://new.site.url
--new-db-host
--new-db-port 3306
--new-db-name new-wordpress-db-name
Development
import wpbackup2
wp = WpBackup()
wpbackup('path to wordpress', 'archive name')
Prerequisites
py-wordpress-backup requires Python 3.6 or newer.
Installing dependencies
pip install -e .[dev]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wpbackup2-0.2.21.tar.gz.
File metadata
- Download URL: wpbackup2-0.2.21.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f49677365ce61894c72899ae7fba262827450869b2d948bb87a27cd8735cb566
|
|
| MD5 |
943171136e057cac9eadb4808187623e
|
|
| BLAKE2b-256 |
801836cb8c945b9afd923910723e236a7a9f9b759f5efc5b9fff589d036ad16e
|
File details
Details for the file wpbackup2-0.2.21-py3.8.egg.
File metadata
- Download URL: wpbackup2-0.2.21-py3.8.egg
- Upload date:
- Size: 31.3 kB
- Tags: Egg
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7cfba22a6ec42c32d5af3246cd36d5fcad53e817e3e47e2e0e09cd87d503d7b4
|
|
| MD5 |
25ff78a0ac625e9231f021ba5f31ba5d
|
|
| BLAKE2b-256 |
6da299e0403d3a5c711af74328a9d17340e3cc47cd9c291c93067a69b09a7827
|
File details
Details for the file wpbackup2-0.2.21-py3-none-any.whl.
File metadata
- Download URL: wpbackup2-0.2.21-py3-none-any.whl
- Upload date:
- Size: 15.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e70864dce2e6286c3a6ff1fec532cedc2a25fcebe23eaafda71aa33be3bfd13
|
|
| MD5 |
00d565938c57bb5802d95a7243a9c89e
|
|
| BLAKE2b-256 |
fc5785d413b044003f3e0139d3c96ce0e5d129a21c08909407c9c25668181b2c
|