8768 sujets

Développement web côté serveur, CMS

Bonsoir à tous,

Les fichiers de mon site commencent à être assez lourd (les js principaux font plus de 100 ko ...)

Aussi, je me suis dis que ce serait une bonne idée de commencer à les minifier, au moins le js et css pour commencer.

Mes besoins :

- Je ne veux pas d'outil en ligne, ce serait perdre beaucoup de temps que de copier coller à chaque fois ma version de développement
- Je ne veux pas non plus de logiciel sur le pc, cela revient quasiment au même
- Je veux un éditeur de texte simple style notepad ou sublimeText donc pas complètement d'accord pour en changer ( à part si c'est la seul solution )
- Je ne veux pas minifier au chargement des fichiers en PHP, on ne profite pas de la mise en cache optimale, ce n'est pas forcément très intéressant

Avec tous ces points j'ai fais marcher ma tête, et je me suis dis que le plus judicieux serait de faire tourner une tache cron, une fois par semaine, checker si la version du fichier a changé, si oui, on le minify.

La où ça coince, c'est pour le code de minification..

J'en est testé de nombreux, aucun n'a réussi à rendre mon site fonctionnel. D'ailleurs le seul site qui y est parvenu à la perfection est http://jscompress.com/.

Je me suis donc penché sur la méthode qu'ils utilisent, mais c'est beaucoup trop complexe et en node.js..

Donc ma question est simple : Connaissez-vous un script/ class php qui puisse minifier assez aisément au moins les fichiers JS/CSS ?

D'autre part, je vais bientôt acquérir un serveur dédié, le plus beau serait que dès que j'envoi un fichier par ftp, il comprenne qu'il faut le minifier en fonction de son extention.

Merci pour vos retours, et bonne soirée !

Kevin.
Bonsoir,
kevinlourenco a écrit :
Donc ma question est simple : Connaissez-vous un script/ class php qui puisse minifier assez aisément au moins les fichiers JS/CSS ?

Ce qui veut dire que c'est le serveur qui va se taper le boulot... Alors que tout l'intérêt du truc est de compiler le code au moment de sa création.

Il faudrait bien plutôt utiliser un task runner. Perso je fais tout avec Gulp : je code, Gulp surveille mes modifications et compile à la volée à chaque enregistrement. Les fichiers sont organisés dans des dossiers sources et des dossiers de destination.

- Un tutoriel sur ce forum
- Un exemple de fichier de configuration Gulp

Si vous cherchez la simplicité il existe des plugins pour Sublim Text (et autres) permettant de minifier le code css/js avec une simple combinaison de touche. Je ne les utilise plus du tout depuis deux ans, de mémoire ça devait ressembler à un plugin de ce genre : Minify for Sublime Text. À installer via le terminal de Sublime Text of course.

kevinlourenco a écrit :
J'en {ai} testé de nombreux, aucun n'a réussi à rendre mon site fonctionnel. D'ailleurs le seul site qui y est parvenu à la perfection est http://jscompress.com/.

Curieuse remarque... N'y aurait-il pas eu des points-virgules oubliés par hasard ? En effet, s'ils sont facultatifs en js - puisqu'un retour à la ligne suffit - gare aux erreurs à la compilation. D'où des outils de contrôle tels que JSHint, qui vérifient de conformité du code avant compilation. Là encore, cette tâche peut-être paramétrée via un plugin Gulp et, là encore, il existe un plugin pour Sublime Text.
Modifié par Olivier C (18 May 2016 - 03:11)