📚 Cet article fait partie de notre cluster WordPress pour PME africaines. Pour une vue d’ensemble (hébergement, sécurité, performance 3G, WooCommerce + Wave/Orange Money, multilingue), consultez notre guide pilier : WordPress pour PME africaine — guide pratique.
Sauvegarder WordPress automatiquement : ne perdez jamais votre site
Sans sauvegarde, un piratage, une erreur de manipulation ou un crash de serveur peut faire disparaître des mois de travail en quelques secondes. La règle d’or : si votre site n’est pas sauvegardé, il n’existe pas vraiment. Ce guide vous montre comment mettre en place des sauvegardes automatiques fiables, avec des solutions gratuites et payantes adaptées au contexte sénégalais.
1. La règle 3-2-1 des sauvegardes
- 3 copies de vos données minimum
- 2 supports différents (serveur + cloud)
- 1 copie hors site (pas sur le même serveur que votre site)
Votre hébergeur fait probablement des sauvegardes, mais ne comptez jamais uniquement dessus. Si l’hébergeur a un problème, ses sauvegardes aussi.
2. Que faut-il sauvegarder ?
| Élément | Contenu | Taille typique | Fréquence recommandée |
|---|---|---|---|
| Base de données | Articles, pages, commentaires, utilisateurs, réglages, commandes WooCommerce | 50-500 Mo | Quotidienne |
| wp-content/uploads | Images, fichiers uploadés, médias | 500 Mo – 10 Go | Hebdomadaire |
| wp-content/themes | Thèmes et personnalisations | 10-50 Mo | Après chaque modification |
| wp-content/plugins | Extensions installées | 50-200 Mo | Hebdomadaire |
| wp-config.php | Configuration (identifiants BDD, clés) | 3 Ko | Après chaque modification |
| .htaccess | Règles serveur | 1 Ko | Après chaque modification |
3. UpdraftPlus : la solution gratuite la plus fiable
Installation et configuration
- Installez UpdraftPlus depuis Extensions → Ajouter
- Allez dans Réglages → Sauvegardes UpdraftPlus
- Onglet Réglages :
Planification recommandée
| Type de site | Base de données | Fichiers | Rétention |
|---|---|---|---|
| Blog simple | Hebdomadaire | Toutes les 2 semaines | 4 sauvegardes |
| Site vitrine actif | Quotidienne | Hebdomadaire | 7 sauvegardes |
| E-commerce WooCommerce | Toutes les 4 heures | Quotidienne | 14 sauvegardes |
| Site de formation / membres | Toutes les 12 heures | Quotidienne | 10 sauvegardes |
Stockage distant (obligatoire)
Ne jamais stocker les sauvegardes uniquement sur le serveur. Choisissez un stockage distant :
| Service | Gratuit | Configuration |
|---|---|---|
| Google Drive | 15 Go | Cliquez « Authentifier avec Google » dans UpdraftPlus |
| Dropbox | 2 Go | Cliquez « Authentifier avec Dropbox » |
| Amazon S3 | Payant (~0.023$/Go/mois) | Access Key + Secret Key + Nom du bucket |
| Limité | Uniquement pour la BDD (fichiers trop lourds) |
Recommandation : Google Drive gratuit pour les petits sites, Amazon S3 pour les sites e-commerce importants.
Première sauvegarde
- Après configuration, cliquez « Sauvegarder maintenant »
- Cochez « Inclure la base de données » et « Inclure les fichiers »
- Cochez « Envoyer vers le stockage distant »
- Attendez la fin — la première sauvegarde peut prendre 5-30 minutes selon la taille du site
- Vérifiez sur Google Drive/Dropbox que les fichiers sont bien arrivés
4. Restauration : tester AVANT d’en avoir besoin
Une sauvegarde qui n’a jamais été testée n’est pas une sauvegarde. Testez la restauration :
Avec UpdraftPlus
- Allez dans Réglages → Sauvegardes UpdraftPlus
- Dans l’onglet « Sauvegardes existantes », trouvez votre sauvegarde
- Cliquez « Restaurer »
- Sélectionnez les éléments à restaurer (base de données, plugins, thèmes, uploads)
- Confirmez et attendez
Restauration manuelle (en cas d’urgence)
# Si WordPress ne fonctionne plus du tout :
# 1. Restaurer les fichiers via FTP
# Uploadez tous les fichiers de la sauvegarde dans le dossier WordPress
# 2. Restaurer la base de données via phpMyAdmin
# - Connectez-vous à phpMyAdmin
# - Sélectionnez votre base
# - Onglet "Importer"
# - Choisissez le fichier .sql de votre sauvegarde
# - Cliquez "Exécuter"
# 3. Vérifier wp-config.php
# - Les identifiants de base de données doivent correspondre
# - L'URL du site doit être correcte
5. Sauvegarde avec WP-CLI (serveurs dédiés/VPS)
Pour les administrateurs de serveurs, WP-CLI offre la sauvegarde la plus rapide :
#!/bin/bash
# Script de sauvegarde automatique WordPress
# Ajoutez dans /etc/cron.d/ ou utilisez crontab
SITE_DIR="/var/www/html"
BACKUP_DIR="/home/backups/wordpress"
DATE=$(date +%Y%m%d_%H%M)
RETENTION=14 # Garder 14 jours de sauvegardes
# Créer le dossier de sauvegarde
mkdir -p "$BACKUP_DIR"
# 1. Sauvegarder la base de données
cd "$SITE_DIR"
wp db export "$BACKUP_DIR/db_$DATE.sql" --allow-root
gzip "$BACKUP_DIR/db_$DATE.sql"
# 2. Sauvegarder les fichiers essentiels
tar -czf "$BACKUP_DIR/files_$DATE.tar.gz" \
-C "$SITE_DIR" \
wp-content/uploads \
wp-content/themes \
wp-content/plugins \
wp-config.php \
.htaccess
# 3. Supprimer les anciennes sauvegardes
find "$BACKUP_DIR" -name "db_*.sql.gz" -mtime +$RETENTION -delete
find "$BACKUP_DIR" -name "files_*.tar.gz" -mtime +$RETENTION -delete
# 4. Envoyer vers un stockage distant (optionnel)
# Avec rclone vers Google Drive :
# rclone copy "$BACKUP_DIR/db_$DATE.sql.gz" gdrive:backups-wordpress/
# rclone copy "$BACKUP_DIR/files_$DATE.tar.gz" gdrive:backups-wordpress/
echo "Sauvegarde terminée : $DATE"
Planifier le script
# Éditer le crontab
crontab -e
# Sauvegarde quotidienne à 3h du matin
0 3 * * * /home/scripts/backup-wordpress.sh >> /var/log/wordpress-backup.log 2>&1
# Sauvegarde BDD toutes les 6 heures (pour WooCommerce)
0 */6 * * * cd /var/www/html && wp db export /home/backups/db_$(date +\%H).sql --allow-root && gzip -f /home/backups/db_$(date +\%H).sql
6. Sauvegarde avant les mises à jour
Règle absolue : toujours sauvegarder avant une mise à jour de WordPress, d’un plugin ou d’un thème.
# Script de mise à jour sécurisée
#!/bin/bash
cd /var/www/html
echo "1. Sauvegarde pré-mise à jour..."
wp db export /tmp/backup-pre-update.sql --allow-root
echo "2. Mise à jour WordPress..."
wp core update --allow-root
echo "3. Mise à jour des plugins..."
wp plugin update --all --allow-root
echo "4. Mise à jour de la base de données..."
wp core update-db --allow-root
echo "5. Vérification..."
wp core verify-checksums --allow-root
echo "Mise à jour terminée ! Sauvegarde pré-update dans /tmp/backup-pre-update.sql"
7. Alternatives à UpdraftPlus
| Plugin | Prix | Spécificité |
|---|---|---|
| BlogVault | 89$/an | Sauvegarde incrémentale (ne sauvegarde que les changements), restauration en 1 clic, staging gratuit |
| BackWPup | Gratuit / Pro 69$ | Envoie vers Dropbox, S3, FTP, email. Interface simple |
| Jetpack Backup | Inclus dans Jetpack | Sauvegardes en temps réel (chaque modification), restauration facile |
| All-in-One WP Migration | Gratuit (69$ pour imports > 512 Mo) | Export/import complet en 1 clic, idéal pour migration |
| Duplicator | Gratuit / Pro 49$/an | Sauvegarde + migration + clonage de site |
8. Que faire en cas de piratage
Si votre site est piraté et que vous avez une sauvegarde :
- Ne paniquez pas. Votre sauvegarde est votre filet de sécurité
- Identifiez la date du piratage (quand le site a commencé à mal fonctionner)
- Restaurez une sauvegarde antérieure à cette date
- Immédiatement après la restauration :
- Changez tous les mots de passe (WordPress, FTP, BDD, hébergement)
- Mettez à jour WordPress, tous les plugins et thèmes
- Installez Wordfence et lancez un scan
- Regénérez les clés de sécurité dans wp-config.php
// Regénérer les clés de sécurité
// Allez sur : https://api.wordpress.org/secret-key/1.1/salt/
// Copiez les 8 lignes générées et remplacez-les dans wp-config.php
// Cela déconnecte automatiquement tous les utilisateurs connectés
9. Checklist sauvegarde
- ☐ Plugin de sauvegarde installé (UpdraftPlus recommandé)
- ☐ Planification automatique configurée (quotidienne pour la BDD minimum)
- ☐ Stockage distant configuré (Google Drive, Dropbox ou S3)
- ☐ Première sauvegarde complète effectuée et vérifiée
- ☐ Restauration testée au moins une fois
- ☐ Email de notification activé (pour être alerté en cas d’échec)
- ☐ Sauvegarde manuelle systématique avant chaque mise à jour
- ☐ Rétention configurée (pas de sauvegardes infinies qui remplissent le disque)
Le coût d’une sauvegarde est proche de zéro (plugins gratuits, stockage cloud gratuit). Le coût de la perte d’un site sans sauvegarde peut se chiffrer en centaines de milliers de FCFA de travail perdu, sans compter les ventes manquées et la réputation endommagée. Configurez vos sauvegardes aujourd’hui — pas demain.
Création de site web sur mesure
Pack inclus : conception professionnelle, domaine et hébergement la première année, formation, support 6 mois, accès et code livrés.
À partir de 350 000 FCFA
Pourquoi automatiser les sauvegardes WordPress en 2026
Une sauvegarde manuelle oubliée pendant deux semaines suffit a perdre des commandes, des comptes clients ou un catalogue produit. Sur un VPS Hostinger ou Contabo heberge a Francfort, un crash disque ou une attaque par injection SQL reste une probabilite reelle. L’automatisation transforme cette corvee en filet de securite invisible : la sauvegarde tourne la nuit, se replique hors-site, et vous n’y pensez plus.
Pour un site marchand qui encaisse via Wave, Mixx by Yas ou Orange Money Senegal, perdre la base de donnees une journee equivaut a perdre les transactions reconciliables. Le cout d’une sauvegarde automatisee bien faite tourne autour de 2 EUR (1 312 FCFA) par mois en stockage Backblaze B2, contre des centaines de milliers de FCFA en restauration d’urgence chez un prestataire.
Etape 1 : Choisir la cible de stockage hors-site
La regle d’or 3-2-1 impose trois copies, sur deux supports differents, dont une hors-site. Pour WordPress, la cible hors-site la plus economique en 2026 reste Backblaze B2 (6 USD/To/mois soit environ 5,55 EUR ou 3 640 FCFA), suivie de Cloudflare R2 sans frais d’egress (15 USD/To/mois). Wasabi est une option a 7 USD/To mais facture un minimum de 90 jours.
Creez un bucket Backblaze nomme wp-backups-monsite, generez une cle d’application limitee a ce bucket (Master key interdite), notez le keyID et l’applicationKey. Vous obtenez ainsi un compartiment isole : meme si le serveur est compromis, l’attaquant ne peut pas lister vos autres buckets.
Etape 2 : Installer UpdraftPlus ou WP Time Capsule
Sur le tableau de bord WordPress, allez dans Extensions puis Ajouter, recherchez UpdraftPlus, installez et activez. Ouvrez Reglages puis UpdraftPlus Backups, onglet Reglages. Definissez la planification fichiers sur Quotidien et la planification base de donnees sur Toutes les 12 heures, conservez 14 sauvegardes.
wp plugin install updraftplus --activate
wp option update updraft_interval daily
wp option update updraft_interval_database twicedaily
wp option update updraft_retain 14
Sortie attendue : Success: Plugin updated/activated. et trois lignes Success: Updated option. Si vous voyez Error: Could not create directory, verifiez les droits sur wp-content/updraft (chmod 755, owner www-data).
Etape 3 : Connecter Backblaze B2 a UpdraftPlus
Dans l’onglet Reglages d’UpdraftPlus, choisissez Backblaze comme stockage distant. Collez le keyID dans Account ID, l’applicationKey dans Application Key, et le nom du bucket. Cliquez Tester les reglages Backblaze : un fichier updraft-test-XXXXX.txt est cree puis supprime.
Si le test echoue avec 401 unauthorized, votre cle est revoquee ou n’a pas la permission writeFiles. Si vous voyez 503 service unavailable, attendez 30 secondes puis retestez. Apres validation, lancez une premiere sauvegarde manuelle Backup Now en cochant Include database et Include files, puis verifiez que le ZIP apparait dans le bucket Backblaze.
Etape 4 : Sauvegarde par cron systeme (alternative SSH)
Si vous gerez un VPS, evitez la dependance a un plugin et utilisez wp-cli plus rclone. Installez rclone : curl https://rclone.org/install.sh | sudo bash, puis configurez Backblaze avec rclone config, type b2, collez keyID et applicationKey.
#!/bin/bash
DATE=$(date +%Y%m%d-%H%M)
cd /var/www/monsite
wp db export /tmp/db-$DATE.sql --add-drop-table
tar -czf /tmp/files-$DATE.tar.gz wp-content/uploads wp-content/themes wp-content/plugins
rclone copy /tmp/db-$DATE.sql b2:wp-backups-monsite/db/
rclone copy /tmp/files-$DATE.tar.gz b2:wp-backups-monsite/files/
rm /tmp/db-$DATE.sql /tmp/files-$DATE.tar.gz
Enregistrez ce script dans /usr/local/bin/wp-backup.sh, rendez-le executable (chmod +x), puis ajoutez au crontab root : 15 3 * * * /usr/local/bin/wp-backup.sh >> /var/log/wp-backup.log 2>&1. La sauvegarde tourne tous les jours a 3h15. Verifiez le log apres 24h : vous devez voir Transferred: ... 100%.
Etape 5 : Tester une restauration reelle
Une sauvegarde non testee n’est pas une sauvegarde. Une fois par mois, restaurez sur un environnement de staging (sous-domaine ou conteneur Docker local). Telechargez le dernier ZIP UpdraftPlus, deployez WordPress vide, importez le fichier dans Restore et choisissez tous les composants.
Si la restauration echoue avec Maximum execution time exceeded, augmentez max_execution_time a 300 dans php.ini. Si la base ne se restaure pas, verifiez que le prefixe de table (souvent wp_) correspond a celui de wp-config.php. Une restauration complete sur un site de 2 Go prend en moyenne 15 minutes.
Etape 6 : Surveillance et alertes
Ajoutez une notification Healthchecks.io gratuite : creez un check nomme wp-backup avec une cadence de 24h plus 1h de grace. Modifiez la derniere ligne du script cron pour pinger le check apres succes :
curl -fsS -m 10 --retry 5 -o /dev/null https://hc-ping.com/VOTRE-UUID
Si la sauvegarde echoue ou si le serveur est inaccessible, Healthchecks vous envoie un email ou un webhook Slack/Telegram. Vous detectez ainsi une panne silencieuse avant qu’elle ne devienne un incident.
Etape 7 : Chiffrement des sauvegardes sensibles
Si vos sauvegardes contiennent des donnees personnelles (clients, factures), chiffrez-les avant transfert. Utilisez age, plus simple que GPG : age-keygen -o ~/.config/age/key.txt genere une paire de cles. Modifiez le script :
tar -czf - wp-content/uploads | age -r age1xyz... > /tmp/files-$DATE.tar.gz.age
rclone copy /tmp/files-$DATE.tar.gz.age b2:wp-backups-monsite/files/
Conservez la cle privee hors du serveur (gestionnaire de mots de passe, cle USB chiffree). Sans elle, meme un bucket Backblaze compromis ne livre rien d’exploitable. Pour un site WooCommerce avec donnees clients, c’est une obligation pratique.
Etape 8 : Verification mensuelle et journal
Tenez un fichier backup-journal.md dans un repo Git prive ou un Google Doc. Notez chaque mois la date du test de restauration, la taille du dernier ZIP, le temps de restauration mesure, et tout incident. Ce journal sert de preuve de diligence en cas d’audit (RGPD, contrat client) et permet de reperer une derive : si la sauvegarde double de taille en un mois sans raison, vous avez peut-etre une attaque ou un plugin qui spam la base.
Pour étoffer le tableau sur la securisation cote serveur, consultez notre guide securiser WordPress contre les attaques courantes. Pour le pendant cote infrastructure, voyez configurer un VPS Hostinger pour WordPress.