Bonjour,
On vient de me poser une colle aujourd'hui: je viens de commencer un nouveau job d'intégrateur et une des taches que l'on m'a confié est la suivante: faire le "ménage" dans les images et les css du site; virer du serveur toutes les images qui ne sont plus utilisées, et nettoyer les css des classes inusitées...

Pffff....

Vous avez une idée pour savoir quelles sont les images qui ne sont plus utilisées ? Je vois bien la méthode empirique qui consiste avec webdev de lister toutes les images sur chaque pages et de comparer avec la liste des images présentes dans mon répertoire, mais comme en l'occurrence il y a un gros nb de pages... Vous ne connaitriez pas une méthode + rapide ?

Et ... idem pour les css ? Un début de piste ???

Merci d'avance

Romain
Salut,

dans la webdevbar, tu as dans le menu images 'find broken images', mais il faut quand même que tu te fasses toutes les pages de ton site, je ne sais pas si ça marche pour les images dans le css mais ça peut être un début.
Hello,

Suivant l'arborescence de ton site, si les images sont toutes dans le même dossier, tu peux utiliser un apsirateur d'image (Snagit le fait sur toutes les pages de ton site en une passe) il ne te restera plus qu'à remplacer le dossier sur ton serveur.

Pour le css, bah bon courage Smiley lol
roml a écrit :
Bonjour,
On vient de me poser une colle aujourd'hui: je viens de commencer un nouveau job d'intégrateur et une des taches que l'on m'a confié est la suivante: faire le "ménage" dans les images et les css du site; virer du serveur toutes les images qui ne sont plus utilisées, et nettoyer les css des classes inusitées...
Pffff....
Vous avez une idée pour savoir quelles sont les images qui ne sont plus utilisées ? Je vois bien la méthode empirique qui consiste avec webdev de lister toutes les images sur chaque pages et de comparer avec la liste des images présentes dans mon répertoire, mais comme en l'occurrence il y a un gros nb de pages... Vous ne connaitriez pas une méthode + rapide ?
Et ... idem pour les css ? Un début de piste ???
Merci d'avance Romain


Bonjour,
avec un tout petit peut de courage tu te fais un PHP qui lit tous les PHP
et là, ligne par ligne tu cherche les balises img
dans src tu extrait src="ccccccc/mmmmmmmmmmm.jpg"
et tu le mets dans une mini Mysql cle unique
ceux non présent ne sont plus utilse Smiley biggrin

Nota tu n'oublies pas les URL des feuilles de style ! Smiley eek

Je réédites pour te mettre sur la piste .......

$data = glob('xxxx/*.php'); 
$LesFichiers = array();
$LaSuite = array();
$LesX = array(); 
$Nbr=0;
$i = 0;
$combien=0;
foreach( $data as $filename)
  {
    if (is_file($filename) )
     {
       $LesFichiers[$i] = $filename;
       $work= $LesFichiers[$i];
      //============a chaque php le lire=================
      $wwork=file($LesFichiers[$i]);
      $nbli=count($wwork)-1;
      $C_ou=0;
/* ON ENTRE DANS LE TEXTE DE CHAQUE FICHIER */
      for($zx=0;$zx<=$nbli;$zx++)
       {
          $pouf=strpos($wwork[$zx], "<img") ;
            if ($pouf === FALSE ) {$XX=0;//===on ne fait rien}
                 else
                  {

                   $combien=$combien+1;
                  }
        $LaSuite[$C_ou]=$wwork[$zx];
        $C_ou=$C_ou+1;
     }

   }
 }


Hum le "===" de false c'est quand la réponse est 0 si le terme recherché est en tête de ligne Smiley biggrin
Modifié par FoxLeRenard (26 Feb 2009 - 19:12)
Salut,

roml a écrit :
je viens de commencer un nouveau job d'intégrateur et une des taches que l'on m'a confié est la suivante: faire le "ménage" dans les images et les css du site; virer du serveur toutes les images qui ne sont plus utilisées, et nettoyer les css des classes inusitées...
Un grand classique : le petit nouveau se charge des boulots de "mer.." en attente ! Smiley lol

Puisque tu parles de Webdev je ne suis pas sûr que tu utilises PHP mais c'est aussi le langage que j'emploierais : pour les images il suffit d'alimenter un array en listant leur nom depuis le(s) répertoire(s) où elles sont stockées (tu peux te baser sur ce sujet) puis de lister toutes les pages php, html, htm, etc... et pour chacune d'utiliser une regexp de la mort qui tue pour alimenter un autre array des images réellement utilisées. Il faudra aussi un traitement spécial pour les images du CSS. Au final il n'aura plus qu'à comparer.

Pour les classes inutilisées idem : une autre regexp de la mort qui tue ! Smiley biggol

Ou alors tu fais ça "à la main" en effectuant plusieurs recherches dans le contenu de tes pages à l'aide de Notepad++ ou PsPad...

Un boulot de "mer.." je te disais !
Bonjour...

Je pense que toutes les méthodes citées ci-dessus sont bonnes.

Après, histoire d'apporter ma pierre à l'édifice, je te dirais de voir d'abord quel langage et quel os est utilisé pour le site coté serveur, histoire de savoir par quel langage utiliser si tu choisis d'écrire un script maison.

Si comme dans la majeur partie des cas tu te trouves sur un serveur Unix, j'aurais tendance à te conseiller un shell script, un peu roots certes, mais efficace et le plus sur (juste mon avis) en cas de réutilisation à long terme.

Petit conseil, si tu t'orientes dans cette voie, fais valider ton taf avant d'envoyer la sauce, histoire de prévenir le coup de boule façon Zidane que te mettra ton chef si t'effaces toutes les images et toutes css du serveur...

Quoi que tu fasses, tiens nous au courant, je suis curieux que tu nous dises quelle méthode tu vas employer.
Salut,

Pour les images manquantes ou en trop, tu peux te baser sur des outils du genre xenu link sleuth (je n'ai pas d'actions, c'est le seul auquel je pense Smiley smile ) et pour les css il y a une extension firefox qui s'appelle dust-me selectors qui pourrait t'aider.
Merci pour vos réponses !

La question des images a été réglée par un développeur qui comme vous le préconisiez, a créé un script. Bien plus rapide que moi et ma façon "a la mano" qui m'aurait pris des heures.... Et comme je ne comprend pas grand chose a php... j'ai du mal a comprendre les réponses dites plus haut

Pour ce qui est des css, j'ai installé l'extension. Je pense qu'il faut apprendre a m'en servir car la liste des css qui sortent sont très longues. J'ai essayé sur mon site perso et cela m'a sorti des classes qui sont bel et bien utilisées... mais pas dans la page sur laquelle j'ai fait le test

Merci pour vos réponses en tout cas !!!
Hum... Tu ne pourrais pas, justement par un script, chercher dans tous les contenus des attributs class (attention, si tu cherches la classe toto, à ne pas te contenter de chercher «class="toto"», mais bien aussi si les chaînes de caractères « toto"», « toto » et «"toto » sont présentes: dans ce cas, les expressions rationnelles sont tes amies !)
Modifié par Gilles (27 Feb 2009 - 11:45)