제안된 웹 글꼴 API는 WordPress 5.9에 제공되지 않으며 Gutenberg에 먼저 상륙할 수 있습니다.

게시 됨: 2021-11-12

워드프레스 5.9에 대한 shoo-in처럼 보였던 후, 제안된 웹 글꼴 API는 보류되었습니다. 이 기능은 테마 및 플러그인 개발자가 글꼴을 로드하는 방법을 표준화하고 향후 사용자 대면 기능을 위한 토대를 마련합니다.

Jono Alderson은 2019년 2월에 이 기능에 대한 티켓을 열었습니다. 최근 몇 달 동안 제안은 속도를 냈습니다. 풀 요청에는 200개 이상의 티켓 내 메시지, 93개 커밋 및 2개의 핵심 커미터로부터 코드 승인이 있었습니다. API가 준비된 것 같았습니다. 그러나 최근 며칠간 정체 상태에 빠졌다.

수석 WordPress 개발자인 Andrew Ozz는 5.9에서 새로운 API가 상륙할 가능성을 근본적으로 중단했습니다. 그는 제안이 WordPress에 대해 준비되지 않았다고 말했습니다.

그는 티켓에 "순전히 코드로 보기에 좋아 보인다"고 적었다. “정말 잘 문서화되어 있습니다([Tonya Mark]에게 감사드립니다!). 그러나 이것이 단기 및 장기적으로 WordPress를 어떻게 개선할 것인지 아직 알 수 없습니다. 우리는 [Andrei Draganescu]와 채팅을 하고 있었는데 그는 이것이 이상적으로는 기능 플러그인이어야 한다고 제안했고 저도 동의합니다. 그렇다면 실제로 프로덕션에서 테스트하고, 생성하는 동안 만들어진 가정을 확인(또는 거부)하고, WordPress에 정말 가치 있는 추가로 만드는 것이 가능했을 것입니다. 불행히도 지금 5.9를 사용하기에는 너무 늦었습니다.”

API용 기능 플러그인 테스트의 문제 중 하나는 다른 사람들이 티켓에 언급한 것처럼 자주 채택되지 않는다는 것입니다. 개발자는 대부분의 경우 프로덕션 환경에서 이에 의존하지 않습니다. 그리고 평균적인 최종 사용자는 개발자에게 특정한 것을 설치하지 않을 것입니다.

API 개발자 중 한 명인 Ari Stathopoulos는 "이를 기능 플러그인으로 제안하는 것은 몇 년 동안 무언가를 지연시키는 우아한 방법입니다."라고 말했습니다. 그러나 그는 REST API가 WordPress로 이식될 만큼 충분히 잘 수행된 예외 중 하나라고 지적했습니다.

핵심 WordPress 제안은 추가 탐색을 위해 Gutenberg 플러그인으로 푸시될 것입니다. 이것은 별도의 기능 플러그인으로 시작하는 것과 WordPress 5.9로 들어가는 것 사이에서 일종의 절충안이 될 것입니다.

웹 글꼴 API는 블록 시스템과 직접적인 관련이 없습니다. 플러그인뿐만 아니라 기존 테마와 블록 테마 모두 오늘날 이 기능을 사용할 수 있습니다. 그러나 여러 Gutenberg 제안은 테마 작성자가 theme.json 파일을 통해 웹 글꼴을 정의할 수 있도록 허용하는 것과 같이 API의 존재에 의존합니다.

Ozz는 제안과 관련된 몇 가지 질문을 나열했으며 여러 개발자가 각각에 응답했습니다. 그러나 그의 주요 주장은 API의 모든 것이 필요한 이유의 실용성에 달려 있으며 이전 응답은 "원칙적으로" 가정을 기반으로 하는 것처럼 보였습니다.

가장 기본적인 수준에서 웹 글꼴 API를 사용하면 개발자가 로컬에서 호스팅되는 글꼴 또는 Google 글꼴의 글꼴을 등록하고 로드할 수 있습니다. 개발자는 두 가지 기본값 외에 사용자 지정 공급자를 추가할 수도 있습니다. 제안된 API의 첫 번째 반복은 향후 WordPress 릴리스에서 구축할 기반을 설정하는 것이었습니다.

