Skip to content

WordPress REST API 통합

이 가이드는 OpenClaw Ultra를 사용하여 WordPress 사이트를 관리하는 방법을 설명합니다. 글 게시, WooCommerce 상품 관리, 카테고리 선택, 해시태그 추가를 모두 WordPress REST API를 통해 수행합니다.

필요 사항

  • 자체 호스팅 WordPress 사이트 (wordpress.org, wordpress.com 아님)
  • WordPress 사이트에 설치된 Basic Auth 플러그인
  • Windows 데스크톱에 설치된 OpenClaw Ultra

1단계: Basic Auth 플러그인 설치

WordPress REST API는 인증이 필요합니다. 가장 간단한 방법은 Basic Auth 플러그인을 사용하는 것입니다.

  1. 다음에서 플러그인을 다운로드합니다: https://github.com/WP-API/Basic-Auth
  2. WordPress 관리자 패널에서 플러그인새로 추가플러그인 업로드로 이동합니다
  3. 다운로드한 Basic-Auth-master.zip 파일을 업로드합니다
  4. 활성화를 클릭합니다

Upload WordPress plugin

대체 인증 방식

서버가 OAuth 또는 애플리케이션 비밀번호(WordPress 5.6+)를 지원하는 경우 해당 방식을 사용할 수도 있습니다. 이 가이드는 간단히 Basic Auth를 사용합니다.

2단계: 인증 정보를 위한 .env 파일 생성

컴퓨터의 안전한 위치에 .env 파일을 만들어 WordPress 사이트 인증 정보를 저장합니다.

다음 내용으로 wordpress.env 파일을 생성합니다:

WP_SITE_URL=https://yoursite.com
WP_USERNAME=your-admin-username
WP_APPLICATION_PASSWORD=your-password

.env 파일 안전하게 보관하기

.env 파일을 버전 관리 시스템에 커밋하거나 공개적으로 공유하지 마세요. *.env.gitignore 파일에 추가하세요.

3단계: OpenClaw Ultra가 .env 파일을 읽도록 설정

OpenClaw Ultra에서는 File 스킬을 사용하여 .env 파일을 읽고 인증 정보를 불러올 수 있습니다.

  1. OpenClaw Ultra 열기
  2. 채팅창에 다음을 입력합니다:
C:\path\to\wordpress.env 파일을 읽고 각 줄을 변수로 저장합니다.
  1. OpenClaw Ultra가 .env 파일을 파싱하고 이후 요청에서 해당 값을 사용할 수 있도록 합니다.

4단계: REST API를 통해 WordPress 글 게시

이제 OpenClaw Ultra를 사용하여 WordPress 글을 자동으로 작성하고 게시할 수 있습니다.

프롬프트 예시:

{WP_SITE_URL}/wp-json/wp/v2/posts의 WordPress REST API를 사용하여,
새 글을 작성합니다:
- Title: "My First Automated Post"
- Content: "This post was created by OpenClaw Ultra via the WordPress REST API."
- Status: publish
- Categories: Technology, AI
- Hashtags: #WordPress #Automation #OpenClaw

Basic Auth로 인증합니다. 사용자 이름 {WP_USERNAME}, 비밀번호 {WP_APPLICATION_PASSWORD}.

OpenClaw Ultra가 WordPress REST API 엔드포인트에 POST 요청을 보내고 글을 게시합니다.

API 엔드포인트 참조

작업EndpointMethod
글 작성/wp-json/wp/v2/postsPOST
글 수정/wp-json/wp/v2/posts/{id}PUT
글 조회/wp-json/wp/v2/postsGET
글 삭제/wp-json/wp/v2/posts/{id}DELETE

5단계: WooCommerce 상품 관리

WooCommerce가 설치되어 있다면 WooCommerce REST API를 통해 상품도 관리할 수 있습니다.

프롬프트 예시:

{WP_SITE_URL}/wp-json/wc/v3/products의 WooCommerce REST API를 사용하여,
새 상품을 생성합니다:
- Name: "AI Automation Course"
- Type: simple
- Regular price: 49.99
- Description: "Learn how to automate your workflows with AI."
- Categories: Courses, Digital Products
- Stock: 100

