Partage
  • Partager sur Facebook
  • Partager sur Twitter

Page statique intégrant des constantes modifiables

Conserver le coté statique tout en pouvant changer des valeurs types

Sujet résolu
    24 mai 2024 à 16:39:41

    Bonjour à toutes et à tous,

    Je créer mon site web en HTML et CSS, sans framework, CMS, ni générateur de site statique. J'essai de limiter l'usage du Javascript pour optimiser au maximum le poids des pages.

    Dans ce site, j'ai plusieurs constantes qui sont utilisé ça et là : la version du site, l'adresse de contact, ma disponibilité, etc. Pour pouvoir utiliser ces constantes dans le site tout en ayant l'opportunité de les modifier j'ai créer un fichier 'common.js' contenant toutes ces constantes communes.

    Ca marche bien. Mais je me demande si je ne peux pas optimiser cette partie là en ne chargeant ce script que en local avant de l'envoyer au serveur. Dit autrement, j'aimerai automatiser le changement des constantes dans le code HTML, de manière à éviter de charger 'common.js' à chaque page, et gagner quelques kB.


    Est-ce que cela vous parait faisable ? Si oui, comment ? J'imagine que c'est le rôle de certain générateurs de site statique mais est-ce que je peux m'en passer ?



    Merci d'avance pour vos réponses,


    • Partager sur Facebook
    • Partager sur Twitter
      25 mai 2024 à 10:54:20

      « J'essai de limiter l'usage du Javascript pour optimiser au maximum le poids des pages »

      Google construit ses pages en JS, pour optimiser le poids des pages...

      • Partager sur Facebook
      • Partager sur Twitter
        26 mai 2024 à 19:44:45

        Dans mon cas particulier, le fichier 'common.js' ajoute 1,2 kB au chargement de la page. C'est pas grand chose certes mais je trouve le sujet de l'éco-conception web intéressant et j'aimerai aller aussi loin que possible dans la démarche. Le JS a tendance également à consommer davantage de CPU coté client que du HTML ou CSS. Sources : Alex so yes, Green IT

        J'ai découvert que la fonctionnalité que je recherchais se trouvait dans les préprocesseurs HTML comme Pug mais ça va nécessiter du temps de prise en main car c'est un nouveau langage et il va falloir tout ré-écrire. Je vais tester et voir.

        Si quelqu'un a d'autres pistes, je suis toujours preneur.

        -
        Edité par QuentinPlsn 27 mai 2024 à 8:43:18

        • Partager sur Facebook
        • Partager sur Twitter
          27 mai 2024 à 12:15:02

          Pug, ç'est côté du serveur !

          Ça ne changera rien au poids des pages.

          Ton script JS est mis en cache chez le client et n'est donc chargé qu'une fois et réutilisé pour les pages suivantes. (tant qu'il n'est pas sorti du cache, bien sûr).

          • Partager sur Facebook
          • Partager sur Twitter
            27 mai 2024 à 17:26:55

            OK ça veut dire que tu ne peux pas faire un code sous Pug et le traduire en HTML avant de l'envoyer vers le serveur ?

            Sinon l'autre piste que j'aurais ce serais de changer les constantes que je veux changer avec un script d'automatisation (RPA).
            • Partager sur Facebook
            • Partager sur Twitter
              27 mai 2024 à 19:22:29

              « OK ça veut dire que tu ne peux pas faire un code sous Pug et le traduire en HTML avant de l'envoyer vers le serveur ? »

              Avant de l'envoyer au client, tu veux dire ? Pug renvoie déjà lui-même du HTML...

              « Sinon l'autre piste que j'aurais ce serais de changer les constantes que je veux changer avec un script d'automatisation (RPA) »

              L'autre piste et de se calmer sur le poids des pages. Et si vraiment ça t'inquiète tant que ça, je te l'ai dit : JS est Le langage de script côté client, et tu peux renouveler des éléments de la page via des appels AJAX (via fetch), au détriment cependant du référencement.

              -
              Edité par Domi65 27 mai 2024 à 19:24:29

              • Partager sur Facebook
              • Partager sur Twitter
                28 mai 2024 à 11:51:55

                Oui, en fait je voyais la chose en mode : 1) j'écris le code en Pug pour pouvoir utiliser des variables ; 2) je convertis les pages .pug en pages .html statiques ; et 3) je met les pages (HTML et CSS) en ligne (c'est ce que j'entendais par 'envoyer vers le serveur')

                "L'autre piste et de se calmer sur le poids des pages" - je viens d'inventer l'anorexie numérique :p ... Sans rire après c'est la démarche qui m'intéresse avant tout, je n'ai pas de contrainte d'efficacité pour ce projet, mais j'entends bien ce que tu dis.

                • Partager sur Facebook
                • Partager sur Twitter
                  29 mai 2024 à 10:58:42

                  « j'écris le code en Pug pour pouvoir utiliser des variables ; 2) je convertis les pages .pug en pages .html statiques ; et 3) je met les pages (HTML et CSS) en ligne (c'est ce que j'entendais par 'envoyer vers le serveur') »

                  Donc là, on ne parle plus de gagner quelques kO.

                  Ce que tu proposes, c'est exactement ce que font les langages côté serveur, que ce soit PHP, NodeJS ou n'importe quel autre langage

                  • Partager sur Facebook
                  • Partager sur Twitter
                    29 mai 2024 à 14:31:09

                    Si je parlais de gagner quelques kO en faisant comme ça puisque les constantes seront directement intégrées dans le code HTML des pages sur mon ordi, ce qui évite de charger un fichier JS. Mais je vais laisser tomber et rester sur mon idée de base avec le fichier 'common.js'.

                    Merci pour ton temps ! Bonne journée
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Page statique intégrant des constantes modifiables

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown