WordPress REST API 소개
게시 됨: 2022-10-192016년 12월 WordPress 4.7의 출시와 함께 오랜 논쟁의 이정표가 통과되었습니다. WordPress REST API가 공식적으로 WordPress Core의 일부로 포함되었습니다.
REST API는 공식적으로 코어에 병합되기 전에 플러그인으로 존재했지만 이후에 포함되면서 포함과 추가 테스트의 필요성에 대한 주장이 제기되면서 꽤 많은 논쟁을 불러일으켰습니다.
궁극적으로 REST API는 Core에 병합되었으며 이제 블록 편집기뿐만 아니라 웹에서 WordPress 사이트와의 많은 타사 통합 및 인터페이스를 지원합니다.
그러나 많은 WordPress 사용자에게 WordPress에 긴밀하게 통합된 것은 말할 것도 없고 어떤 종류의 REST API에 대해서도 들어본 것은 이번이 처음이었습니다.
따라서 이 기사에서는 REST API가 무엇인지, WordPress REST API가 어떻게 고유한지, 작동 방식에 대한 몇 가지 예와 WordPress에 포함되어 이제 활성화된 몇 가지 기술에 대해 살펴보겠습니다. 핵심.
REST API란 무엇입니까?
REST API라는 용어는 실제로 하나에 두 개의 약어가 있으며 둘 다 WordPress REST API의 작동 방식과 기능을 이해하는 데 중요합니다.
REST 란 무엇입니까?
첫 번째 부분인 REST는 REpresentational State Transfer를 나타냅니다. 가능한 한 간단하게 말하자면, 이것은 웹에서 두 개의 개별 리소스가 서로 통신하는 방법을 정의하는 사양입니다. 이 두 인터페이스는 두 개의 서로 다른 웹사이트, 웹 서버, 모바일 애플리케이션 등일 수 있습니다.
이 사양을 따르는 서비스는 종종 RESTful 서비스라고 하며 정보를 요청하는 클라이언트가 서버의 상태와 클라이언트와 서버가 어떻게 다른 서비스보다 더 모듈화되고 분리될 수 있는지에 대해 알 필요가 없도록 합니다. 인터넷을 통해 데이터를 전송하는 방법.
본질적으로 개발자가 RESTful 서비스와 상호 작용하고 있음을 알고 있는 경우 요청의 형식이 지정되는 방식과 대가로 어떤 종류의 데이터를 받을 것인지에 대해 특정한 가정을 할 수 있습니다. 이는 상호 연결된 기술을 개발할 때 매우 유용합니다.
RESTful 서비스를 구성하는 요소와 이러한 유형의 요청이 이루어지는 방식에 대해 더 자세히 알아보려면 Codecademy의 REST란 무엇입니까?라는 글을 확인하는 것이 좋습니다.
API란 무엇입니까?
API는 Application Programming Interface의 약자이며 이름에서 알 수 있듯이 특정 애플리케이션과 상호 작용하기 위해 웹을 통해 다른 클라이언트 및 서비스에 대한 인터페이스를 제공합니다. 데이터를 보낼 수 있는 끝점, 일반적으로 URL, 이러한 URL이 데이터를 반환하는지 또는 서버에서 리소스를 생성하는지 여부, 이러한 끝점에 액세스하는 데 특정 유형의 인증이 필요한지 여부를 지정합니다.
오늘날 웹에서 인기 있는 많은 서비스의 경우 API는 사용자가 있는 상태에서 스크립트나 코드 조각이 동일한 작업을 수행할 수 있도록 하여 사용자가 수동으로 수행할 수 있는 작업을 자동으로 수행할 수 있는 방법을 제공합니다. 예를 들어 Reddit을 사용하고 탐색하는 많은 스레드에 동일한 종류의 댓글을 작성하는 경우 Reddit에서 해당 유형의 댓글을 검색하고 Reddit의 API를 통해 표준 답글을 자동으로 게시하는 스크립트를 만들 수 있습니다.
API를 통해 인프라를 노출함으로써 사용자는 이러한 종류의 작업을 자동화하는 취약한 웹 스크래핑 방법에 의존할 필요가 없으며 Reddit은 API를 통해 리소스에 액세스하는 사람, 액세스 빈도를 추적하고 제어할 수 있습니다. 서비스 약관을 벗어난 사용.
WordPress에 REST API가 필요한 이유는 무엇입니까?
REST API가 Core의 일부가 되기 전에 WordPress에 API와 유사한 요청을 한 적이 있다면 admin-ajax 개념에 익숙할 것입니다. 이것은 WordPress에서 이와 같은 요청을 하는 원래 방법이었습니다. 여기서 모든 요청은 admin-ajax.php 파일을 통해 라우팅되고 활성 플러그인 또는 테마의 개발자가 등록한 특정 작업을 확인한 다음 등록된 기능을 사용하여 요청을 이행하십시오.
예상하셨겠지만 이는 API와 같은 요청을 사용하는 모든 개발자가 플러그인 또는 테마의 일부로 이 기능을 활성화한다는 것을 의미합니다. 세워짐. 이러한 요청이 생성되는 방식을 표준화하고 WordPress Core 자체와 상호 작용하는 데 사용할 수 있는 훨씬 더 광범위한 엔드포인트 세트를 제공하기 위해 WordPress REST API가 도입되었습니다.
WordPress REST API에 대한 예제 요청
WordPress REST API Handbook은 WordPress REST API에서 즉시 지원되는 엔드포인트의 전체 목록을 유지 관리합니다. 그리고 전체 목록이 있는 것이 좋지만 다소 압도적일 수 있습니다. 모든 API 상호 작용의 가장 기본적인 기능으로 간주될 수 있는 API의 기본 리소스 가져오기를 살펴보겠습니다. WordPress의 경우 해당 리소스가 게시됩니다.
WordPress REST API의 모든 끝점에는 루트 도메인과 REST API 핸드북에서 Base Route
라고 하는 것 사이의 URL 경로 wp-json
접두사로 붙습니다. 즉, 사이트의 게시물을 나열하기 위해 엔드포인트에 액세스하고 사이트의 URL이 example.com
인 경우 URL https://example.com/wp-json/wp/v2/posts
에 요청해야 합니다. https://example.com/wp-json/wp/v2/posts
.
선호하는 웹 브라우저에서 해당 URL을 로드하거나 Postman과 같은 API 브라우저를 사용하여 GET 요청을 하면 API에서 게시물 목록을 반환해야 합니다. 단, 사용하는 형식이 아닐 수도 있습니다. 에게. 보고 있는 것이 하나의 긴 텍스트 문자열뿐이라면 JSON이라는 데이터 형식을 보고 있는 것입니다. 브라우저를 통해 API 끝점에 액세스하고 이 정보를 보다 읽기 쉬운 형식으로 보려면 JSON 뷰어 확장을 설치하는 것이 좋습니다. 이렇게 하면 브라우저에서 JSON인 모든 출력을 감지하고 더 쉽게 읽을 수 있도록 형식을 지정합니다. 이를 설치하면 WordPress REST API의 게시물 데이터 출력이 표시되고 첫 번째 REST API 요청을 성공적으로 수행한 것입니다!
WordPress REST API는 그 밖에 무엇을 할 수 있습니까?
WordPress 사이트에서 최신 게시물 목록을 가져오는 것 외에도 Endpoint Reference를 보면 WordPress REST API와 상호 작용할 수 있는 수많은 다른 방법이 있음을 알 수 있습니다. WordPress 사용자로 인증되면 API를 통해 게시물을 게시하고, 사이트에서 사용할 수 있는 테마 목록을 얻고, 설정을 보고 편집할 수 있으며, wp-admin을 통해 수동으로 상호 작용할 수 있는 다른 많은 기능을 사용할 수 있습니다. .
실행 중인 WordPress REST API의 몇 가지 예
REST API를 통해 WordPress와 상호 작용할 수 있는 기능을 노출함으로써 이제 WordPress를 콘텐츠 관리의 백엔드로 사용할 수 있는 사이트의 광범위한 가능성이 열렸습니다.
TechCrunch : WordPress REST API가 발표된 직후 TechCrunch는 헤드리스 아키텍처를 사용하여 사이트를 재구축했다고 발표했습니다. 즉, 백엔드에서 WordPress를 콘텐츠 관리 시스템으로 사용하면서 여전히 "단일 페이지"를 사용할 수 있음을 의미합니다. 스타일 React 앱”을 프런트엔드에 추가합니다.
Block Editor (Gutenberg) : 아마도 대부분의 사람들이 혜택을 본 REST API의 사용법은 WordPress Block Editor일 것입니다. 이제 WordPress의 주류 편집기인 Block Editor 기능의 대부분은
모든 종류의 커뮤니티 프로젝트 : REST API가 코어에 병합되는 것을 처음 고려했을 때 사람들에게 REST API를 어떻게 사용하고 있는지에 대해 더 많이 이야기해 달라는 요청이 있었습니다. 대답은 매우 광범위했으며 WordPress만큼 큰 커뮤니티에서 기대할 수 있지만 WordPress 콘텐츠를 사용할 수 있는 클라이언트용 모바일 앱을 구축하는 사람들이 이전에 가능했던 것보다 더 많은 대화형 인터페이스가 있는 플러그인의 모든 것을 포함했습니다.
마무리
API 사용 경험이 없더라도 경력의 어느 시점에서 WordPress REST API를 사용하여 작동하는 무언가를 사용했을 것입니다. 인터페이스가 계속해서 더 동적으로 변하고 웹사이트가 페이지 로드가 필요하지 않은 더 많은 작업을 갖기 시작함에 따라.
이제 WordPress REST API가 무엇인지 알았으므로 이를 사용하여 빌드할 수 있는 몇 가지 사항에 대해 생각해 볼 수 있습니다! REST API는 훨씬 더 나은 WordPress 테마 및 플러그인을 구축하기 위한 도구 상자의 강력한 도구가 될 수 있습니다.
좀 더 설명이 필요하거나 가능한 것에 대한 몇 가지 예가 필요하면 문서를 살펴보고 바로 시작하십시오!