Basic Auth로 인증합니다. 사용자 이름 {WP_USERNAME}, 비밀번호 {WP_APPLICATION_PASSWORD}.

WooCommerce API 엔드포인트

작업EndpointMethod
상품 생성/wp-json/wc/v3/productsPOST
상품 조회/wp-json/wc/v3/productsGET
상품 수정/wp-json/wc/v3/products/{id}PUT
상품 삭제/wp-json/wc/v3/products/{id}DELETE
주문 조회/wp-json/wc/v3/ordersGET
카테고리 생성/wp-json/wc/v3/products/categoriesPOST

6단계: 카테고리 선택

글에 카테고리를 지정하기 전에 기존 카테고리 ID를 확인해야 할 수 있습니다.

카테고리 조회 프롬프트:

{WP_SITE_URL}/wp-json/wp/v2/categories의 WordPress REST API를 사용하여,
사이트의 모든 카테고리를 나열합니다.

Basic Auth로 인증합니다. 사용자 이름 {WP_USERNAME}, 비밀번호 {WP_APPLICATION_PASSWORD}.

새 카테고리 생성:

이름이 "AI Tutorials"이고 슬러그가 "ai-tutorials"인
POST {WP_SITE_URL}/wp-json/wp/v2/categories
새 카테고리를 생성합니다.

Basic Auth로 인증합니다. 사용자 이름 {WP_USERNAME}, 비밀번호 {WP_APPLICATION_PASSWORD}.

7단계: 해시태그 자동 입력

OpenClaw Ultra에 관련 해시태그를 생성하여 글에 추가하도록 요청할 수 있습니다.

프롬프트 예시:

{WP_SITE_URL}의 "My First Automated Post"라는 글에 대해
내용을 기반으로 5개의 관련 해시태그를 생성하여 글에 추가합니다.

WordPress REST API를 사용하여 글의 태그 또는 사용자 정의 필드를 업데이트합니다.
Basic Auth로 인증합니다. 사용자 이름 {WP_USERNAME}, 비밀번호 {WP_APPLICATION_PASSWORD}.

문제 해결

401 인증 오류

  • Basic Auth 플러그인이 활성화되어 있는지 확인
  • 사용자 이름과 비밀번호가 올바른지 확인
  • WordPress 사이트가 HTTPS를 사용하는지 확인

404 엔드포인트를 찾을 수 없음

  • WordPress 설정 → 고유주소에서 예쁜 고유주소가 활성화되어 있는지 확인
  • REST API에 접근 가능한지 확인: {WP_SITE_URL}/wp-json/

403 금지 / Cloudflare 차단

403 오류가 발생하면 Cloudflare가 API 요청을 차단하고 있을 수 있습니다. 자동화 도구의 WordPress REST API 요청이 의심스러운 것으로 간주되기 때문입니다.

해결 방법 — 사용자 정의 User-Agent 헤더 설정:

OpenClaw Ultra를 통해 요청할 때 일반적인 User-Agent 문자열을 명시적으로 설정하여 Cloudflare가 해당 요청을 실제 브라우저에서 온 것으로 인식하도록 합니다. 예:

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

OpenClaw Ultra 프롬프트에서 다음과 같이 User-Agent 헤더를 포함시킵니다:

POST {WP_SITE_URL}/wp-json/wp/v2/posts
Headers:
  User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
  Authorization: Basic {base64-encoded-credentials}

Body:
  title: "My Post"
  content: "Post content"
  status: publish

WooCommerce 엔드포인트를 사용할 수 없음

  • WooCommerce 플러그인이 설치되고 활성화되었는지 확인
  • WooCommerce API에는 WooCommerce 3.0+가 필요합니다

다음 단계

  • 다른 WordPress REST API 엔드포인트 탐색
  • 콘텐츠 게시 일정 자동화
  • OpenClaw Ultra로 완전한 콘텐츠 워크플로우 구축

다른 통합 가이드를 계속 확인하여 자동화 기능을 확장하세요.