IT 활용 기술

워드프레스 자동으로 글 작성해보기

glasslego 2025. 3. 1. 15:26

1. 워드프레스 계정 생성

  1. WordPress.com 에서 계정을 생성
    • WordPress.com: 간단한 사용, 서버 관리 필요 없음 
      단 플러그인 사용시 월간 $8불 짜리(프리미엄) 이상을 써야함 
    • https://wordpress.com/ko/pricing/
    • 단, WordPress.org를 선택한 경우, 호스팅 업체(예: Bluehost, SiteGround, AWS, DigitalOcean)에서 서버를 설정하고 워드프레스 설치

2. 워드프레스 자동화 플러그인 설정

자동 블로그 포스팅을 위해 몇 가지 플러그인을 설치해야 해.

① WP Webhooks

  • 설치 방법:
    • WordPress 관리자 페이지 > 플러그인 > 새로 추가 > "WP Webhooks" 검색 > 설치 및 활성화
  • 기능:
    • API를 통해 외부에서 자동으로 글을 게시할 수 있음
    • Python, Node.js, Zapier 등과 연동 가능
      https://youtu.be/IsyKI7eEV-I

 

② WP Auto Post

  • RSS 피드를 사용해 자동으로 콘텐츠를 게시할 때 유용
  • 여러 개의 RSS 소스를 설정하여 콘텐츠를 자동 가져오기 가능

③ SchedulePress

  • 글을 예약 게시하고 특정 시간에 자동으로 발행되도록 설정 가능

3. 자동 글 포스팅 구현 (Python + WP REST API)

WordPress REST API를 사용하여 자동으로 글을 게시하는 방법

① REST API 활성화

  • 설정 > 일반에서 REST API 기능을 활성화

② API 키 발급

  • 사용자 > 프로필 하단의 애플리케이션 비밀번호 생성
  • 생성후 한번만 복사할 수 있으니 바로 복사해둘것! 
  • API 요청 시 username:application_password 조합을 Base64로 인코딩하여 사용

③ Python 코드 예제

import requests
import base64

# 워드프레스 계정 정보
WP_URL = "https://your-wordpress-site.com"
WP_USER = "your-username"
WP_APP_PASSWORD = "your-application-password"

# 인증 정보 설정
auth = base64.b64encode(f"{WP_USER}:{WP_APP_PASSWORD}".encode()).decode()

# 게시할 글 데이터
post_data = {
    "title": "자동화된 블로그 글",
    "content": "이것은 Python을 이용한 자동 포스팅입니다!",
    "status": "publish"  # 'draft'로 설정하면 임시 저장됨
}

# API 요청
response = requests.post(
    f"{WP_URL}/wp-json/wp/v2/posts",
    headers={"Authorization": f"Basic {auth}", "Content-Type": "application/json"},
    json=post_data
)

# 결과 확인
if response.status_code == 201:
    print("✅ 글이 성공적으로 게시되었습니다!")
else:
    print("❌ 오류 발생:", response.json())

4. 자동화 스케줄링

위의 Python 스크립트를 일정한 시간마다 실행하면 블로그 자동 포스팅이 가능

① crontab (리눅스/macOS)

crontab -e

아래 코드를 추가하여 6시간마다 실행하도록 설정:

0 */6 * * * /usr/bin/python3 /path/to/script.py

② Windows 작업 스케줄러

  1. 작업 스케줄러 실행
  2. 새 작업 만들기 > 트리거에서 일정 설정
  3. 작업에서 Python 스크립트 실행하도록 설정

5. 추가적인 자동화 아이디어

  • ChatGPT API를 활용하여 자동으로 글 생성 후 포스팅
  • RSS 피드를 활용하여 뉴스/블로그 크롤링 후 포스팅
  • Zapier, Make (구 Integromat)와 연동하여 노코드 자동화 설정