이 기능의 매력은 단순히 글꼴을 로드하는 것이 아닙니다. 기술적으로 테마 작성자는 원하는 경우 한 줄의 코드로 이를 수행할 수 있습니다. 최소한 프런트 엔드에서 현재 핵심 WordPress 표준을 따르려면 4줄의 코드.

Stathopoulos는 이러한 API가 WordPress 및 해당 확장 기능에 가져올 개선 사항 목록을 소란스럽게 했습니다.

  • 테마는 theme.json 파일을 통해 글꼴을 정의할 수 있습니다.
  • 편집기의 글꼴 모음 선택기에서 글꼴 미리보기.
  • 글꼴군에 대한 유효한 글꼴 두께 및 스타일을 표시합니다.
  • 향상된 프런트 엔드 성능.
  • 더 나은 성능과 개인 정보 보호를 위한 서버 측 현지화.

이것은 핵심 WordPress에 API를 포함하는 데 찬성하는 주장의 작은 샘플링이었습니다.

"웹 글꼴 API를 기다리는 구텐베르크의 많은 개선 사항이 있습니다."라고 Stathopolous는 티켓에 적었습니다. "웹 글꼴 API가 없다는 것은 현시점에서 차단입니다. 우리의 위시리스트에 있으면 좋은 아이템이 아니라 앞으로 나아가기 위한 필수 조건입니다.”

현재 WordPress의 웹 글꼴과 관련된 표준은 없습니다. 테마 작성자는 타사 스타일시트를 대기열에 추가하거나 @font-face 규칙이 있는 사용자 지정 스타일시트를 대기열에 추가하기 위해 기존 기능을 피기백합니다. 이는 수년 동안 테마 작성자 커뮤니티에서 일반적으로 받아들여진 관행이었습니다.

그러나 많은 사람들이 마지못해 받아들였습니다. 몇몇은 고충을 완화하기 위해 사용자 정의 스크립트를 만들었습니다. 다른 많은 사람들은 최신 기본 WordPress 테마가 사용되는 방법을 복사합니다.

목표 중 하나는 개발자가 웹 글꼴 로드와 관련된 모든 추가 작업을 수행하는 것에 대해 걱정할 필요가 없도록 만드는 것입니다. 에디터와 프론트 엔드 모두에서 로드하는 방법, 사전 로드를 처리하는 방법 또는 현지화를 설명하는 방법을 파악하기 위해 테마가 필요하지 않아야 합니다. 테마가 노후되고 Google Fonts와 같은 타사 API가 변경됨에 따라 WordPress가 내부적으로 처리하는 경우 테마를 업데이트할 필요가 없습니다.

플러그인을 믹스에 넣을 때 웹 글꼴을 로드하는 가장 좋은 방법의 문제는 배가됩니다. 일반적으로 테마는 디자인과 관련하여 모든 어려운 작업을 수행합니다. 그러나 일부 플러그인은 추가 스타일 옵션을 추가하기 위해 WordPress 세계로 뛰어듭니다. 동일한 글꼴의 여러 복사본을 로드할 때 충돌을 해결할 방법이 없습니다. 테마의 글꼴을 비활성화하고 플러그인을 통해 교체하는 확실한 방법도 없습니다.

그런 플러그인 작성자 중 한 명이 내가 이미 알고 있는 뉴스를 알려주기 위해 이메일을 보냈습니다. 웹 글꼴 API는 더 이상 WordPress 5.9에 상륙하지 않는 것으로 보입니다. 개발자는 새로운 기능 위에 새로운 웹사이트와 서비스를 출시할 준비를 하고 있었습니다. 심지어 마스코트도 있었다. 지금으로서는 그저 기다려야 할 수도 있습니다.

기능 동결 기한은 이틀 전이었습니다. 따라서 웹 글꼴 API가 WordPress 5.9 이정표에 다시 추가될 가능성은 거의 없습니다. 아마도 개발자들은 6.0이 출시되면 그것을 보게 될 것입니다. Gutenberg 플러그인에 푸시하면 더 많은 생명을 불어넣어 기여자가 이에 의존하는 새로운 기능으로 앞으로 나아갈 수 있습니다.