워드프레스 글 발행 자동화 6강 : 최근 포스트 가져오기

워드프레스 글 발행 자동화 6강 : 최근 포스트 가져오기를 시작하겠습니다. 구글 SEO, 네이버, 다음 검색 최적화를 위해서는 내부 링크와 외부링크가 반드시 포함되어야 합니다. 글을 발행하는 주제와 연관된 최근 포스트를 가져오는 것도 도움이 되겠지요. 이 글에서는 파이썬을 이용해서 최근 포스트를 가져오는 방법에 대해서 알아보도록 하겠습니다.


목차


워드프레스 글 발행 자동화 6강 - 최근 포스트 가져오기

워드프레스 글 발행 자동화 시리즈

워드프레스 글 발행 자동화 1강 : 워드프레스란?

워드프레스 글 발행 자동화 2강 : 응용프로그램 비밀번호 설정

워드프레스 글 발행 자동화 3강 : 파이썬과 연결하기

워드프레스 글 발행 자동화 4강 : Perplexity API 사용하기

워드프레스 글 발행 자동화 5강 : ChatGPT API 연동하기

워드프레스 글 발행 자동화 6강 : 최근 포스트 가져오기



자동화로 발행된 글이 궁금하면 아래 글을 먼저 확인하세요. 애드센스는 물론, 쿠팡 파트너스 링크, 또는 기타 어필리에이션 코드도 마음대로 넣을 수 있습니다. 내부 링크글도 추가해서 SEO 최적화 된 글을 발행하는데 도움이 됩니다. HTML 포맷이나 마크다운 포맷 등을 활용할 수도 있습니다-!

더 궁금한 게 있다면 오픈 채팅방에 참여하세요.

파이썬 라이브러리

  • Library 는 requests 이외에는 필요치 않습니다.
import requests

최근 포스트 가져오기 위한 필요 요소들

  1. 웹사이트 주소를 아래 “URL주소” 위치에 적절히 넣습니다.
    • http://[URL주소]/wp-json/wp/v2/posts
    • 예시, api_endpoint = f'https://iuinna.com/wp-json/wp/v2/posts'
  2. 카테고리를 지정합니다.
    • 카테고리는 “번호” 로 지정해야합니다.
    • 아래 이미지에서 가장 하단에서 확인할 수 있습니다.
    • tag_id = [숫자] 를 확인하면 카테고리 번호를 확인할 수 있습니다.
  3. 게시하고자 하는 포스트의 개수를 설정합니다.
    • POST_LIMT = 5

위 세가지를 파이썬 코드로 표현하면 다음과 같습니다.

api_endpoint = f'https://iuinna.com/wp-json/wp/v2/posts'
CATEGORY_ID = 74
POST_LIMIT = 5

전체 코드는 다음과 같습니다.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Jan 28 09:45:10 2025

