Contact Form 7: conserver les fichiers uploadés sur votre serveur

#Site web #

contact-form7-conserver-file-upload

Dans ce tutoriel, nous montrerons comment conserver les fichiers uploadés par les utilisateurs sur votre serveur lorsque ces derniers utilisent un formulaire d'upload du plugin contact form 7.

Par défaut Contact form 7 utilise votre serveur de manière ponctuel avant l'envoie des fichiers uploadés par mail. En effet après envoie du mail et des fichiers en pièces jointes, contact form 7 va sont purement et simplement supprimer ces derniers du serveur.

Problématique:

On ne peut rarement envoyer des mails dont le poids est supérieur à 5Mo alors comment conserver les fichiers uploadés de poids plus importants?

La seule solution consisterait à conserver ces fichiers uploader sur notre serveur :)

1. La méthode par le plugin

Heureusement pour les novices, un plugin existe et nous permets de recuperer nos fichier directement depuis l'interface d'administration, il s'agit de :

Contact Form DB

Dans les réglages, vérifier que la capture sur contact form 7 est à la valeur vrai:

contact-form7-conserver-file-upload-1

 

Une fois que vos formulaires seront remplis, vous pourrez aller les chercher directement sur votre pannel d'administration:

contact-form7-conserver-file-upload-3

 

2. La méthode par le code

Rendez vous sur le dossier du plugin contact form 7, et trouver le fichier file.php:

Chemin:

/httpdocs/wp-content/plugins/contact-form-7/modules/file.php

Ensuite vous allez commenter ces 2 lignes (ajouter un double slash en début de ligne: "//")

#line 160
//	$uploads_dir = wpcf7_maybe_add_random_dir( $uploads_dir );

#line 354
//			wpcf7_rmdir_p( path_join( $dir, $file ) );

La ligne 354 est la ligne responsable de la suppression.

La ligne 160 créée un dossier parent par fichier automatiquement et de nom aléatoire.

 

C'est tout, sauvegardez et récupérez ensuite les fichiers uploadés à ce chemin:

/httpdocs/wp-content/uploads/wpcf7_uploads

 

Bonus: cette méthode nécessite de se connecter en ftp pour récupérer vos fichiers uploadés, mais on peut l’éviter. Vous pouvez synchroniser votre dossier wpcf7_uploads avec votre compte Dropbox!!

Synchroniser wpcf7_uploads avec Dropbox:

Pour ce faire téléchargez ce plugin:

WordPress Backup to Dropbox

Enfin cocher wpcf7_uploads;

contact-form7-conserver-file-upload-4