Fork me on GitHub

Rapport de message :*
 

Et si l'on faisait un peu d'optimisation ?

Titre du sujet : Et si l'on faisait un peu d'optimisation ?
par babouille sur 25/10/2017 14:56:30

Bon, je vais commencer ce topic des optimisations par celle concernant la page HTML qui est affichée sur les navigateurs quand on appelle une page de votre site xoops. Bref, plutôt que d’avoir des dizaines et des dizaines de lignes à afficher, le mieux est de tout concentrer, minifier si vous préférez.

Il faut savoir, les vieux xoopsiens le savent lol, que je code avec deux mains gauches et que je fais souvent l’impasse sur les règles de xoops pour n’en faire qu’à ma tête dans mon code. Donc, avant toute chose, pensez à tester en local ou sur un site de tests en ligne avec de le mettre en prod.

Sur thesiteoueb (Xoops 2.5.7.3), cela permet d’afficher la page d’accueil sur moins de 50 lignes au lieu de 650 ce qui représente un petit gain d’affichage même s’il n’y a pas que cela qui soit pris en compte.

Il faut aller, pour commencer dans le fichier class => smarty => plugin et dans outputfilter.trimwhitespace.php après
Citation :
$source = trim(preg_replace('/((?<!\?>)\n)[\s]+/m', '\1', $source));

Ajouter
Citation :
$source = preg_replace('/[\t\n\r\0\x0B]/', '', $source);
$source = preg_replace('/([\s])\1+/', ' ', $source);

(Petit bug avec code et les antislashs donc je quote lol)

Ensuite dans votre mainfile, il faut ajouter un « interrupteur » qui permettra ou non d’activer la fonctionnalité (je l’ai mis juste au-dessus de // Database)
// active ou désactive la compression de la page HTML (1 ou 0)
    
define('COMPRESS_HTML''0' );


Enfin, dans le fichier header.php à la racine vous devez ajouter juste après
$xoopsTpl =& $xoTheme->template;


Le code suivant
if (COMPRESS_HTML == 1){
    
$xoopsTpl->load_filter('output''trimwhitespace');
    }


Bon, si vous avez des suggestions ou des améliorations, je suis preneur, tout en sachant que je cherche aussi à « compresser » les scripts dans le theme.html, mais sans pour autant virer le script de la compatibilité avec Internet Explorer 9

Ah, il existe une alternative qui consiste a ajouter <{strip}> au début de votre template de module ou bloc et <{/strip}> à la fin et qui semble tout aussi fonctionnelle, quoique plus longue à mettre en place.

Il n’y a plus qu’à !




Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

56 Personne(s) en ligne (39 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 56 | Plus ...