Discourse 설치에 단순히 디렉터리를 추가해도 될까요?

사이트에 로컬 폰트를 추가하고 있었습니다. 테마의 CSS 파일에 다음 내용을 넣었습니다:

@font-face {
  font-display: swap; /* 다른 옵션에 대해서는 https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display 를 확인하세요. */
  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+ */
}

HTML 파일에는 다음과 같이 작성했습니다:
<link rel="preload" href="/fonts/montserrat-v26-latin-italic.woff2 " as="font" type="font/woff2" crossorigin="">

그리고 저장한 후 사이트를 새로고침하고, 페이지 소스를 확인한 뒤 /fonts/montserrat-v26-latin-italic.woff2 URL을 클릭했습니다. 그 결과 다음 주소로 이동했습니다:
https://forums.mysite.com/fonts/montserrat-v26-latin-italic.woff2

Nginx의 “404 Not Found” 페이지가 나타났습니다. "아, 내 VPS의 Discourse 디렉토리에 fonts 폴더가 없었구나"라고 생각했습니다. 다만, 테마 안의 fonts 폴더에서 가져오지 않는 것이 이상했습니다. 그래서 /var/discourse/shared/standalone/ 경로에 “fonts” 폴더를 추가하고 폰트 파일을 넣었습니다. 브라우저 페이지를 다시 새로고침해도 여전히 404 오류가 발생했습니다. 이렇게 Discourse에 폴더를 단순히 추가할 수 있는 건가요? 아니면 적용되려면 서버를 재시작해야 하나요? 아니면 다른 조치가 필요한 건가요?

디렉터리 추가는 확실하지 않지만, 테마에서 폰트 파일을 사용하는 것과 관련하여 시도해 볼 수 있는 내장 메서드가 있습니다. 테마 파일을 수동으로 편집하는 경우, 폰트를 테마의 /assets 디렉터리에 추가한 다음, 다음과 같이 about.json에 항목을 추가할 수 있습니다:

{
  // other properties
  "assets" : {
    "my-font-identifier": "assets/my-font-file.woff2",
  }
}

그런 다음 @font-face에서 src: url($my-font-indentifier);를 사용하여 참조할 수 있습니다.


설정 인터페이스의 테마 편집기만 사용하는 경우, 업로드 섹션에 추가하고 SCSS var name 필드에 사용하려는 식별자를 입력한 다음, SCSS에서 동일한 방식으로 참조할 수 있다고 생각합니다.

그러면 제가 사용하는 각 폰트에 대해 에셋 코드가 이렇게 되어야 하나요?

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

수정: 그게 잘 동작했습니다. 폰트 파일로 직접 /assets/ URL을 호출하면 여전히 404가 뜨지만, 페이지에서는 폰트가 정상적으로 표시되네요, :man_shrugging:

관리자 사이트 설정에서 폰트를 Montserrat로 변경할 수 있습니다.
기본 폰트
제목 폰트


코어에는 없지만 Google Fonts에 있는 폰트를 추가하려면 이 테마 구성 요소를 사용할 수 있습니다:

네, Montserrat는 다른 페이지에 사용된 거예요. 그래도 고마워요!

Google 폰트의 문제는 글꼴 파일을 로드하면서 페이지 로딩을 느리게 만든다는 거예요. 200자 이상의 문자를 로드하는데, 대부분은 사람들이 아예 사용하지도 않거든요.

아니요, 그렇지 않습니다 — 마땅히 그래야 하듯 최대 3~4개의 폰트 세트(그리고 필요한 굵기만)를 사용한다면 말이죠.

이 내용에 대해 질문이 있습니다. Discourse 사이트(누구의 것이든)의 포럼 페이지에서 소스를 보고 "font"를 검색하면 여러 개의 폰트가 표시됩니다. 셋업 마법사에서 1~2개만 선택했는데도 이 모든 폰트가 로드되는 건가요? 만약 그렇다면, 제가 선택한 폰트만 로드되도록 하고 싶습니다.