Mise en situation
Vous êtes-vous déjà retrouvez dans cette situation dont les développeurs web sont familiers ? Ayant conçu votre site en local sur votre machine, avec ou sans CMS, et il vous faut maintenant uploader (ou téléverser pour les puristes de la langue française) tous ces fichiers sur le serveur d’hébergement. Vous ouvrez donc votre client FTP favori et lancez l’opération… Il ne vous reste plus qu’à attendre patiemment qu’elle se termine. Cependant avec des CMS tels que WordPress comprenant plus d’un millier de fichier, l’upload (ou le téléversement) peut prendre un certain temps, ou un temps certain c’est selon…
Et là vous vous dîtes que la vie serait beaucoup plus facile si l’on pouvait tout simplement envoyer un ZIP du site par FTP et le décompresser sur le serveur. A ce moment vous risquez de déchanter en vous rendant compte que la plupart des clients FTP n’offrent pas cette fonctionnalité. Eh bien c’est ici que notre astuce intervient.
PCLZIP
Pclzip est une librairie PHP proposée par le site PhpConcept. Cette librairie permet de compresser ou de décompresser des dossiers ou archives au format ZIP.
- Commencez donc par télécharger la dernière version de pclzip sur ce lien.
- Vous obtenez une archive ZIP que vous allez décompresser.
- A l’intérieur du dossier vous récupérez le fichier pclzip.lib.php (bien sûr, après avoir lu attentivement la licence GNU et le fichier Readme comme tout développeur consciencieux…).
- Compressez les fichiers que vous souhaitez envoyer par FTP, par exemple site.zip.
- Créez un fichier extract.php avec le contenu suivant :
<?php
require_once('pclzip.lib.php');
$archive = new PclZip(site.zip'); //METTRE LE VRAI NOM DU ZIP ;)
//Extrait dans le repertoire courant.
if ($archive->extract() == 0) {
die("Error : ".$archive->errorInfo(true));
}
- Uploadez / téléversez les trois fichiers (site.zip, extract.php et pclzip.lib.php) sur votre FTP :
- Exécuter enfin le script en saisissant « l’adresse_du_site/extract.php ».
En revenant sur le FTP vous aurez la joie de constater que les fichiers ont bien été décompressés.
N’oubliez pas de supprimer les fichiers extract.php, pclzip.lib.php et l’archive une fois l’opération terminée.
Voilà, nous espérons que ce petit trick vous fera gagner du temps.