Puis-je simplement ajouter des répertoires à mon installation Discourse ?

J’ai donc ajouté une police locale à mon site. Dans un fichier CSS de thème, j’ai mis :

@font-face {
  font-display: swap; /* Vérifiez https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display pour d'autres options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/montserrat-v26-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

Dans mon fichier HTML, j’ai mis :

<link rel="preload" href="/fonts/montserrat-v26-latin-italic.woff2 " as="font" type="font/woff2" crossorigin="">

J’ai ensuite sauvegardé, rafraîchi mon site, affiché le code source de la page et cliqué sur l’URL /fonts/montserrat-v26-latin-italic.woff2, ce qui m’a amené à :
https://forums.mysite.com/fonts/montserrat-v26-latin-italic.woff2

J’ai été accueilli par une page Nginx “404 Not Found”. Je me suis dit : “Ah, attendez, je n’ai pas de dossier de polices dans mon répertoire Discourse sur mon VPS.” J’ai trouvé étrange qu’il ne le récupère pas simplement du dossier de polices de mon thème. J’ai donc ajouté un dossier “fonts” à /var/discourse/shared/standalone/. J’y ai mis mon fichier de police, j’ai rafraîchi la page du navigateur, toujours une erreur 404. Puis-je simplement ajouter des dossiers à Discourse comme ça ou dois-je relancer mon serveur pour qu’il prenne effet ou quoi ?

Je ne suis pas sûr pour l’ajout de répertoires, mais concernant l’utilisation de fichiers de polices dans les thèmes, il existe une méthode intégrée que vous pourriez essayer. Si vous modifiez les fichiers de thème manuellement, vous pouvez ajouter la police au répertoire /assets du thème, puis y ajouter une entrée pour celle-ci dans about.json comme ceci :

{
  // autres propriétés
  "assets" : {
    "my-font-identifier": "assets/my-font-file.woff2",
  }
}

Ensuite, dans le @font-face, vous pouvez y faire référence avec src: url($my-font-indentifier);


Si vous utilisez simplement l’éditeur de thème dans l’interface des paramètres, je crois que vous pouvez l’ajouter à la section des téléchargements, mettre l’identifiant que vous souhaitez utiliser dans le champ Nom de variable SCSS, puis y faire référence de la même manière dans le SCSS.

5 « J'aime »

Alors, le code des assets ressemblerait-il à ceci pour chaque police que j’utilise ?

  "assets": {
    "montserrat-reg": "assets/montserrat-v26-latin-regular.woff2",
    "montserrat-ita": "assets/montserrat-v26-latin-italic.woff2"
},

EDIT : Ça a fonctionné. L’URL directe /assets/ vers la police affiche toujours une erreur 404, mais la police fonctionne sur la page, alors :upside_down_face:

Dans les paramètres du site d’administration, vous pouvez changer la police pour Montserrat.
police de base
police de titre


Si vous souhaitez ajouter une police qui n’est pas dans le cœur mais qui est dans Google Fonts, vous pouvez utiliser ce composant de thème :

5 « J'aime »

Ouais, la Montserrat est pour une autre page. J’apprécie quand même !

Le problème avec les polices Google, c’est qu’elles ralentissent les pages en chargeant plus de 200 caractères, dont la plupart ne sont jamais utilisés par les gens.

1 « J'aime »

Non, ce n’est pas le cas — lorsque vous utilisez au maximum 3-4 jeux de polices (et uniquement les graisses nécessaires) comme vous le devriez.

2 « J'aime »

J’avais une question à ce sujet : Donc, lorsque vous affichez la source de la page des forums de votre (ou de n’importe quel) site Discourse, et que vous recherchez « font », vous en voyez un tas. Ces polices sont-elles toutes chargées même si vous n’en choisissez qu’une ou deux lors de l’assistant d’installation ? Si oui, j’aimerais que seule celle que j’ai choisie soit chargée.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.