@author: kabin
"""
import requests

def retrieve_recent_post () :    
    # Replace with your target category ID
    CATEGORY_ID = 74
    
    # Number of posts to retrieve
    POST_LIMIT = 5
    
    # Construct the API endpoint
    api_endpoint = f'https://iuinna.com/wp-json/wp/v2/posts'
    
    # Define query parameters
    params = {
        'categories': CATEGORY_ID,    # Filter by category ID
        'per_page': POST_LIMIT,       # Number of posts per page
        'orderby': 'date',            # Order by date
        'order': 'desc'               # Most recent first
    }
    recent_post = dict()
    try:
        # Make the GET request to the WordPress REST API
        response = requests.get(api_endpoint, params=params)
        
        # Check if the request was successful
        response.raise_for_status()
        
        # Parse the JSON response
        posts = response.json()
        
        # Check if posts are returned
        if posts:
            print(f"Latest {POST_LIMIT} Posts in Category ID {CATEGORY_ID}:\n")
            for post in posts:
                title = post.get('title', {}).get('rendered', 'No Title')
                link = post.get('link', '#')
                date = post.get('date', 'No Date')
                #print(f"Title: {title}\nDate: {date}\nLink: {link}\n")
                recent_post[title]=link
            return recent_post
        else:
            print("No posts found in this category.")
            
    except requests.exceptions.HTTPError as http_err:
        print(f"HTTP error occurred: {http_err}")  # HTTP error
    except Exception as err:
        print(f"An error occurred: {err}")          # Other errors
    
print (retrieve_recent_post ())

최근 포스트 가져오기 결과

Latest 5 Posts in Category ID 74:

{‘트럼프 2기 취임식: 미국과 한국 경제에 미치는 5가지 영향’: ‘https://iuinna.com/%ed%8a%b8%eb%9f%bc%ed%94%84-2%ea%b8%b0-%ec%b7%a8%ec%9e%84%ec%8b%9d-%eb%af%b8%ea%b5%ad%ea%b3%bc-%ed%95%9c%ea%b5%ad-%ea%b2%bd%ec%a0%9c%ec%97%90-%eb%af%b8%ec%b9%98%eb%8a%94-5%ea%b0%80%ec%a7%80-%ec%98%81/’, ‘2025년 직장인 연말정산: 알아야 할 5가지 주요 사항’: ‘https://iuinna.com/2025%eb%85%84-%ec%a7%81%ec%9e%a5%ec%9d%b8-%ec%97%b0%eb%a7%90%ec%a0%95%ec%82%b0-%ec%95%8c%ec%95%84%ec%95%bc-%ed%95%a0-5%ea%b0%80%ec%a7%80-%ec%a3%bc%ec%9a%94-%ec%82%ac%ed%95%ad/’, ‘2024년 인스타그램 릴스를 활용한 마케팅 전략 5가지’: ‘https://iuinna.com/2024%eb%85%84-%ec%9d%b8%ec%8a%a4%ed%83%80%ea%b7%b8%eb%9e%a8-%eb%a6%b4%ec%8a%a4%eb%a5%bc-%ed%99%9c%ec%9a%a9%ed%95%9c-%eb%a7%88%ec%bc%80%ed%8c%85-%ec%a0%84%eb%9e%b5-5%ea%b0%80%ec%a7%80/’, ‘멜라니아 트럼프 여사: 독립적인 영부인의 삶과 최근 동향 5가지’: ‘https://iuinna.com/%eb%a9%9c%eb%9d%bc%eb%8b%88%ec%95%84-%ed%8a%b8%eb%9f%bc%ed%94%84-%ec%97%ac%ec%82%ac-%eb%8f%85%eb%a6%bd%ec%a0%81%ec%9d%b8-%ec%98%81%eb%b6%80%ec%9d%b8%ec%9d%98-%ec%82%b6%ea%b3%bc-%ec%b5%9c%ea%b7%bc/’, ‘2024년 GPT-4b의 5가지 주요 특징과 경제적 영향’: ‘https://iuinna.com/2024%eb%85%84-gpt-4b%ec%9d%98-5%ea%b0%80%ec%a7%80-%ec%a3%bc%ec%9a%94-%ed%8a%b9%ec%a7%95%ea%b3%bc-%ea%b2%bd%ec%a0%9c%ec%a0%81-%ec%98%81%ed%96%a5/’}

결과는 위와 같이 Dictionary 딕셔너리 형식으로 반환됩니다. 적절히 내 포스트에 추가할 수도 있습니다. 위 코드를 활용하면, 다른 사람의 워드프레스의 최근글들도 얼마든지 가져올 수 있겠습니다.

맺는글

워드프레스 글 발행 자동화 6강 : 최근 포스트 가져오기를 통해서 본인 블로그의 최신 글들을 가져와서 링크로 연동할 준비가 되었습니다. 기존 방식과 조합하면 할 수 있는 일들이 더 많아지겠지요? 경쟁 사이트의 포스트를 가져와서 최근 어떤 트렌드로 글을 발행하고 있는지 확인할 수도 있고, 내 글의 SEO 를 최적화 하기 위해서 활용할 수도 있고요. 관련 글을 지속적으로 발행할 수 있도록 하겠습니다. 즐거운 설 연휴 되세요-!

더 궁금하신 게 있다면 오픈카톡방으로 들어오셔서 질문하시면 답변드리도록 하겠습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다