Posso simplesmente adicionar diretórios à minha instalação do Discourse?

Então, eu estava adicionando uma fonte local ao meu site. Em um arquivo CSS de tema, coloquei:

@font-face {
  font-display: swap; /* Verifique https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display para outras opções. */
  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+ */
}

No meu arquivo HTML, coloquei:

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

Então salvei, atualizei meu site, visualizei o código-fonte da página e cliquei no URL /fonts/montserrat-v26-latin-italic.woff2, que me levou a:
https://forums.mysite.com/fonts/montserrat-v26-latin-italic.woff2

Fui recebido com uma página Nginx de “404 Not Found”. Pensei: “Ah, espere, eu não tenho uma pasta de fontes no meu diretório Discourse no meu VPS.” Achei estranho que ele não tenha simplesmente puxado da pasta de fontes do meu tema. Então, adicionei uma pasta “fonts” em /var/discourse/shared/standalone/. Coloquei meu arquivo de fonte lá, atualizei a página do navegador novamente, ainda com erro 404. Posso simplesmente adicionar pastas ao Discourse assim ou preciso reiniciar meu servidor para que tenha efeito ou o quê?

Não tenho certeza sobre a adição de diretórios, mas em relação ao uso de arquivos de fonte em temas, existe um método integrado que você pode tentar. Se você estiver editando os arquivos do tema manualmente, poderá adicionar a fonte ao diretório /assets do tema e, em seguida, adicionar uma entrada para ela em about.json como esta:

{
  // outras propriedades
  "assets" : {
    "meu-identificador-de-fonte": "assets/meu-arquivo-de-fonte.woff2",
  }
}

Em seguida, em @font-face, você pode referenciá-lo com src: url($meu-identificador-de-fonte);


Se você estiver apenas usando o editor de temas na interface de configurações, acredito que você possa adicioná-lo à seção de uploads, colocar o identificador que deseja usar no campo Nome da variável SCSS e, em seguida, referenciá-lo da mesma forma no SCSS.

5 curtidas

Então, o código de assets ficaria assim para cada fonte que eu usar?

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

EDIT: Isso funcionou. O URL direto /assets/ para a fonte ainda mostra um 404, mas a fonte está funcionando na página, então :man_shrugging:

Nas configurações do site de administração, você pode alterar a fonte para Montserrat.
fonte base
fonte de título


Se você quiser adicionar uma fonte que não está no núcleo, mas está no Google Fonts, você pode usar este componente de tema:

5 curtidas

Sim, a Montserrat é para uma página diferente. Agradeço, no entanto!

O problema com as fontes do Google é que elas deixam as páginas lentas ao carregar mais de 200 caracteres, a maioria dos quais as pessoas nunca usam.

1 curtida

Não, não deixa — quando você usa no máximo 3-4 conjuntos de fontes (e apenas os pesos necessários) como deveria.

2 curtidas

Tinha uma pergunta sobre isto: Então, quando você Visualiza o código-fonte da página de fóruns do seu (de qualquer pessoa) site Discourse e procura por “font”, ele mostra um monte delas. Todas essas fontes são carregadas mesmo que você escolha apenas 1-2 durante o assistente de configuração? Se sim, gostaria que apenas a que eu escolhi fosse carregada.

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